Giter VIP home page Giter VIP logo

attendance-server's Introduction

attendance-server YMCC 2023

The Website server used in Indonesian Mining & Energy Summit Event YMCC 2023 event. The server is used for registration and attendance via the API. The API is accessed using the Presence Application.

Workflow and features

Participants register via the web, then get a QR code directly (free) or via email. This depends on the type of event, which is free or paid. If the event is paid, the registration will be verified by the administrator and the QR code will be sent via email. The email contains a group link and QR code that that participants must bring when entering the event.

Presence is done by scanning the QR code using Presence Application. After the QR scan success, the server will send the certificate to the participants automatically by email. Database management is done using Django Admin, administrators can edit and download data.

Setup

This server is configured to run on Linux and supports Python 3.8, 3.9, and 3.10.

# clone the repo
git clone https://github.com/fakhrirofi/attendance-server.git
cd attendance-server

# create environment (don't forget to add to .gitignore)
python -m venv venv
source venv/bin/activate

# installing requirements
pip install -r requirements.txt

Copy the .envexample and rename it to .env, then edit its contents. API_KEY is the key that will be used in API between the application and the server. ENCRYPTION_KEY is a key generated using Fernet. You can get recaptcha key using google reCAPTCHA.

For SMTP configuration, I suggest using gmail to minimize spam. The email host password can be obtained following this tutorial.

Running on local

Set DEBUG to 1 in .env

# migrate database & testing
python manage.py makemigrations event
python manage.py migrate
python manage.py test event

# create super user
python manage.py createsuperuser

# run server
python manage.py runserver

Go to http://127.0.0.1:8000/admin to create new event. In debug mode, SMTP will not work, it uses dummy EmailBackend.

attendance-server's People

Contributors

fakhrirofi avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.