Assighno is a Telegram-first assignment workflow that receives student work, processes it with AI, and keeps everything visible in a polished Next.js dashboard.
- Accepts assignment text, PDFs, and images through Telegram
- Pushes each submission into a backend processing pipeline
- Generates cleaned content and AI-assisted answers
- Shows progress, solutions, reminders, and deadlines in one dashboard
- Frontend: Next.js App Router, TypeScript, Tailwind CSS, Firebase Email Link Authentication
- Backend: Node.js, Express, MongoDB, Telegram Bot, OCR and document parsing utilities
- AI layer: OpenRouter-based response generation
frontend/user-facing dashboard, login flow, profile, settings, and assignment detail pagesbackend/API routes, assignment services, Telegram bot flow, queue handling, and persistence logicLogo/source logo and favicon assets used for Assighno branding
- Add your environment values to
backend/.env.local. - Add your Firebase and frontend values to
frontend/.env.local. - Install dependencies in both apps.
- Start the backend.
- Start the frontend.
cd backend
npm install
npm run devcd frontend
npm install
npm run dev- The dashboard auto-refreshes so incoming assignment state stays current.
- Telegram linking is handled with a short-lived
/startcode from the UI. - Reminders stop automatically once an assignment is submitted or its deadline passes.
- Deploy
frontend/to Vercel with the requiredNEXT_PUBLIC_*environment variables. - Deploy
backend/to a Node-compatible platform such as Cloud Run. - Make sure MongoDB and any other backend dependencies are reachable from the deployed backend.
More setup details remain in backend/README.md and frontend/README.md.