Inspiration

Let's be honest here, who doesn't go to hackathons for the free snacks and swag. Obviously everyone does. Snack should be accessible, in fact, Google makes sure that no one should be more than 200 feet away from food. Then why do hackers need to climb multiple floors and wait for snack trolleys to come around?

Here's the thing about hackathons. The first day is all hype and slowly the scope of the project sets in. By the close of the second day, everyone is tired and in desperate need of a change of scenery and some fresh ideas. Luckily, hackathons are home to some of the most big brain people we've ever met, and those very people will be able to provide their expertise.

What if...just what if, we could combine both of those ideas into one platform?

What it does

The project is a platform for various hackers at hackathons to trade help for snacks. Say someone doesn't know how to implement something in React.js, but since there are so many talented and knowledgable hackers at a hackathon, they can send them a solution right away. The solution is held in a temporary space in the database until the user who request help, delivers the snack to the solution giver.

This brokers a Win-Win interaction between them both! One gets snacks (much needed fuel for a hackathon), and one gets a great solution! (also much needed for a hackathon)

How we built it

Since both of us were new to hackathons and web-development in general, we decided against going for a full fledged full stack application with REST API and JWT authentication. We wanted to make sure we could finish this project and get it out there because it's just such a fun little concept! We used Vue.js for the frontend framework, tailwind css for all of our styling needs, and Firebase as our backend. We used Firestore for our database and seamlessly provided updates to the frontend. Additionally, to make the problem statements easier to read for others, we included a markdown library to render the input text, and any additional code they might have included.

Challenges we ran into

Some of the challenges we ran into were managing the states of the user, the solutions, the snacks, and the delivery objects. In our code, we have a lot of actions in the vuex store, which made it hard to keep track of certain things so it complicated our code and made our development time longer.

Accomplishments that we're proud of

As for our first hackathon, well one of us, we did surprisingly well and really enjoyed the process! It was really amazing learning the different APIs from sponsors and trying to figure out how it'll integrate into our app. What it exceptionally awesome was that we were able to finish all of this in just 48 hours! And whats more is it works as well (most of the time).

Using Vue.js was a great learning experience and we're really proud of our frontend skills now and how much we've learned about Vuex storage and state management patterns in vue.

What we learned

Do not drink 6 cans of red bull in under 33 hours 😭 In all seriousness though, we learned so much about front-end development, making API calls, state and session management, and also Vue.js. Typescript was a pain sometimes, but it helped keep everything a lot more clean and tidy than if it was written in javascript. Additionally there were so many resources, so it was really a journey of exploring and learning, rather than building.

What's next for SnhackDash

Pitching it to MLH of course! 🤭

Definitely polishing up every part of this app, as well as try to integrate some live messaging capabilities either through Firebase or through web sockets. We're also planning on breaking this app down into multiple micro-services in the future, so we can scale this up. Additionally, we're looking to integrate Twilio or a similar service for push notifications, so users can see real-time when they've received a solution proposal.

One major feature that we couldn't add in time was the ability for live navigation within the actual hackathon venue, and creating a dashboard to allow organizers to add in what kind of snacks there are for the snhackdashers to deliver.

Built With

Share this project:

Updates