An open API service indexing awesome lists of open source software.

https://github.com/cos301-se-2021/geocode

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.
https://github.com/cos301-se-2021/geocode

docker docker-container geocaching geocode postgresql-database qr-code springboot

Last synced: about 1 year ago
JSON representation

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.

Awesome Lists containing this project

README

          




GeoCode – Virtual Global Treasure Hunt



[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=bugs)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)
[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=code_smells)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)
[![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=duplicated_lines_density)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=ncloc)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=alert_status)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)


[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)
[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=security_rating)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)
[![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=sqale_index)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=COS301-SE-2021_GeoCode&metric=vulnerabilities)](https://sonarcloud.io/dashboard?id=COS301-SE-2021_GeoCode)

# Project Overview

With 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.

There 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.

With 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.

# Documentation



The latest versions of the project's documentation, created in LaTeX.

* Software Requirements Specification
* Architectural Requirements
* Technical Installation Manual
* User Manual
* Application Theme Test
* Usability Test
* Coding Standards
* Testing Policy

# Additional Links

- [Demo Website](https://cos301-se-2021.github.io/GeoCode)
- [Technology Stack](docs/Technology_Stack.md)
- [GitHub Management](docs/GitHub_Management.md)
- [Project Management Tools](docs/Project_Management_Tools.md)
- [Demo Video Links](docs/Demo_Video_Links.md)
- [Previous Documentation Versions](docs/Previous_Documentation_Versions.md)

# Mentors

The team had the following mentors from Fifth Dimension Technologies and the University of Pretoria respectively:

Industry Mentor:


Kyle Pretorius
- kyle.pretorius@5dt.com
- LinkedIn Account

University Mentor:


Andrew Broekman
- andrew.broekman@up.ac.za
- LinkedIn Account

# Collaborators

The following software engineers contributed to the GeoCode project:




Michael Ströh


Michael Ströh has learnt throughout his university career that perseverance leads to
excellence. Through working as a Teaching Assistant for COS 212 (Data Structures)
and a Student Lab Technician in the CBT labs at the University Of Pretoria he has
learnt how to manage his time wisely and effectively communicate not only as a team
but also as an individual. As an Artificial Intelligence project Michael Ströh
successfully completed a Sudoku solver using Generic Algorithms and a flower
specimens classifier using Machine Learning with back propagation to identify
the different species of the iris flower, namely, iris setosa, iris versicolour
and iris virginica.

* :man_technologist: GitHub Account
* :mortar_board: LinkedIn Account
* :wave: Personal Website
* :email: m.stroh@tuks.co.za

Responsibilities


- GitHub Readme creation and maintenance.
- Documentation:
- Coding Standards
- Software Requirements Specification
- Architecture Requirements and Design Specifications
- Testing Policy
- Backend:
- GeoCode Subsystem
- System Optimization
- Events Subsystem
- Testing and researched frameworks:
- Unit Testing
- Integration Testing
- Jmeter
- Sonar
- Mockito




Liam Moore


Graduated from Heron Bridge College in 2017 with a distinction for both IT and Life
Orientation. Switched from Computer Engineering to a BSc Information and Knowledge
Systems with the choice of the Software Development elective group in 2019. He was the
class representative for INF 154. Since switching to BSc Information and Knowledge
Systems he has received distinctions for 6 modules. The Software Development elective
group contained modules that gave him experience with C#, C# entity framework, .NET
and Node.js.

* :man_technologist: GitHub Account
* :mortar_board: LinkedIn Account
* :email: liam.moore@tuks.co.za

Responsibilities


- Documentation:
- Software Requirements Specification
- Architecture Requirements and Design Specifications
- Backend:
- Mission Subsystem
- LeaderBoard Subsystem
- Events Subsystem extension for Blockly
- Collectable Subsystem and the design patterns (Decorator and Factory patterns)
- Usability Testing: Conducting Usability Testing





Jenna Gallagher


Graduated from St Dominic’s Priory High School in 2018 with 5 distinctions and 3rd
in her year. She currently has 17 distinctions out of 23 modules. Jenna has done an
internship at Propella which helps startups bring their ideas to life through technology.
There she experienced the life cycle of project development from meeting a client all the
way through to the end project, this will help her in leading the capstone project.

* :woman_technologist: GitHub Account
* :mortar_board: LinkedIn Account
* :wave: Personal Website
* :email: jenna.gallagher@tuks.co.za

Responsibilities


- Documentation:
- Software Requirements Specification
- Architecture Requirements and Design Specifications
- User Manual
- Frontend:
- Explore tabs Pages
- Events tabs Pages
- Profile tabs Pages
- Blockly Pages
- QR Code Creation
- Usability Testing:
- Colour Scheme Test.
- Usability Test document.




Caleb Johnstone


Caleb Johnstone graduated from Fourways High School in 2018, achieving 4 distinctions
- the highest of the two being 94% for Mathematics and 96% for Information Technology.
He placed 7th in Gauteng for Information Technology. Caleb is currently studying in
his 3rd year for a BSc Information and Knowledge Systems, specialising in Data Science.
This degree is one of the two degrees offered at the Computer Science department at
the University Of Pretoria. Caleb was the top Computer Science student for 2019 and 2020.
He was elected as the EBIT House Treasurer for the 2019/2020 term.

* :man_technologist: GitHub Account
* :mortar_board: LinkedIn Account
* :email: caleb.johnstone@tuks.co.za

Responsibilities


- Documentation:
- Software Requirements Specification
- Architecture Requirements and Design Specifications
- User Manual
- Backend:
- User Subsystem
- Leaderboard Subsystem
- Blockly Events
- Mission Subsystem
- Collectable Subsystem




Michael Harvey


Michael Harvey graduated from Richards Bay Christian School in 2018 with 4 distinctions,
and is currently in his 3rd year studying BSc Computer Science. In his first two and a half
years of university he achieved 25 distinctions in 28 modules, and he ranked as the 3rd-
highest first-year Computer Science student at UP in 2019. On the side he maintains 2
Discord bots written in Python that make use of the API for the mobile game Clash of Clans.

* :man_technologist: GitHub Account
* :mortar_board: LinkedIn Account
* :email: michael.harvey@tuks.co.za

Responsibilities


- Frontend:
- Adaptive Layout
- Augmented Reality
- Blockly Integration
- Collections Tab Pages
- QR Code Creation/Scanning
- Profile Tab Pages
- Automation:
- Android APK Build
- Deployment
- Swagger Client Generation
- Documentation:
- Software Requirements Specification
- Architecture Requirements and Design Specifications
- Technical Installation Manual
- Backend: Events Subsystem
- Keycloak Integration
- Server Management
- GitHub Pages Setup