Lunar Comms

High-Level Project Summary

Using Python, Flask and React, we have created a solution for the Lunar Surface Operations: Real-Time Collaboration challenge. We have created an application that makes use of web sockets to allow for instant communication between anyone that is on the same network. All logs will be discoverable to anyone that is on the same network. This is important as these communication logs could be a crucial part of the official record for the mission, as NASA staff would be able to log their thoughts and discoveries as they happen in real-time.

Detailed Project Description

Our solution uses web sockets to allow instant communication between anyone that is on the same network. The application includes a log-in page (using flask authentication and bcrypt), which the staff will need to sign in to with. This will use the authentication system we have designed on python using flask, to ensure the system is secure. It will track what users have logged on, and the logs that they have created. We designed the database on mysql using Python and PHPmyadmin, where there is a table for both the Users and the Log files.

As we had two days to develop the application, there are features we would include if we had more time to develop our solution. In the future, NASA staff would be able to post supporting files along with their console logs, including photo, video and audio files. This could be done using a cloud platform such as Amazon S3. 

Space Agency Data

In our project, we used the resources that were provided for this challenge to inspire our application. Mainly from this resource: https://history.nasa.gov/afj/ap13fj/08day3-problem.html. This inspired the features and aesthetic we wanted for our console log system. 

Hackathon Journey

Our Space Apps experience has been a learning curve for our team, as we hadn’t created a web application from scratch before. It has helped us to develop our research, programming and teamworking skills. We chose this challenge as we knew it would force us push ourselves. We also wanted to be able to create something innovative, and what we hope would be useful for future space missions.

As a team, we didn’t know each other properly beforehand. We are a mixture of third- and second-year University students. We first spoke and learnt of each other’s strengths and weaknesses and developed our project from there. The more experienced members of the team would ensure they explained things thoroughly, so each member of the team understood what was happening and learning along the journey.

Although we live around the same city, due to Covid-19 we have worked online collaboratively. This has been a set-back, as we feel if we were working together in person, it would have been simpler to work on separate parts of the project together. We overcame this by using collaboration software such as Microsoft Teams, and GitHub to view and merge our work together.

References

Resources used:

https://history.nasa.gov/afj/ap13fj/08day3-problem.html

https://www.nasa.gov/mission_pages/NEEMO/NEEMO12/mission_journal_2.html

https://flask.palletsprojects.com/en/2.0.x/

https://codeshack.io/login-system-python-flask-mysql/

https://www.youtube.com/watch?v=msEmUtYqVV0


Tools used:

Visual Studio Code

XAMPP

Python

Flask

MySQL

Tags

#NASA #lunar #webapplication #consolelogs #communication

Global Judging

This project has been submitted for consideration during the Judging process.