Team Hephaestus present Yacht Mappstar
Logs your progress towards the prerequisite sailing experience for the RYA YachtMaster courses.
Most people don't own a yacht...
Kyle is no exception (for now). Yet to become a certified RYA Skipper you need to Log the right amount of experience at sea, before being able to take an RYA Sail Cruising Course and Exam. When spending time on a sailing yacht, life is busy. The last thing you are going to remember to do when you have moored at the marina after an intense few days of sailing is take a photo of the Ship's Log! Here's where we come in:
Yacht Mappster tracks the time you spend on other people's vessels and compiles it into a handy personal Nav Log. Just tell us when you're onboard a vessel. We'll do the rest!
We will tell you how many miles you've sailed, how many night hours you've been underway, your, course, heading, speed... we can even give you the total number of hours you've been in command of the vessel! We will then generate a handy, portable Personal Nav Log of all your experience as a Yachtsperson, in PDF format to keep and share.
Simple!

Yacht Mappstar Demo Video | Northcoders Project Presentations
Yacht Mappstar

Kyle McPhail

Marios Kontis

Aidan Maycock

Mohamed Zaghlou
Tech Stack
Languages and Frameworks:
Node.js
Typescript
React Native
Expo
React Navigation
Backend tools:
AWS Amplify
AWS Cognito
Axios
Express
Expo - AsyncStorage
Expo - Print
APIs:
Datalastic
Libraries:
Turf
Sunrise-sunset-js
entypo
Testing:
Jest
Cypress
Android Studio
XCode
Package and Environment Management:
NPM
dotenv
Watchman
Babel
Husky
Development and Design Tools:
Visual Studio Code
Git
GitHub
Stack Overflow
ESLint
Prettier
Trello
Google Workspace
Markdown
Slack
Google Meet
Figma
TLDR
Languages and Frameworks:
Typescript gave us an opportunity to debug more efficiently. React Native meant we could build a mobile app using a framework which was familiar to the team. Expo gave us access to powerful cross-platform tools
Backend tools:
AWS Amplify was a chance for the team to gain experience in AWS services, all in one place. AWS Cognito gave our users a secure experience Expo - AsyncStorage provided an easily integrative way to store user-generated data and data from external API's locally and securely, Expo - Print was our chosen way to export a PDF because it seamlessly used native UIs and gave access to many options for the user.
Libraries:
Turf this GeoSpatial js library was perfect because it had very good documentation and was simple and quick to implement. Sunrise-sunset-js won out over SunCalc because it used UTC which aligned with the data we got back from our third-party API. entypo - the icons fitted our brand image.
Testing:
Jest was a familiar test framework which we could hit the ground running with for our util functions Cypress presented an opportunity to learn front-end testing rapidly.
Package and Environment Management:
Babel ESLint and Husky streamlined our workflows by preventing merge conflicts.