NoteX is a full-stack web application designed to help users process audio notes intelligently. It allows users to upload audio files, transcribe them using the Google Gemini API, generate detailed summaries, and visualize the core concepts as a hierarchical mind map. Additionally, it features an AI chat for interacting with your notes.
- Audio Uploads: Support for various audio formats (mp3, wav, m4a, ogg, webm, flac, aac) up to 50MB.
- AI Transcription: Automatically extract text from uploaded audio using Google Gemini.
- Smart Summarization: Generate structured, well-organized summaries of your audio transcriptions.
- Mind Map Visualization: Automatically convert summaries into interactive visual mind maps using React Flow.
- AI Chat Assistant: Interact with the AI to ask questions or get further insights.
- Note Management: Save, view, and delete your audio notes and chat histories.
- Framework: React with Vite
- Visualization: React Flow (for mind maps)
- Styling: Vanilla CSS
- Framework: Node.js & Express
- Database: MongoDB (via Mongoose)
- AI Integration:
@google/genai(Google Gemini 2.5 Flash) - File Processing: Multer (for handling audio uploads)
- Node.js (v18 or higher recommended)
- A MongoDB Database (Local instance or MongoDB Atlas)
- A Google Gemini API Key
git clone <repository-url>
cd NoteXNavigate to the server directory to configure the backend.
cd server
npm installCreate a .env file in the server directory and add your configuration details:
MONGO_URI=your_mongodb_connection_string
GEMINI_API_KEY=your_gemini_api_keyStart the backend server:
node server.js
# The server will run on http://localhost:5000Open a new terminal and navigate to the client directory.
cd client
npm installStart the frontend development server:
npm run dev
# The client will run on http://localhost:5173- Open the frontend application URL in your web browser.
- Upload an audio file to create a new "Audio Note".
- Wait for the application to process the file: the Gemini AI will transcribe the audio, generate a summary, and construct a mind map.
- Review the transcription and summary, and interact with the visual mind map.
- Use the chat interface to converse with the AI assistant.