{"id":16359769,"url":"https://github.com/jmsv/cu-attendance-system","last_synced_at":"2025-12-31T15:30:15.359Z","repository":{"id":95749583,"uuid":"118484366","full_name":"jmsv/cu-attendance-system","owner":"jmsv","description":"206CDE - Real World Project - 1718JANMAY - Group 8B","archived":false,"fork":false,"pushed_at":"2018-04-26T17:39:10.000Z","size":15222,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-12-29T17:34:21.154Z","etag":null,"topics":["206cde","real-world-project"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jmsv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-22T16:36:09.000Z","updated_at":"2021-12-03T17:27:43.000Z","dependencies_parsed_at":"2023-05-21T21:15:11.321Z","dependency_job_id":null,"html_url":"https://github.com/jmsv/cu-attendance-system","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmsv%2Fcu-attendance-system","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmsv%2Fcu-attendance-system/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmsv%2Fcu-attendance-system/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmsv%2Fcu-attendance-system/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jmsv","download_url":"https://codeload.github.com/jmsv/cu-attendance-system/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239727035,"owners_count":19687096,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["206cde","real-world-project"],"created_at":"2024-10-11T02:09:37.157Z","updated_at":"2025-12-31T15:30:15.328Z","avatar_url":"https://github.com/jmsv.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cu-attendance-system\n206CDE - Real World Project - 1718JANMAY - Group 8B\n\n[![Build Status](https://travis-ci.com/jmsv/cu-attendance-system.svg?token=hXPPRPSZqxVqUVQf6s8p\u0026branch=master)](https://travis-ci.com/jmsv/cu-attendance-system)\n\n\u003e __Coventry University Attendance System (cuas) is an alternative attendance management system.__\n\u003e Students often forget their student cards, meaning they can't sign in to university lectures. Our proposed system provides an alternative/additional method of signing in using the students' phone cameras for reading QR codes, via the Tracker app. A webapp can also be used by lecturers for monitoring attendance.\n\n---\n\n## Links\n\n- [Google Slides presentation](https://docs.google.com/presentation/d/1FJRiusDUBAOPlAZsN0xIQXuhGP8kQTZpb0YXy6KX1Ec/edit?usp=sharing)\n- [Trello](https://trello.com/b/t01Y0sO0)\n- [Colour scheme](https://material.io/color/#!/?primary.color=007bff\u0026secondary.color=6c757d)\n\n---\n\n## Getting Started\n\n### Prerequisites\n\n#### Windows:\n\n[Install Python 2.7](https://www.python.org/downloads) if you haven't already got it. The Python executable must be available in your PATH environment variable; if you can't already run `python` from Command Prompt, you might need to [add it yourself](https://superuser.com/a/143121/526390). Check this works but opening a Command Prompt (right click start, hit 'Command Prompt') and enter '`python`'. \u003ckbd\u003eCtrl+C\u003c/kbd\u003e closes Python.\n\n#### The Better OS:\n\nOn Linux, in this case Ubuntu, `sudo apt-get install python python-dev python-pip` should get everything you need. Test in a shell by running `python`, with \u003ckbd\u003eCtrl+D\u003c/kbd\u003e to exit. See how much easier that was? yeah Windows sucks.\n\n#### virtualenv\n\nYou also need Python's `virtualenv` package. Install (in an admin Command Prompt, or using sudo on Linux) using:\n\n```sh\npython -m pip install virtualenv\n```\n\n### Running the Server\n\nYou've got Python set up and you can run it from a command line? It's all rainbows and blue skies from here. This bit assumes you're already in the directory you've cloned the repo to. On my Windows PC, it's this: `C:\\Users\\James\\gitr\\cu-attendance-system`.\n\nFirst, hop into the server directory:\n\n```sh\ncd server\n```\n\nThen set up a Python virtual environment:\n\n```sh\npython -m virtualenv venv\n```\n\nActivate the virtualenv. This just tells the current cmd/shell session to use the virtual environment instead of the global Python packages. On Windows:\n\n```\nvenv\\Scripts\\activate.bat\n```\n\nor on Linux/Mac:\n\n```sh\nsource venv/bin/activate\n```\n\nNow you're in the venv, install all the packages the server program needs. I made this easier by supplying a magic requirements file:\n\n```sh\npython -m pip install -r requirements.txt\n```\n\nEverything is ready! Now all you have to do is run the server file: Running this file directly puts in in debug mode.\n\n```sh\npython server.py\n```\n\nTo test, open to a browser and go to http://localhost:5000/api/hello. If you've got a friendly message saying \"hello\", the server is working! Go to http://localhost:5000 to see the site running.\n\nAs you make changes to `server.py` or any of the module files, it should automatically restart, applying the changes. Updating stuff on the site often requires a \u003ckbd\u003eCtrl+F5\u003c/kbd\u003e (hard refresh) in the browser.\n\n### Resetting the Database\n\nMessed up the database? You fool. Fortunately I do this too tbh and made a script to reset it.\n\nFrom the `server` directory, run this:\n\n```sh\npython database/database_create.py\n```\n\nThis just drops all the tables and recreates them and adds a bit of example data.\n\n### Running the Android App\n\nTo run the Android app, install [Android Studio](https://developer.android.com/studio/index.html). Start Android Studio, and open the `cu-attendance-system/app` project. As the project loads, it prompts you to install all the necassary components.\n\nBuild the project, and then run on an emulator or a physical Android device via adb. To run on a physical device, you must first [enable USB debugging](https://developer.android.com/studio/debug/dev-options.html) in the device's settings.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmsv%2Fcu-attendance-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjmsv%2Fcu-attendance-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmsv%2Fcu-attendance-system/lists"}