We're launching on Product Hunt, please click upvote to support us, thanks!!
Ainee is a versatile AI assistant created to revolutionize the way you capture, organize, and interact with your study materials, whether they involve audio, text, files, YouTube videos, or other formats. It serves as a free alternative to products like NotebookLM, helping you accelerate your learning and improve your ability to share insights.
Traditional note-taking and learning tools often fall short in capturing and organizing information efficiently. Ainee elevates this experience by integrating AI with your personal learning environment. It enables dynamic interaction with knowledge, breaking down barriers to accessing and engaging with various forms of information.
walkthrough.mp4
-
🎯 Unified Knowledge Base
Save and organize all your content—web pages, text, images, audio, video, and files—into a single, easily searchable repository. -
📚 Multi-Format File Support
Seamlessly transform audio, text, PDFs, and YouTube videos into structured notes and summaries. -
📝 Real-Time Note-Taking
Instantly capture lecture notes, meetings, or any spoken content with our AI-powered voice recorder. -
🧠 AI-Enhanced Reading and Learning
Turn imported content into powerful insights with AI-generated mind maps, summaries, flashcards, and more. -
💬 Chat with Your Knowledge Base
Engage with your content using AI chat, receiving insights and answers complete with references. -
🌐 Collaborative Sharing
Share your knowledge base to promote collaborative learning and distribute comprehensive insights. -
📖 Community Content Library
Access an expanding library of user-generated content to broaden your learning experience.
- Audio and Video Sources: YouTube, Podcasts
- Document Formats: PDF, Word, Text Files
- And More to Come!
- Students: Capture lecture notes, organize study materials, and create study aids.
- Researchers: Collect sources, compile notes, and share valuable insights.
- Professionals: Organize project information and generate meeting notes.
- Lifelong Learners: Save, organize, and share interesting content for continuous learning.
- Content Creators: Prepare podcast episodes, gather content, and store inspiration efficiently.
app/
- Main Python backend applicationweb_crawler/
- Node.js web crawler serviceweb/
- Web frontend
- Python 3.11
- Node.js 19+
- pnpm (for Node.js package management)
- Docker (recommended for database setup)
- PostgreSQL 14+ (if not using Docker)
- Redis 6+ (if not using Docker)
# Create a Docker network for the services
docker network create ainee-network
# Start PostgreSQL
docker run -d \
--name ainee-postgres \
--network ainee-network \
-e POSTGRES_DB=ainee \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=mysecretpassword \
-p 5432:5432 \
-v postgres_data:/var/lib/postgresql/data \
-v $(pwd)/data:/docker-entrypoint-initdb.d \
postgres:14
# Start Redis
docker run -d \
--name ainee-redis \
--network ainee-network \
-p 6399:6379 \
redis:6
# Restore database
docker cp data/ainee_localhost-2025_05_21_18_08_33-dump.sql ainee-postgres:/tmp/
docker exec -it ainee-postgres psql -U postgres -d ainee -f /tmp/ainee_localhost-2025_05_21_18_08_33-dump.sql
To stop and remove containers:
docker stop ainee-postgres ainee-redis
docker rm ainee-postgres ainee-redis
docker network rm ainee-network
# Clone the repository
git clone <repository-url>
cd ainee
# Create and activate Python virtual environment
python -m venv venv
source venv/bin/activate # On macOS/Linux
# .\venv\Scripts\activate # On Windows
# Set up environment variables
cp .env.example .env
# Edit .env with your configurations
> **Note:** For the backend to interact with Firebase services (like authentication), you need to configure the Firebase Admin SDK using a service account. Ensure *all* necessary service account credentials (e.g., private key, client email, client id, etc.) are set as environment variables in your `.env` file. Refer to the `init_firebase_credential` function in `app/libs/firebase/index.py` to identify the specific credentials required and how they are used.
# Install Python dependencies
pip install -r requirements.txt
In separate terminals:
# Start the main app
uvicorn main:app --host 0.0.0.0 --port 8000 --reload
# Start the content worker
celery -A app.workers.content worker -l info -c 4 -Q content_queue -n content_worker@%%h
# Start the rag worker
celery -A app.workers.rag worker -l info -c 4 -Q rag_queue -n rag_worker@%%h
Note: You must run the main app and both Celery workers (content-worker and rag-parser) at the same time for full functionality.
The rag_worker
Celery worker relies on a deployed instance of RagFlow, an open-source RAG engine.
Please refer to the RagFlow documentation for setup instructions.
Note: For web login functionality, ensure you have configured Firebase with your project details. You can find the configuration in
web/src/lib/firebase.ts
.
cd app/api/ainee_web
pnpm install
pnpm dev
cd web_crawler
pnpm install
pnpm dev
This project utilizes RagFlow, an open-source RAG (Retrieval-Augmented Generation) engine for deep document understanding.