A knowledge graph-based super personalized learning companion built with React Native and Expo.
- Personalized Learning Roadmaps: Create and customize learning paths tailored to your goals
- Knowledge Graph Integration: Visualize and connect concepts through an intelligent graph structure
- Interactive Quizzes: Test your knowledge with engaging, adaptive quizzes
- Progress Tracking: Monitor your learning journey with detailed analytics
- User Management: Manage profiles, preferences, and learning history
- Theme Support: Light and dark mode with seamless theme switching
- AI-Powered Insights: Leverage Gemini AI for personalized recommendations
- Cross-Platform: Native mobile experience on iOS and Android
- Framework: React Native with Expo
- Language: TypeScript
- Styling: Tailwind CSS with NativeWind
- Database: Drizzle ORM with SQLite
- State Management: Zustand stores
- UI Components: Custom component library with Radix UI primitives
- AI Integration: Google Gemini API
- Build Tools: Metro bundler, Biome for linting/formatting
-
Clone the repository
git clone https://github.com/TharunCodes07/SkillSpark.git cd SkillSpark -
Install dependencies
npm install
-
Set up the database
# Generate migration files npx drizzle-kit generate # Run migrations npm run migrate
-
Configure environment variables
- Copy
.env.exampleto.env - Add your Gemini API key and other required variables
- Copy
-
Start the development server
npx expo start
- Launch the app on your device or simulator
- Create an account or sign in
- Build your learning roadmap by selecting topics and goals
- Follow personalized paths with interactive content
- Take quizzes to reinforce learning
- Track progress in your dashboard
SkillSpark/
├── app/ # Expo Router pages
├── components/ # Reusable UI components
├── db/ # Database configuration and migrations
├── hooks/ # Custom React hooks
├── lib/ # Utilities and services
├── stores/ # Zustand state stores
├── assets/ # Images and static files
└── server/ # Server-side queries
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add 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.
- Built with ❤️ using React Native and Expo
- UI components inspired by Radix UI
- AI features powered by Google Gemini
Happy Learning! 🚀