- Admin can add students and teachers
- Teachers can add students, create lectures, give and mark assignments
- Student can view lectures, can view and submit assignments
- Dedicated discussion forum for each classroom
You can use the below credentials to explore Klassroom.
- Email: demo@example.com
- Password: superSecret56
- On request
- On request
Click here for the Live Demo
- VueJS 2.x
- Bulma CSS
- Buefy
- Firebase
To run this project locally one should have -
- A Firebase project created (Refer Firebase Docs for more)
Download the .zip file from Github or run the below command to clone the repo locally.
git clone https://github.com/soumitdas/klassroom.git
After cloning the repo, run the following commands to install the project dependencies:
# for Vue app
yarn install
# for Cloud functions
cd functions && npm install
Set the environment variable in .env
file at root directory.
VUE_APP_BASE_URL=http://localhost:8080/
VUE_APP_FIREBASE_CONFIG=paste_stringified_firebase_config_object_here
- Install the Firebase CLI
- Setup the CLI using
firebase login
(refer docs) - Run the following commands to deploy functions
firebase deploy --only functions
firebase deploy --only firestore
firebase deploy --only storage
yarn serve
# Vue App will start at PORT 8080
- Push / Email notification
- Rich text support
- More data in dashboard
- Report generation
Klassroom is MIT licensed.
This project is in a very basic stage and might have severe bugs and vulnerabilities, so please keep that in mind when deploying it to production.