<img alt="Spend less time doing the boring stuffs, instead focus on impacting the lives of your students." src="https://classroomio.com/classroomio-opengraph-image.png" />
ClassroomIO is a platform for bootcamps, individual educators, and training businesses that brings teaching and learning into one place while at the same time helping them be 10x more productive. With our platform, anyone can run multiple classes and cohorts all from one UI. The application is mobile-first, which means that students can access your lesson materials from any device.
At ClassroomIO, our mission is to provide students with the best possible learning experience. We believe in empowering educators with the tools they need to deliver high-quality education that is accessible, engaging, and effective.
1.**📚 Advanced Course Management:** You can create unlimited courses, create lessons, invite students, add assignments, grade their assignments, and even generate certificates.
2.**👨👩👦 Multi-Teacher Management:** You can invite other teachers into your organization and assign them individual courses.
3.**🤖 AI Integration:** We've got OpenAI integration for quick course creation where you can generate course content, lesson outlines, and even generate assignments right from your lesson notes.
4.**💬 Forum:** Students can ask questions in your dedicated community and get answers from either you or other students.
5.**🏆 Kahoot-Like Quiz:** You can create live quizzes to create more engagement in your classrooms.
6.**💻 Dedicated Student Dashboard:** Once you create an account, you get a dedicated dashboard where your students can access all their courses, assignments, and more.
7.**🔒 Fully open source:** You can self-hostable the whole stack on your servers.
1.**Forms:** Instead of using Google Forms to collect vital information from your students, you will be able to create forms directly within the dashboard.
2.**Course Announcement:** You can make public announcements from the course dashboard to all your students.
3.**Run Courses on Telegram:** Students can just join a channel on telegram and our bot automatically sends daily lesson content to your students.
Please reach out to me on [twitter](https://x.com/rotimi_best) if you have any feature request.
3. Setup Node If your Node version does not meet the project's requirements as instructed by the docs, "nvm" (Node Version Manager) allows using Node at the version required by the project:
```bash
nvm use
```
You first might need to install the specific version and then use it:
```bash
nvm install && nvm use
```
You can install nvm from [here](https://github.com/nvm-sh/nvm).
4. Set up your `.env` file
- Duplicate `.env.example` to `.env`
5. Setup Supabase.
- Make sure you've downloaded the [supabase cli](https://github.com/supabase/cli)
- Install and Start [docker](https://docs.docker.com/engine/install/)
- Go to the project directory in your terminal and start supabase
```bash
supabase start
```
- You should get a result like this
```bash
supabase local development setup is running.
API URL: http://127.0.0.1:54321
GraphQL URL: http://127.0.0.1:54321/graphql/v1
DB URL: postgresql://postgres:postgres@127.0.0.1:54322/postgres