Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CSVify

CSVify is a simple, lightweight Flask web application that uses Google's Gemini API to generate custom CSV files based on user-provided text descriptions.


Live Demo: https://csvify-ynpu.onrender.com

Currently uses Flask's development server. Production deployment with Gunicorn is planned.


csvify.mp4

csvify

Features

  • AI-Powered Generation: Leverages the gemini-3.5-flash model to turn plain English descriptions into structured CSV data.
  • Custom Naming: Allows users to set a custom title for the downloaded file.
  • Instant Download: Automatically triggers a file download in the browser as soon as the CSV is generated.

Technical Stack

  • Backend: Python, Flask
  • AI Integration: google-genai SDK
  • Frontend: HTML5, Jinja2 templating (extends a layout.html base)
  • Environment Management: python-dotenv

Prerequisites

Before running the project, ensure you have Python installed, along with your Google Gemini API key.

Setup and Installation

Structural Skeleton of the repo

├── static/
│   └── generated.csv
├── templates/
│   ├── index.html
│   └── layout.html
├── .env
├── .env.example
├── .gitignore
├── app.py
├── README.md
└── requirements.txt

1. Clone the Project Directory

Fork the repo using the Fork [ ] button

git clone https://github.com/[your_username]/csvify.git
cd csvify

2. Set Up a Virtual Environment (Recommended)

Create and activate a virtual environment to keep your project dependencies isolated:

python -m venv venv

# On Windows:
venv\Scripts\activate

# On macOS/Linux:
source venv/bin/activate

3. Install Required Packages

Run the following command in your terminal to install the necessary dependencies:

pip install -r requirements.txt

4. Configure Your Environment Variables

Create a file named .env in the root directory of your project by copying the example file:

cp .env.example .env

5. Add your Gemini API key (important!)

Open your newly created .env file and insert your API key:

GEMINI_API_KEY=your_actual_api_key_here

How to Run the Application

  1. Start the Flask development server by running:
flask run
  1. Open your web browser and navigate to http://127.0.0.1:5000/.

  2. Enter a title (e.g., student_scores), describe the data you want (e.g., A list of 5 students with columns for Name, Grade, and Favorite Subject), and click Generate CSV.


created by Naina Bhatnagar

Contributors

Languages