hacklympics
π Online programming examination system prototype, featuring anticheat mechanisms (keylogging, playback)
File Explorer
Download Latest Version (.zip)- Hacklympics.iml
- modules.xml
- vcs.xml
- workspace.xml
- TakeExam - Code.png
- TakeExam - Hint.png
- TakeExam - OnlineJudge.png
- TakeExam - Retaking Blocked.png
- .directory
- EditMaterials - Course.png
- EditMaterials - Exam.png
- EditMaterials - Problem.png
- ManageMaterials - Launch Exam.png
- ManageMaterials - View.png
- Messaging - Toast.png
- Proctor - Keystrokes.png
- Proctor - Snapshots.png
- User Menu.png
- Dashboard.png
- Login.png
- About.fxml
- AboutController.class
- Login.fxml
- LoginController.class
- Preference.fxml
- PreferenceController.class
- Profile.fxml
- ProfileController.class
- Register.fxml
- RegisterController.class
- MainController.class
- UserMenu.class
- Main.class
- KeystrokeLogger.class
- ScreenRecorder.class
- Code.fxml
- CodeController.class
- FileTab.class
- PendingCodePatches.class
- StyledCodeArea.class
- Courses.fxml
- CoursesController.class
- Dashboard.fxml
- DashboardController.class
- OngoingExams.fxml
- OngoingExamsController.class
- Messages.fxml
- MessagesController.class
- Student.fxml
- StudentController.class
- Courses.fxml
- CoursesController.class
- UserListView.class
- Dashboard.fxml
- DashboardController.class
- OngoingExams.fxml
- OngoingExamsController.class
- Messages.fxml
- MessagesController.class
- KeystrokeBox.class
- KeystrokeStudentsVBox.class
- Proctor.fxml
- ProctorController$1.class
- ProctorController.class
- SnapshotBox.class
- SnapshotGroup.class
- SnapshotGrpVBox.class
- StudentBox.class
- StudentsVBox.class
- Teacher.fxml
- TeacherController.class
- Java.class
- Language.class
- CodePatch.class
- CodeUtils.class
- AlertDialog.class
- ConfirmDialog.class
- Dialog.class
- FormDialog.class
- WrappingText.class
- OnlineUserListView.class
- FXMLTable.class
- Utils.class
- Avatar.png
- BlankSnapshot.jpg
- DefaultAvatar.png
- Icon.png
- Wall.png
- Default.css
- JavaKeywords.css
- config.properties
- Hacklympics.jar
- fontawesomefx-8.9.jar
- gson-2.8.2.jar
- java-diff-utils-1.3.0-SNAPSHOT.jar
- jfoenix-8.0.1.jar
- log4j-api-2.11.1.jar
- okhttp-3.10.0.jar
- okio-1.14.0.jar
- richtextfx-fat-0.9.0.jar
- terminalfx-1.0.5.jar
- thumbnailator-0.4.8.jar
- About.fxml
- AboutController.java
- Login.fxml
- LoginController.java
- Preference.fxml
- PreferenceController.java
- Profile.fxml
- ProfileController.java
- Register.fxml
- RegisterController.java
- MainController.java
- UserMenu.java
- Main.java
- KeystrokeLogger.java
- ScreenRecorder.java
- Code.fxml
- CodeController.java
- FileTab.java
- PendingCodePatches.java
- StyledCodeArea.java
- Courses.fxml
- CoursesController.java
- Dashboard.fxml
- DashboardController.java
- OngoingExams.fxml
- OngoingExamsController.java
- Messages.fxml
- MessagesController.java
- Student.fxml
- StudentController.java
- Courses.fxml
- CoursesController.java
- UserListView.java
- Dashboard.fxml
- DashboardController.java
- OngoingExams.fxml
- OngoingExamsController.java
- Messages.fxml
- MessagesController.java
- KeystrokeBox.java
- KeystrokeStudentsVBox.java
- Proctor.fxml
- ProctorController.java
- SnapshotBox.java
- SnapshotGroup.java
- SnapshotGrpVBox.java
- StudentBox.java
- StudentsVBox.java
- Teacher.fxml
- TeacherController.java
- Java.java
- Language.java
- CodePatch.java
- CodeUtils.java
- AlertDialog.java
- ConfirmDialog.java
- Dialog.java
- FormDialog.java
- WrappingText.java
- OnlineUserListView.java
- FXMLTable.java
- Utils.java
- Avatar.png
- BlankSnapshot.jpg
- DefaultAvatar.png
- Icon.png
- Wall.png
- Default.css
- JavaKeywords.css
- .classpath
- .project
- config.properties
- Hacklympics.xml
- Response.class
- SocketServer.class
- StatusCode.class
- AttendExamEvent.class
- HaltExamEvent.class
- LaunchExamEvent.class
- LeaveExamEvent.class
- NewMessageEvent.class
- AdjustProctorParamsEvent.class
- NewKeystrokeEvent.class
- NewSnapshotEvent.class
- LoginEvent.class
- LogoutEvent.class
- Event.class
- EventHandler.class
- EventManager.class
- EventType.class
- ExamRelated.class
- Answer.class
- AnswerData.class
- Course.class
- CourseData.class
- Exam.class
- ExamData.class
- Problem.class
- ProblemData.class
- Message.class
- Config.class
- Keystroke.class
- ProctorMedium.class
- Snapshot.class
- Session.class
- UserController.class
- Role.class
- Student.class
- Teacher.class
- User.class
- UserProfile.class
- ImageUtils.class
- NetworkUtils.class
- HacklympicsAPI.jar
- gson-2.8.2.jar
- okhttp-3.10.0.jar
- okio-1.14.0.jar
- thumbnailator-0.4.8.jar
- Response.java
- SocketServer.java
- StatusCode.java
- AttendExamEvent.java
- HaltExamEvent.java
- LaunchExamEvent.java
- LeaveExamEvent.java
- NewMessageEvent.java
- AdjustProctorParamsEvent.java
- NewKeystrokeEvent.java
- NewSnapshotEvent.java
- LoginEvent.java
- LogoutEvent.java
- Event.java
- EventHandler.java
- EventManager.java
- EventType.java
- ExamRelated.java
- Answer.java
- AnswerData.java
- Course.java
- CourseData.java
- Exam.java
- ExamData.java
- Problem.java
- ProblemData.java
- Message.java
- Config.java
- Keystroke.java
- ProctorMedium.java
- Snapshot.java
- Session.java
- UserController.java
- Role.java
- Student.java
- Teacher.java
- User.java
- UserProfile.java
- ImageUtils.java
- NetworkUtils.java
- .classpath
- .project
- HacklympicsAPI.jardesc
- misc.xml
- modules.xml
- Nocturnal.iml
- workspace.xml
- Test.class
- Test.java
- __init__.cpython-35.pyc
- __init__.cpython-36.pyc
- admin.cpython-35.pyc
- admin.cpython-36.pyc
- event_type.cpython-35.pyc
- exceptions.cpython-35.pyc
- exceptions.cpython-36.pyc
- judge.cpython-35.pyc
- judge.cpython-36.pyc
- messenger.cpython-35.pyc
- models.cpython-35.pyc
- models.cpython-36.pyc
- proctor.cpython-36.pyc
- session.cpython-35.pyc
- sessions.cpython-35.pyc
- sessions.cpython-36.pyc
- status_code.cpython-35.pyc
- status_code.cpython-36.pyc
- __init__.cpython-35.pyc
- __init__.cpython-36.pyc
- dispatcher.cpython-35.pyc
- dispatcher.cpython-36.pyc
- event_dispatcher.cpython-35.pyc
- event_type.cpython-35.pyc
- event_type.cpython-36.pyc
- events.cpython-35.pyc
- events.cpython-36.pyc
- messenger.cpython-35.pyc
- __init__.py
- dispatcher.py
- event_type.py
- events.py
- 0001_initial.cpython-35.pyc
- 0001_initial.cpython-36.pyc
- 0002_user_last_login_ip.cpython-35.pyc
- 0002_user_last_login_ip.cpython-36.pyc
- 0003_auto_20180419_0708.cpython-35.pyc
- 0003_auto_20180419_0708.cpython-36.pyc
- 0004_auto_20180501_1417.cpython-35.pyc
- 0004_auto_20180501_1417.cpython-36.pyc
- 0005_auto_20180501_1424.cpython-35.pyc
- 0005_auto_20180501_1424.cpython-36.pyc
- 0006_auto_20180501_1425.cpython-35.pyc
- 0006_auto_20180501_1425.cpython-36.pyc
- 0007_auto_20180502_0823.cpython-35.pyc
- 0007_auto_20180502_0823.cpython-36.pyc
- 0008_auto_20180503_0354.cpython-35.pyc
- 0008_auto_20180503_0354.cpython-36.pyc
- 0009_auto_20180508_1213.cpython-35.pyc
- 0009_auto_20180508_1213.cpython-36.pyc
- 0010_auto_20180508_1443.cpython-35.pyc
- 0010_auto_20180508_1443.cpython-36.pyc
- 0011_snapshot_exam.cpython-35.pyc
- 0011_snapshot_exam.cpython-36.pyc
- 0012_auto_20180711_0558.cpython-35.pyc
- 0012_auto_20180711_0558.cpython-36.pyc
- 0013_message_exam.cpython-35.pyc
- 0013_message_exam.cpython-36.pyc
- 0014_auto_20180715_0125.cpython-35.pyc
- 0014_auto_20180715_0125.cpython-36.pyc
- __init__.cpython-35.pyc
- __init__.cpython-36.pyc
- 0001_initial.py
- 0002_user_last_login_ip.py
- 0003_auto_20180419_0708.py
- 0004_auto_20180501_1417.py
- 0005_auto_20180501_1424.py
- 0006_auto_20180501_1425.py
- 0007_auto_20180502_0823.py
- 0008_auto_20180503_0354.py
- 0009_auto_20180508_1213.py
- 0010_auto_20180508_1443.py
- 0011_snapshot_exam.py
- 0012_auto_20180711_0558.py
- 0013_message_exam.py
- 0014_auto_20180715_0125.py
- __init__.py
- answer.cpython-35.pyc
- answer.cpython-36.pyc
- course.cpython-35.pyc
- course.cpython-36.pyc
- exam.cpython-35.pyc
- exam.cpython-36.pyc
- judge.cpython-35.pyc
- keystroke.cpython-35.pyc
- keystroke.cpython-36.pyc
- message.cpython-35.pyc
- message.cpython-36.pyc
- problem.cpython-35.pyc
- problem.cpython-36.pyc
- proctor.cpython-36.pyc
- snapshot.cpython-35.pyc
- snapshot.cpython-36.pyc
- user.cpython-35.pyc
- user.cpython-36.pyc
- answer.py
- course.py
- exam.py
- message.py
- problem.py
- proctor.py
- user.py
- __init__.py
- __init__.pyc
- admin.py
- admin.pyc
- config.py
- exceptions.py
- judge.py
- models.py
- models.pyc
- sessions.py
- status_code.py
- __init__.cpython-35.pyc
- __init__.cpython-36.pyc
- settings.cpython-35.pyc
- settings.cpython-36.pyc
- urls.cpython-35.pyc
- urls.cpython-36.pyc
- wsgi.cpython-35.pyc
- wsgi.cpython-36.pyc
- __init__.py
- __init__.pyc
- settings.py
- settings.pyc
- urls.py
- urls.pyc
- wsgi.py
- db.sqlite3
- db.sqlite3.old
- manage.py
- start_server.sh
- .gitignore
- LICENSE
- README.md
# Installation Guide
1. Get the code
git clone https://github.com/aesophor/hacklympics
Downloads the entire project code from GitHub to your computer.
cd hacklympics
Moves into the project folder you just downloaded.
2. Python
Easy RecommendedPrerequisites
python <μ€νν νμΌλͺ
>.py # READMEμμ μ νν μ€ν νμΌλͺ
μ νμΈνμΈμ
Runs the Python script (or module).
If it runs without errors and prints output in the terminal, it worked.
// repository documentation
Was this content helpful?
(0 ratings)
