Skip to content

Farhodoff/task_planner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

63 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽ“ AI Study Planner

๐ŸŒ Live Demo (task-planner-tau.vercel.app) ย |ย  Deployling & About

Your intelligent companion for academic success. ๐Ÿš€
An advanced study management platform powered by AI, designed to optimize productivity, enhance focus, and gamify the learning experience. Built for the modern student.

๐Ÿ“ธ Sneak Peek

Dashboard Preview

๐Ÿ› ๏ธ Tech Stack

React TypeScript Vite TailwindCSS Supabase PostgreSQL Gemini AI


๐Ÿ’ก Note on Technical Stack (Portfolio Context)

While my CV mentions FastAPI, WebSockets, and direct PostgreSQL under building similar realtime logic, this specific showcase project leverages Supabase to handle those exact backend responsibilities. Supabase provides the direct PostgreSQL database under the hood, uses its Realtime engine (built on WebSockets) for live syncing, and Edge Functions (Deno) replacing a traditional FastAPI layer to ensure faster prototyping and serverless deployment. This architecture demonstrates my ability to adapt to modern Backend-as-a-Service (BaaS) ecosystems while retaining the core principles of database design, realtime events, and AI integration.


๐Ÿ‡บ๐Ÿ‡ฟ O'zbek tilida qo'llanma | ๐Ÿ“– Documentation


๐Ÿ’ก Why This Project?

Traditional to-do apps just list tasks. AI Study Planner goes further by understanding what you need to study, finding the best resources, and structuring your time using scientifically proven methods like Spaced Repetition (SRS) and the Pomodoro technique. It bridges the gap between task management, content discovery, and active recall.

Perfect for:

  • Students managing multiple heavy coursework subjects.
  • Self-taught developers or language learners needing structured curriculum generation.
  • Anyone looking to gamify their focus and escape the procrastination loop.

โœจ Core Features (Highlights)

  • ๐Ÿง  AI-Powered Generation: Instantly generate daily study schedules, curated resources (videos/articles), and Anki-style flashcards from a single keyword.
  • ๐ŸŽฎ Gamified Focus: Earn XP, maintain streaks, unlock achievements, and track your progress visually.
  • โšก Deep Work Suite: Built-in Pomodoro timer, ambient background sounds (Rain, Cafe, Forest), and session mood tracking.
  • ๐Ÿ› ๏ธ All-in-One Toolkit: Drag-and-drop Kanban board, interactive calendar, rich-text markdown notes, and real-time study rooms (Jitsi Meet).
  • ๐Ÿ“ฑ Smart Notifications: Telegram bot integration for daily schedules and deadline reminders.

---- โ˜๏ธ Supabase Backend: Barcha ma'lumotlar bulutda xavfsiz saqlanadi

  • ๐Ÿ” Row Level Security: Har bir foydalanuvchi faqat o'z ma'lumotlarini ko'radi
  • ๐Ÿ”„ Real-time Sync: Bir necha qurilmada sinxronlash
  • ๐Ÿ’พ Offline Support: LocalStorage orqali offline ishlash

๐Ÿ“ฑ Telegram Bot Integratsiyasi

  • ๐Ÿ”— Account Linking: Telegram akkauntni web app bilan bog'lash
  • ๐Ÿ”” Smart Notifications: Ertalabki va kechki kun xabarnomalar (Schedule: 9 AM / 8 PM)
  • โฐ Deadline Reminders: Imtihon va vazifa deadline eslatmalari (24h & 1h oldin)
  • โš™๏ธ Sozlanadigan Vaqtlar: Xabarnoma vaqtlarini konfiguratsiya qilish
  • ๐Ÿค– Bot Commands: /start, /help buyruqlari (Task management - kelgusida)

๐Ÿš€ Texnologiyalar

Frontend

  • React.js (v18) - UI kutubxonasi
  • TypeScript - Type safety
  • Vite - Tez build tool
  • Tailwind CSS - Styling
  • Lucide Icons - Ikonlar

Backend & Database

  • Supabase - Backend-as-a-Service
    • PostgreSQL database
    • Real-time subscriptions
    • Authentication
    • Row Level Security (RLS)
    • Edge Functions - Telegram Bot webhook handler

AI & Integrations

  • Google Generative AI SDK (Gemini 2.0 Flash)
  • Jitsi Meet - Video conferencing
  • React Big Calendar - Kalendar
  • Recharts - Grafiklar

Testing & Quality

  • Vitest - Unit testing
  • React Testing Library - Component testing
  • ESLint - Code quality

๐Ÿ“ฆ O'rnatish to Local Setup (Quick Start)

Option A: Standard Setup (Web Version)

1. Repository ni Clone qiling

git clone https://github.com/yourusername/study-planner-ai.git
cd study-planner-ai

2. Dependencies ni o'rnating

npm install

3. Environment Variables ni sozlang .env.example faylidan nusxa olib, .env faylini yarating:

cp .env.example .env

Keyin .env faylini o'zingizning API kalitlaringiz bilan to'ldiring.

4. Database Schema ni o'rnating Supabase SQL Editor da database_schema_fixed.sql faylini ishga tushiring.

5. Ishga tushirish

npm run dev

Option B: Local Offline Setup (Docker + Ollama/Gemini)

Loyihani to'liq local va offline ishlatish uchun:

1. Docker va Ollama ni o'rnating

  • Docker Desktop
  • Ollama (Local AI xususiyatlari uchun)

2. Modellarni yuklab oling

ollama run llama3.2  # Yoki qwen2.5-coder kabi boshqa model

3. Docker yordamida ishga tushiring (Tez orada)

# Agar root da docker-compose.yml mavjud bo'lsa
docker-compose up -d --build

Eslatma: Docker orqali ishga tushirishda backend servislari ajratilgan bo'lishi talab etiladi.


๐Ÿ—๏ธ Build va Deploy

Production Build

npm run build

Build fayllari dist/ papkasida bo'ladi.

Preview

npm run preview

๐Ÿงช Testing

Barcha testlarni ishga tushirish

npm test

Test Coverage

npm run test:coverage

๐Ÿ“ Loyiha Strukturasi

study-planner-ai/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ components/          # React komponentlar
โ”‚   โ”‚   โ”œโ”€โ”€ ui/             # UI primitives (Button, Card, etc.)
โ”‚   โ”‚   โ””โ”€โ”€ ...             # Feature komponentlar
โ”‚   โ”œโ”€โ”€ pages/              # Sahifa komponentlari
โ”‚   โ”œโ”€โ”€ context/            # React Context (Global state)
โ”‚   โ”œโ”€โ”€ utils/              # Utility funksiyalar
โ”‚   โ”‚   โ”œโ”€โ”€ ai.ts          # AI integration
โ”‚   โ”‚   โ””โ”€โ”€ analytics.ts   # Analytics
โ”‚   โ”œโ”€โ”€ types/              # TypeScript types
โ”‚   โ””โ”€โ”€ lib/                # External libraries config
โ”‚       โ””โ”€โ”€ supabase.ts    # Supabase client
โ”œโ”€โ”€ public/                 # Static assets
โ”œโ”€โ”€ database_schema_fixed.sql  # Database schema
โ””โ”€โ”€ docs/                   # Documentation

๐ŸŽฏ Performance Optimizations

  • โœ… Lazy Loading: Barcha sahifalar lazy load qilinadi
  • โœ… Code Splitting: Bundle 5 ta chunk ga bo'lingan
    • vendor.js (165 KB) - React, Router
    • supabase.js (171 KB) - Supabase client
    • ui.js (643 KB) - UI libraries
    • ai.js (28 KB) - Gemini AI
  • โœ… Error Boundaries: Global error handling
  • โœ… Optimized Images: WebP format

๐Ÿ›ก๏ธ Xavfsizlik

  • โœ… Row Level Security (RLS) Supabase da
  • โœ… API keys .env da (git ignore)
  • โœ… User authentication (Supabase Auth)
  • โœ… HTTPS only (production)

๐Ÿค Hissa Qo'shish

  1. Fork qiling
  2. Feature branch yarating (git checkout -b feature/AmazingFeature)
  3. Commit qiling (git commit -m 'Add some AmazingFeature')
  4. Push qiling (git push origin feature/AmazingFeature)
  5. Pull Request oching

๐Ÿ“ License

MIT License - LICENSE faylini ko'ring


๐Ÿ™ Minnatdorchilik


๐Ÿ“ž Aloqa

Savollar yoki takliflar uchun issue oching yoki Pull Request yuboring!


O'zbek tilida to'liq qo'llanma: USER_GUIDE_UZ.md

About

An advanced study management platform powered by AI, designed to optimize productivity, enhance focus, and gamify the learning experience. Built for the modern student.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors