LearnLoop is an intelligent learning companion that dynamically builds and expands a visual map of your knowledge, using AI-powered conversations and automated research to help you explore and remember new topics.
- Interactive Knowledge Graph: Visualize and expand your learning topics through an interactive force-directed graph
- AI-Powered Voice Conversations: Engage in real-time voice conversations about any topic
- Automated Research: Get recent news and developments about your topics of interest
- Personalized Learning: Your learning graph evolves based on your interests and interactions
- Persistent Memory: All your learning progress is saved and can be accessed anytime
- Python 3.9+
- Node.js 18+
- Chrome browser (for Dex extension)
- Supabase account
- Anthropic API key
- OpenAI API key
- Clone the repository:
git clone https://github.com/yourusername/learnloop.git
cd learnloop- Set up the backend:
cd backend
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -r requirements.txt- Set up the frontend:
cd frontend
npm install-
Install the Dex Chrome extension:
- Visit the Chrome Web Store
- Install the extension
- Use Command+J (Mac) to activate Dex
-
Set up environment variables:
Create .env files in both backend and frontend directories:
Backend .env:
ANTHROPIC_API_KEY=your_anthropic_api_key
SUPABASE_URL=your_supabase_url
SUPABASE_KEY=your_supabase_key
Frontend .env:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
- Start the backend server:
cd backend
source .venv/bin/activate # On Windows: .venv\Scripts\activate
python main.py- Start the frontend development server:
cd frontend
npm run dev- Start the Dex MCP server:
cd dex-mcp
python main.pyThe application will be available at http://localhost:3000
learnloop/
├── backend/ # Flask backend server
├── frontend/ # Next.js frontend application
├── dex-mcp/ # Browser automation server
└── README.md # This file
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.