Inspiration

We were inspired by the lack of a one-stop shop for all things hiking. While there existed websites like Google Reviews or Yelp where you could get reviews for hiking spots, it was only a simple rating out of five, and would not take into account peoples' preferences in regards to difficulty, average weather, location, and length. We also felt a pressing need to raise awareness about the destructive effects humans have had on the wild through reckless actions.

What it does

HikeHub considers various factors such as trail difficulty, preferred weather based on average weather patterns, and specific locations. This allows users to find hiking spots that match their personal preferences and requirements.

How we built it

We built the website with HTML and CSS, and the game was built using pygame and exported to WebAssembly via pygbag. Working as a team in a same virtual workspace, we utilized the VSCode extension Live Share, and the Live Server extension to temporarily host the website In order to host this website we will be using GitHub pages to make it available for others as well.

Challenges we ran into

One challenge we ran into was implementing deltatime for our game, which allows the game to run at a pace independent of the framerate. Typically, in pygame, this would be accomplished with pygame.clock.Clock(), but because of the requirement to compile it to webassembly for the website, we were unable to use it, because pygbag required the main game loop to be run async. So, instead, we used python's inbuilt time function, which gives the number of seconds since the Unix epoch, to establish a baseline that would be unaffected by the framerate of the game. For the website, one of the biggest challenges was layering the many different css files to their corresponding web pages. Some css files were specifically for one or two web pages while the other ones had differing properties for different web components.

Accomplishments that we're proud of

We're proud of having created such a versatile website that is an all-in-one for everything hiking. While some only created games or practical programs, we managed to create something that rolls both into one. We are also proud of being able to have created such an ambitious project with so much versatility while still coming under the time limit.

What we learned

We learned about advanced CSS styling techniques to make our website's frontend look clean and professional. As for the backend, we also learned about how to integrate HTML and JSON together to take advantage of the massive database that we compiled from multiple sources in order to allow people to find the optimal hiking site. We also learned more about making games in pygame, and also about exporting pygame-built applications to the web with the help of pygbag. It is an exciting application of webassembly, allowing us to use languages other than javascript to create programs for the internet.

What's next for HikeHub

For the future of HikeHub, we plan on enhancing HikeHub by adding more features such as user reviews, real-time weather updates, and a mobile application version. We also aim to expand our database of hiking spots and collaborate with environmental organizations to promote sustainable hiking practices, enhancing

Built With

Share this project:

Updates