An interactive, learning platform that transforms complex subjects into visual, progressive learning journeys.
Visit Now
Knowledge Tree revolutionizes learning by presenting complex subjects as interactive, visual roadmaps. Users navigate through interconnected concepts, unlocking new knowledge progressively as they master prerequisites. Each concept features AI-generated articles and quizzes, ensuring comprehensive understanding before advancement.
πΊοΈ Interactive Visual Roadmaps - Navigate learning paths through beautiful, node-based visualizations powered by React Flow
π Progressive Knowledge Unlocking - Master prerequisites to unlock advanced concepts
π€ AI-Generated Content - Rich articles and adaptive quizzes created using DeepSeek API
π€ Secure Authentication - Email/password and Google OAuth via Supabase Auth
π Real-time Progress Tracking - Monitor learning journey with detailed completion analytics
π¨ Modern Responsive Design - Clean, professional UI optimized for all devices
β‘ High Performance - Built with Next.js 15 and optimized for speed
Layer | Technology | Purpose |
---|---|---|
Frontend | Next.js 15 + React 19 + TypeScript | Modern, type-safe web application |
Backend | Supabase | PostgreSQL database, authentication, real-time subscriptions |
Styling | Tailwind CSS 4 | Utility-first CSS framework with modern design tokens |
Visualization | React Flow | Interactive node-based roadmap visualization |
AI Integration | DeepSeek API | Content generation for articles and quizzes |
Icons | Lucide React + Heroicons | Consistent iconography |
erDiagram
roadmaps ||--o{ concepts : contains
concepts ||--o{ concept_dependencies : has
concepts ||--o{ user_progress : tracks
auth_users ||--o{ user_progress : creates
roadmaps {
uuid id PK
text title
text description
text icon
timestamptz created_at
}
concepts {
uuid id PK
uuid roadmap_id FK
text title
text short_description
text article_content
jsonb quiz
timestamptz created_at
}
concept_dependencies {
uuid concept_id PK,FK
uuid prerequisite_id PK,FK
}
user_progress {
uuid user_id PK,FK
uuid concept_id PK,FK
timestamptz completed_at
int quiz_score
}
- Node.js 18+ and npm
- Supabase account and project
- DeepSeek API key
git clone https://github.com/LikhithSP/Knowledge-Tree.git
cd Knowledge-Tree
npm install
- Create a new project at Supabase
- Navigate to SQL Editor in your dashboard
- Execute the schema from
database/schema.sql
- (Optional) Enable Google OAuth:
- Go to Authentication > Providers
- Enable Google provider with your OAuth credentials
Create .env.local
in the project root:
# Supabase Configuration
NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_supabase_service_role_key
# AI Content Generation
DEEPSEEK_API_KEY=your_deepseek_api_key
# Environment
NODE_ENV=development
Generate sample learning content:
# Generate all roadmaps and content
npm run generate-all-content
# Or generate specific domains
npm run create-ai-content
npm run create-datascience-content
npm run create-cybersecurity-content
npm run dev
Visit http://localhost:3000 to see your application.
Knowledge-Tree/
βββ src/
β βββ app/ # Next.js 15 App Router
β β βββ auth/ # Authentication pages
β β βββ dashboard/ # Main dashboard
β β βββ roadmap/ # Learning roadmap interface
β β βββ globals.css # Global styles
β βββ lib/ # Utilities and configurations
β β βββ supabase/ # Supabase client setup
β βββ types/ # TypeScript type definitions
βββ scripts/ # Content generation scripts
βββ database/ # Database schema and migrations
βββ public/ # Static assets
βββ ...config files
Script | Description |
---|---|
npm run dev |
Start development server with Turbopack |
npm run build |
Build production application |
npm run start |
Start production server |
npm run lint |
Run ESLint for code quality |
npm run generate-all-content |
Generate all learning roadmaps |
npm run cleanup-duplicates |
Remove duplicate content |
npm run remove-empty-roadmaps |
Clean up empty roadmaps |
The application features a modern, cohesive design system:
- Color Palette: Gradient backgrounds with yellow accent theme
- Typography: Clean, readable fonts optimized for learning content
- Components: Reusable UI components with consistent styling
- Responsive: Mobile-first design that works on all screen sizes
- Accessibility: WCAG compliant with proper contrast ratios
- Row Level Security (RLS) on user progress data
- Protected routes with middleware authentication
- Secure API endpoints with proper validation
- OAuth integration for streamlined authentication
- Environment variable protection for sensitive data
- Connect your GitHub repository to Vercel
- Configure environment variables in Vercel dashboard
- Deploy automatically on push to main branch
npm run build
npm run start
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Commit changes:
git commit -m 'Add amazing feature'
- Push to 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.
- Supabase for the excellent backend infrastructure
- Vercel for seamless deployment platform
- React Flow for beautiful interactive diagrams
- DeepSeek for AI-powered content generation
- Tailwind CSS for the utility-first styling approach
Made with β€οΈ by LikhithSP