{"id":26434020,"url":"https://github.com/cos301-se-2021/geocode","last_synced_at":"2025-03-18T07:20:02.753Z","repository":{"id":46975769,"uuid":"369604297","full_name":"COS301-SE-2021/GeoCode","owner":"COS301-SE-2021","description":"Peak Performers - GeoCode - The GeoCode project is inspired by the popular Geocaching app. Instead of using physical geocaches, QR codes (called geocodes) will be hidden and can be scanned by participants to view the contents of the discovered geocode.","archived":false,"fork":false,"pushed_at":"2024-08-24T14:43:32.000Z","size":12633,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-08-24T15:48:02.150Z","etag":null,"topics":["docker","docker-container","geocaching","geocode","postgresql-database","qr-code","springboot"],"latest_commit_sha":null,"homepage":"https://geocodeapp.tech","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/COS301-SE-2021.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2021-05-21T17:11:07.000Z","updated_at":"2024-08-24T14:43:35.000Z","dependencies_parsed_at":"2022-08-30T08:30:49.423Z","dependency_job_id":null,"html_url":"https://github.com/COS301-SE-2021/GeoCode","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/COS301-SE-2021%2FGeoCode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/COS301-SE-2021%2FGeoCode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/COS301-SE-2021%2FGeoCode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/COS301-SE-2021%2FGeoCode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/COS301-SE-2021","download_url":"https://codeload.github.com/COS301-SE-2021/GeoCode/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244173464,"owners_count":20410303,"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":["docker","docker-container","geocaching","geocode","postgresql-database","qr-code","springboot"],"created_at":"2025-03-18T07:20:01.968Z","updated_at":"2025-03-18T07:20:02.737Z","avatar_url":"https://github.com/COS301-SE-2021.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg align=\"left\" width=\"80\" src=\"https://user-images.githubusercontent.com/39992590/136713126-4d74b8ff-1b54-473f-a109-7a03cf665f6e.png\"\u003e\n\u003c/div\u003e\n\u003ch1 align=\"center\" style=\"color:green; font-size: 300%;\" \u003e \u003ca href=\"https://geocodeapp.tech\"\u003eGeoCode – Virtual Global Treasure Hunt \u003c/a\u003e\u003c/h1\u003e\n\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\n\n[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=bugs)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=code_smells)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n[![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=duplicated_lines_density)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=ncloc)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=alert_status)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n\n[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=reliability_rating)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=security_rating)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n[![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=sqale_index)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode\u0026metric=vulnerabilities)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)\n\n\u003c/div\u003e\n\n\u003c!---\n\n[![Coverage Status](https://coveralls.io/repos/github/COS301-SE-2021/GeoCode/badge.svg?branch=master)](https://coveralls.io/github/COS301-SE-2021/GeoCode?branch=master)\n[![Total Views]](https://hitcounter.pythonanywhere.com/count/tag.svg?url=https://github.com/COS301-SE-2021/GeoCode.svg)\n[![Build Status](https://github.com/COS301-SE-2021/GeoCode/workflows/{workflowName}/badge.svg)](https://github.com/COS301-SE-2021/GeoCode/actions)\n[![Requirements](https://img.shields.io/requires/github/COS301-SE-2021/GeoCode)](https://img.shields.io/requires/github/COS301-SE-2021/GeoCode)\n\n--\u003e\n\n# Project Overview\n\n\u003cdiv style=\"margin-left: 4%\"\u003e\n\nWith the adjustment to the global pandemic and the modernisation of the world we know, average day activities, which some have been around for centuries, are needing to find their way onto the virtual world. Geocaching has started to go out of fashion and is needing a new modern twist on the classic treasure hunt game.\n\nThere is a need to have GeoCodes as there is a problem of caches going missing from people stumbling upon the caches without the knowledge of what they are. With GeoCodes the likely hood of a cache going missing is a lot smaller as it will only be a QR code sticker which people are a lot less likely to remove. A QR code is also a lot easier to replace. The use of a GeoCode also resolves the issue of logbooks being full and people unable to log their finds in the books as this will go digital.\n\nWith the use of GeoCodes as QR codes it also means if someone stumbles upon a QR code and scans it, they will be taken to the GeoCode website where they will be introduced to the concept and have the opportunity to join the GeoCode community.\n\n\u003c/div\u003e\n\n# Documentation\n\n\u003cdiv style=\"margin-left: 4%\"\u003e\n\t\nThe latest versions of the project's documentation, created in LaTeX.\n\n* \u003ca href=\"https://www.overleaf.com/read/tpdxjjnhsxxq\"\u003e Software Requirements Specification \u003c/a\u003e\n* \u003ca href=\"https://www.overleaf.com/read/yvhjyygymzdn\"\u003eArchitectural Requirements\u003c/a\u003e\n* \u003ca href=\"https://www.overleaf.com/read/kggjdjzsptbh\"\u003eTechnical Installation Manual\u003c/a\u003e\n* \u003ca href=\"https://www.overleaf.com/read/kyrfcgymmnng\"\u003eUser Manual\u003c/a\u003e\n* \u003ca href=\"https://www.overleaf.com/read/hpvhpdhpscwz\"\u003eApplication Theme Test\u003c/a\u003e\n* \u003ca href=\"https://www.overleaf.com/read/fwdbkgqbjfnf\"\u003eUsability Test\u003c/a\u003e\n* \u003ca href=\"https://www.overleaf.com/read/byjsbnwxcgnm\"\u003e Coding Standards \u003c/a\u003e\n* \u003ca href=\"https://www.overleaf.com/read/nmvtrtfmjtrh\"\u003e Testing Policy \u003c/a\u003e\n\n\u003c/div\u003e\n\n# Additional Links\n\n\u003cdiv style=\"margin-left: 4%\"\u003e\n\n- [Demo Website](https://cos301-se-2021.github.io/GeoCode)\n- [Technology Stack](docs/Technology_Stack.md)\n- [GitHub Management](docs/GitHub_Management.md)\n- [Project Management Tools](docs/Project_Management_Tools.md)\n- [Demo Video Links](docs/Demo_Video_Links.md)\n- [Previous Documentation Versions](docs/Previous_Documentation_Versions.md)\n\n\u003c/div\u003e\n\n# Mentors\n\n\u003cdiv style=\"margin-left: 4%\"\u003e\n\nThe team had the following mentors from \u003ca href=\"https://5dt.com/\"\u003e Fifth Dimension Technologies \u003c/a\u003e and the \u003ca href=\"https://www.up.ac.za/\"\u003e University of Pretoria\u003c/a\u003e respectively:\n\nIndustry Mentor:\n\u003cpre\u003e\nKyle Pretorius\n - kyle.pretorius@5dt.com\n - \u003ca href=\"https://www.linkedin.com/in/kyle-pretorius-1880a8160/\"\u003eLinkedIn Account \u003c/a\u003e\n\u003c/pre\u003e\n\nUniversity Mentor:\n\u003cpre\u003e\nAndrew Broekman\n - andrew.broekman@up.ac.za\n - \u003ca href=\"https://www.linkedin.com/in/andrewbroekman/\"\u003eLinkedIn Account\u003c/a\u003e\n\u003c/pre\u003e\n\n\u003c/div\u003e\n\n# Collaborators\n\n\u003cdiv style=\"margin-left: 4%\"\u003e\n\nThe following software engineers contributed to the GeoCode project:\n\n\u003cbr/\u003e\n\u003cimg align=\"left\" width=\"80\" src=\"https://user-images.githubusercontent.com/39992590/136713416-05aa6fc3-717f-4b63-be63-18f50543022f.jpg\"\u003e\n\u003ch1 style=\"color:green; font-size: 200%;\" \u003e Michael Ströh \u003c/h1\u003e\n\n   \u003cpre\u003e\n         Michael Ströh has learnt throughout his university career that perseverance leads to\n         excellence. Through working as a Teaching Assistant for COS 212 (Data Structures)\n         and a Student Lab Technician in the CBT labs at the University Of Pretoria he has\n         learnt how to manage his time wisely and effectively communicate not only as a team\n         but also as an individual. As an Artificial Intelligence project Michael Ströh \n         successfully completed a Sudoku solver using Generic Algorithms and a flower \n         specimens classifier using Machine Learning with back propagation to identify \n         the different species of the iris flower, namely, iris setosa, iris versicolour \n         and iris virginica.\n\u003c/pre\u003e\n\n* :man_technologist: \u003ca href=\"https://github.com/Michael-Stroh\"\u003e GitHub Account \u003c/a\u003e\n* :mortar_board: \u003ca href=\"https://www.linkedin.com/in/stroh-michael/\"\u003e LinkedIn Account \u003c/a\u003e\n* :wave: \u003ca href=\"https://michael-stroh.github.io/myCV/\"\u003e Personal Website \u003c/a\u003e\n* :email: m.stroh@tuks.co.za\n   \u003cdetails\u003e\n       \u003csummary\u003e\u003cb\u003e Responsibilities \u003c/b\u003e\u003c/summary\u003e\n       \u003cpre\u003e\n           - GitHub Readme creation and maintenance.\n           - Documentation: \n              - Coding Standards\n              - Software Requirements Specification\n              - Architecture Requirements and Design Specifications\n              - Testing Policy\n           - Backend:\n              - GeoCode Subsystem\n              - System Optimization\n              - Events Subsystem\n\t\t   - Testing and researched frameworks:\n              - Unit Testing\n              - Integration Testing\n              - Jmeter\n              - Sonar\n              - Mockito\n\u003c/pre\u003e\n   \u003c/details\u003e\n\n\n\u003cbr/\u003e\n\u003cimg align=\"left\" width=\"80\" src=\"https://user-images.githubusercontent.com/39992590/136713414-dda2cefb-7b9a-4d9f-aabc-19394d69e5cb.jpg\"\u003e\n\u003ch1 style=\"color:green; font-size: 200%;\" \u003e Liam Moore \u003c/h1\u003e\n\n\n  \u003cpre\u003e\n         Graduated from Heron Bridge College in 2017 with a distinction for both IT and Life\n         Orientation. Switched from Computer Engineering to a BSc Information and Knowledge\n         Systems with the choice of the Software Development elective group in 2019. He was the\n         class representative for INF 154. Since switching to BSc Information and Knowledge\n         Systems he has received distinctions for 6 modules. The Software Development elective\n         group contained modules that gave him experience with C#, C# entity framework, .NET\n         and Node.js.\n\u003c/pre\u003e\n\n\n* :man_technologist: \u003ca href=\"https://github.com/NitronBiohazard\"\u003e GitHub Account\u003c/a\u003e\n* :mortar_board: \u003ca href=\"https://www.linkedin.com/in/liam-moore-410004210/\"\u003e LinkedIn  Account \u003c/a\u003e\n* :email: liam.moore@tuks.co.za\n   \u003cdetails\u003e\n       \u003csummary\u003e\u003cb\u003e Responsibilities \u003c/b\u003e\u003c/summary\u003e\n       \u003cpre\u003e\n           - Documentation: \n              - Software Requirements Specification\n              - Architecture Requirements and Design Specifications\n           - Backend: \n              - Mission Subsystem\n              - LeaderBoard Subsystem\n              - Events Subsystem extension for Blockly\n              - Collectable Subsystem and the design patterns (Decorator and Factory patterns)\n           - Usability Testing: Conducting Usability Testing\n\u003c/pre\u003e\n   \u003c/details\u003e\n\t\n\n\u003cbr/\u003e\n\u003cimg align=\"left\" width=\"80\" src=\"https://user-images.githubusercontent.com/39992590/136713405-9f0d8938-aa24-4b74-bc17-d3c9b4f6fa82.jpg\"\u003e\n\u003ch1 style=\"color:green; font-size: 200%;\" \u003e Jenna Gallagher \u003c/h1\u003e\n\n  \u003cpre\u003e\n         Graduated from St Dominic’s Priory High School in 2018 with 5 distinctions and 3rd\n         in her year. She currently has 17 distinctions out of 23 modules. Jenna has done an\n         internship at Propella which helps startups bring their ideas to life through technology.\n         There she experienced the life cycle of project development from meeting a client all the\n         way through to the end project, this will help her in leading the capstone project.\n\u003c/pre\u003e\n\n* :woman_technologist: \u003ca href=\"https://github.com/JennaLynGallagher/JennaLynGallagher\"\u003e GitHub Account \u003c/a\u003e\n* :mortar_board: \u003ca href=\"https://www.linkedin.com/in/jenna-lyn-gallagher/\"\u003e LinkedIn  Account \u003c/a\u003e\n* :wave: \u003ca href=\"https://jennalyngallagher.github.io/\"\u003e Personal Website \u003c/a\u003e\n* :email: jenna.gallagher@tuks.co.za\n   \u003cdetails\u003e\n       \u003csummary\u003e\u003cb\u003e Responsibilities \u003c/b\u003e\u003c/summary\u003e\n       \u003cpre\u003e\n           - Documentation: \n              - Software Requirements Specification\n              - Architecture Requirements and Design Specifications\n              - User Manual\n           - Frontend: \n              - Explore tabs Pages \n              - Events tabs Pages\n              - Profile tabs Pages\n              - Blockly Pages\n              - QR Code Creation\n           - Usability Testing: \n              - Colour Scheme Test.\n              - Usability Test document.\n       \u003c/pre\u003e\n   \u003c/details\u003e\n\n\u003cbr/\u003e\n\u003cimg align=\"left\" width=\"80\" src=\"https://user-images.githubusercontent.com/39992590/136713398-3c3662de-2dd3-4a5f-9fee-5862591f1c60.jpg\"\u003e\n\u003ch1 style=\"color:green; font-size: 200%;\" \u003e Caleb Johnstone \u003c/h1\u003e\n\n  \u003cpre\u003e\n         Caleb Johnstone graduated from Fourways High School in 2018, achieving 4 distinctions\n         - the highest of the two being 94% for Mathematics and 96% for Information Technology.\n         He placed 7th in Gauteng for Information Technology. Caleb is currently studying in\n         his 3rd year for a BSc Information and Knowledge Systems, specialising in Data Science.\n         This degree is one of the two degrees offered at the Computer Science department at\n         the University Of Pretoria. Caleb was the top Computer Science student for 2019 and 2020.\n         He was elected as the EBIT House Treasurer for the 2019/2020 term.\n\u003c/pre\u003e\n\n* :man_technologist: \u003ca href=\"https://github.com/CalebJohnstone\"\u003e GitHub Account\u003c/a\u003e\n* :mortar_board: \u003ca href=\"https://www.linkedin.com/in/caleb-johnstone-94368a132/\"\u003e LinkedIn  Account \u003c/a\u003e\n* :email: caleb.johnstone@tuks.co.za\n   \u003cdetails\u003e\n       \u003csummary\u003e\u003cb\u003e Responsibilities \u003c/b\u003e\u003c/summary\u003e\n       \u003cpre\u003e\n           - Documentation: \n              - Software Requirements Specification\n              - Architecture Requirements and Design Specifications\n              - User Manual\n           - Backend: \n              - User Subsystem \n              - Leaderboard Subsystem\n              - Blockly Events\n              - Mission Subsystem\n              - Collectable Subsystem           \n\u003c/pre\u003e\n   \u003c/details\u003e\n\n\u003cbr/\u003e\n\u003cimg align=\"left\" width=\"80\" src=\"https://user-images.githubusercontent.com/39992590/136713394-0993c9b5-fd2e-467d-a511-c4c1d9fc3e4e.jpg\"\u003e\n\u003ch1 style=\"color:green; font-size: 200%;\" \u003e Michael Harvey \u003c/h1\u003e\n\n  \u003cpre\u003e\n         Michael Harvey graduated from Richards Bay Christian School in 2018 with 4 distinctions,\n         and is currently in his 3rd year studying BSc Computer Science. In his first two and a half\n         years of university he achieved 25 distinctions in 28 modules, and he ranked as the 3rd-\n         highest first-year Computer Science student at UP in 2019. On the side he maintains 2\n         Discord bots written in Python that make use of the API for the mobile game Clash of Clans.\n\u003c/pre\u003e\n\n* :man_technologist: \u003ca href=\"https://github.com/MichaelJHarvey\"\u003e GitHub Account\u003c/a\u003e\n* :mortar_board: \u003ca href=\"https://www.linkedin.com/in/michaelharvey-123/\"\u003e LinkedIn  Account \u003c/a\u003e\n* :email: michael.harvey@tuks.co.za\n   \u003cdetails\u003e\n       \u003csummary\u003e\u003cb\u003e Responsibilities \u003c/b\u003e\u003c/summary\u003e\n       \u003cpre\u003e\n           - Frontend: \n              - Adaptive Layout\n              - Augmented Reality\n              - Blockly Integration\n              - Collections Tab Pages\n              - QR Code Creation/Scanning\n              - Profile Tab Pages\n           - Automation:\n              - Android APK Build\n              - Deployment\n              - Swagger Client Generation\n           - Documentation: \n              - Software Requirements Specification\n              - Architecture Requirements and Design Specifications\n              - Technical Installation Manual\n           - Backend: Events Subsystem\n           - Keycloak Integration\n           - Server Management\n           - GitHub Pages Setup\n\u003c/pre\u003e\n   \u003c/details\u003e\n\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcos301-se-2021%2Fgeocode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcos301-se-2021%2Fgeocode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcos301-se-2021%2Fgeocode/lists"}