Inspiration
Given Hack@Brown's space theme, the first thing our team thought of was something that all of us have seen and enjoyed before: stars in the night sky. We wanted to create a way for star-enthusiasts to track the constellations that they've seen, presenting them all in one place with images and any notes or comments they want to leave about how they found the constellation, what their night was like, or any interesting observations that they want to record. Thus, Starsite was born.
What it does
Starsite functions as a tool for mapping the stars, allowing users to identify constellations and record their observations for everyone. It combines the features of a star chart and an encyclopedia, providing both a visual representation of the night sky and information about the stars and constellations. Before logging in, the user is presented with a home page which contains images and notes uploaded by other users. Once the user signs up for an account and logs in, they're presented with a profile page. The profile page contains stock images of all 88 constellations, as well as information about them that can be accessed with the "More Info" button. Back on the home page, the user can press the "+" button to upload a constellation of their own, including an image and any notes about it. Uploading a constellation adds it to the home page for any other users to see, and it also updates the user's personal profile, replacing the stock image of the corresponding constellation with the user's very own photograph. Starsite allows users to keep track of their own constellations while also appreciating photos taken by others and having the chance to share photos of their own.
How we built it
This project was built using the Django framework. We used SQLite3 to host databases for user authentication and maintain user accounts with records of the photographs and any notes they took. The frontend of the website was written in HTML and JavaScript and styled in CSS.
Images were taken from Unsplash and https://www.star-registration.com/blogs/constellations-and-zodiac-signs/an-overview-of-all-88-constellations. We also used ChatGPT to aid in implementing the hover for more information feature. Information on the constellations was taken from https://www.datastro.eu/explore/dataset/88-constellations/table/?flg=en-us&disjunctive.season_saison&disjunctive.iau_code&disjunctive.dec_declinaison&disjunctive.test&disjunctive.constellation_area_in_of_the_celestial_sphere_etendue_de_la_constellation_en_de_la_sphere_celeste&disjunctive.constellation_zone_celestial_equator_zone_de_la_constellation_equateur_celeste&disjunctive.constellation_zone_milky_way_zone_de_la_constellation_voie_lactee&disjunctive.quad_repere_de_l_hemisphere_et_du_quadrant&disjunctive.name_origin_origine_de_l_apellation&sort=iau_code.
Challenges we ran into
The project was challenging due to the scale of the data we had to work with. Designing a user interface that was both functional and aesthetically pleasing also posed significant challenges. Also, using GitHub with our team of four people was extremely challenging, and we spend a lot of time working through merge conflicts and navigating how to work together on the same project.
Accomplishments that we're proud of
We're very proud of our database implementation, which stores the image data and the user data. For most of our team, databases were completely unfamiliar, and one of our team members was able to learn and implement a database over the course of the hackathon.
What's next for Starsite
One feature we did not have time to implement but hope to in the future is a machine learning algorithm that can identify the constellation in an image that a user uploads so that the user does not have to identify the constellation themselves.
Log in or sign up for Devpost to join the conversation.