This project allows users to generate learning resources such as summaries, flashcards, and quizzes from different input formats like documents and audio files. The generated content can be exported and shared, offering versatile educational support across multiple subjects.
The project processes documents and media files to create study material using AI techniques. It supports:
- Text and audio-to-summary conversion
- Flashcard and quiz generation
- Exporting of results as
.docxfiles
- Input text, audio, or files to generate learning resources
- Export content as
.docxfiles - User-friendly interface with responsive design
Ensure you have the following installed on your system:
- Python 3.10+
- Node.js (v16+ recommended)
- npm (Node package manager)
- Google Cloud SDK (configured for Speech-to-Text)
- Google Cloud service account JSON file
Follow these steps to get the project running locally:
git clone https://github.com/your-username/insight.git
cd insightcd backend
python3 -m venv venv
source venv/bin/activateInstall all the necessary Python dependencies using requirements.txt:
pip install -r requirements.txtcd ../frontend
npm installTo run this project, you need to set up your own Google Cloud credentials. Here's how:
-
Create a Google Cloud Project
- Go to the Google Cloud Console.
- Create a new project or select an existing one.
-
Enable Required APIs
- Enable the following APIs:
- Speech-to-Text API
- Cloud Storage API
- Enable the following APIs:
-
Create a Service Account
- Go to IAM & Admin > Service Accounts.
- Create a new service account and download the JSON key.
-
Set Up Your Environment
- Place the downloaded JSON key (e.g.,
your-service-account-key.json) in thebackendfolder. - Update the path to this file in your
speech_to_text.pyscript, if necessary:
credentials = service_account.Credentials.from_service_account_file('your-service-account-key.json')
- Set the environment variable in your
.bashrcfile to point to this key:
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your-service-account-key.json"
- Reload the
.bashrcfile to apply changes:
source ~/.bashrc
- Place the downloaded JSON key (e.g.,
In the backend folder, create a .env file to store any environment variables such as API keys or sensitive information.
touch .envcd backend
source venv/bin/activate
python backend.pyThis will start the Flask development server on http://127.0.0.1:5000.
In a new terminal, run the following commands:
cd frontend
npm run devThis will start the frontend on http://localhost:3000.
Open your browser and navigate to:
http://localhost:3000You should now be able to interact with the web application.