- It is backend part of student attendance system for.
- You can use this application for any kind of educational fields
- ios/android: coming soon ๐
ABOUT PROJECT โข TECH STACK โข GETTING STARTED โข INSTALLATION โข USAGE โข CONTRIBUTING โข LICENSE
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
You need linux
machine and Python package manager(pip
) to run the project.
- pip
sudo apt install python3-pip
- git
sudo apt install git
- Clone the repo
git clone https://github.com/sevbo2003/student-attendance-system.git
- Go to project directory
cd student-attendance-system
- Create virtual environment
python3 -m venv venv
- Activate virtual environment
source venv/bin/activate
- Install requirements
pip install -r requirements.txt
- Create
.env
file and fill it with your credentials like.env.example
touch .env
# .env DEBUG=True # or False SECRET_KEY=your_secret_key ALLOWED_HOSTS=* # db DB_NAME= DB_USER= DB_PASSWORD= DB_HOST= DB_PORT= # redis REDIS_URL=redis://user:password@host:port # cors CORS_ORIGIN_WHITELIST=
- Run migrations and migrate
python manage.py makemigrations
python manage.py migrate
- Create superuser
python manage.py createsuperuser
- Run server
python manage.py runserver
- Install Redis in your machine and run it
sudo apt install redis-server
redis-server
- Run celery worker
celery -A config worker -l info
- Run celery beat
celery -A config beat -l info
- All done! Now you can use the application
Here you can find important APIs to use the application
- Get token for user
POST /api/token/
{ "email": "your_email", "password": "your_password" }
- Get students info
GET /accounts/users/
- Get teachers info
GET /accounts/teachers/
- Get groups info
GET /attendance/groups/
- Get group subjects info
GET /attendance/group/{group_id}/subjects/
- Get group students info
GET /attendance/group/{group_id}/students/
- Get attendance info
GET /attendance/attendance-report/
- Get daily attendance status
GET /dailystat/
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Made with โค๏ธ by Abdusamad
- Reminder that you are great, you are enough, and your presence is valued.