An AI-powered platform that transforms learning materials into engaging, short-form educational videos.
- Upload learning materials (PDF, TXT)
- AI processing to generate personalized educational videos
- Short-form video player
- Video preview on hover and intuitive controls
- Dark mode support
- Modern, intuitive user interface
- Node.js 14.x or higher
- npm or yarn
- Python 3.8+ (for backend)
- Clone the repository:
git clone https://github.com/RohanSreelesh/StudyBytes.git
cd StudyBytes- Setup a python virtual environment with Python 3.12
Ideally it is named as ".venv"
-
Setup and rename "backend/example.env" to "backend/.env"
-
Install dependencies:
npm icd backend
pip install -r requirements.txt- Run the Application
npm run devcd backend
py main.py- Open [http://localhost:3000] in your browser to see the application.
-
Frontend:
- Next.js with React
- Tailwind CSS for styling
- TypeScript for type safety
- react-dropzone for file uploads
-
Backend:
- FastAPI (Python)
- Pydantic for data validation
/src: Frontend code/app: Next.js app router pages/components: Reusable React components/lib: Utility functions and shared logic
/backend: Python FastAPI servermain.py: Main API implementationrequirements.txt: Python dependenciesuploads: Directory where uploaded files are stored (created automatically)
GET /api/health: Health check endpointPOST /api/process: Process uploaded files and generate videos- Accepts assignment files and optional learning materials
- Returns an array of generated videos
GET /api/videos: Get list of all available processed videos/videos/*: Static file serving for processed video files