## Inspiration

Both members of our team are major foodies, and love visiting new places, and cooking new dishes. With so many different cuisines, and so many amazing restaurants and dishes to choose from, it can be challenging to make a decision. With Eatspo, you can get direct inspiration from your friends, families and peers, and get a direct feed of all the different foods they are trying. When someone you know has already tried it, the process becomes much easier and way more fun.

## What it does

With the Eatspo App, individuals can post any recent foods they have tried, whether that's at a restaurant, or a home cooked meal. These posts include pictures, location details (for restaurants), and recipes (for home cooked meals). This allows one to effortlessly fill their feed with various posts of unique dishes to view, and take inspiration from.

## How we built it

We built this project using a MERN stack, and by following lots and lots of online tutorials and documentation.

## Challenges we ran into

Having very minimal experience with creating a full stack application, we had to research and learn almost every component that was involved with development process. Also having just a team of 2, the process was long, and took from early in the morning, finishing late into the night. Many times throughout this process, we hit dead ends, and lots of road blocks, which were very discouraging and demotivating; however, that made finishing feel even more satisfying.

For the frontend, using Axios to connect to the backend was very challenging and time consuming, as neither of us had much experience with that at all. Also state management for react was quite tricky.

For the backend, creating custom Javascript functions to carry out our desired behavior was very challenging. A lot of the documentation for some functionalities was limited, and required either lots of research and learning, or troubleshooting and brute force testing.

## Accomplishments that we're proud of

Working together, after lots of hard work and struggling, we are absolutely thrilled to have completed our goal, and are so excited and happy to go from nothing, to a functioning application.

We learnt so much about creating a full stack application, and got to gain lots of valuable experience and familiarity with various tools and resources for developing applications. Being able to self learn and apply these concepts towards something fun and personal, is an accomplishment we are very proud of.

## What we learned

For this project, we decided to go with a MERN stack, which consists of MongoDB, Express, React, and Node.js. We used this alongside a Restful API to create our application.

Through following lots of guides and documentation, we were able to successfully set up a server with Node, and create Javascript models on top of a NoSQL MongoDB database. Using React, we were able to set up our front-end, and link it to the backend using Express.

We were also able to set up a Google Cloud Storage platform, and integrate that into our application for image handling

## What's next for Eatspo

There are many different paths Eatspo could take going forward, with lots of opportunities to expand and grow. We could introduce customizing options, such as filtering by cuisine, location, ingredient (etc). We could also introduce Eatspo challenges and events, involving various restaurants and dishes, to help get users even more excited about trying new food.
## Inspiration

Problems we experienced in the gym:
Finding a friend to go the the gym with
Giving/asking for advice at the gym is taboo
Having to contact your workout friends, find gym information, record exercises and track progress all through different platforms, with often intricate processes not designed for ease of use.

## What it does

Indicated above are the major problems we have recognized in the fitness scene, and FitBud brings a solution.
FitBud brings all steps from planning your next visit, to reflecting on your progress onto the same streamlined platform.

Provides gym-goers a forum to find and meet like-minded individuals and discuss all things fitness.
FitBuddies can converse with each other to get advice, share recommendations, or plan a session together. The check-in feature starts a session, after which the user can track exercises completed and listen to their Spotify playlist directly on FitBud. Meanwhile in the back-end, the check-in feature tracks frequency of visits for the user and workout schedule progression.

## How we built it

## Challenges we ran into

To make FitBud the only tool needed for the gym, we had to incorporate functionality for Google Maps and Spotify. Integrating the API for these two applications was a challenge we faced.

## Accomplishments that we're proud of

## What we learned

## What's next for FitBud

Communities

* A new feature allowing FitBuddies to create a larger group for users visiting the same gym, and a more open social setting to further eliminate the awkward-air in the fitness facility

Snapchat Gym Stories

* Use the Snapchat API to incorporate location stories from snapchat, for FitBuddies to view live activity at different fitness facilities
## Inspiration

Open-world AR applications like Pokemon Go that bring AR into everyday life and the outdoors were major inspirations for this project. Additionally, in thinking about how to integrate smartphones with Spectacles, we found inspiration in video games like Phasmophobia's EMP sensors that react more strongly in the presence of ghosts or The Legend of Zelda: Skyward Sword that contained an in-game tracking functionality that pulsates more strongly when facing the direction of and walking closer to a target.

## What it does

This game integrates the Spectacles gear and smartphones together by allowing users to leverage the gyroscopic, haptic, and tactile functionalities of phones to control or receive input about their AR environment. In the game, users have to track down randomly placed treasure chests in their surrounding environment by using their phone as a sensor that begins vibrating when the user is facing a treasure and enters stronger modes of haptic feedback as users get closer to the treasure spots.

These chests come in three types: monetary, puzzle, and challenge. Monetary chests immediately give users in-game rewards. Puzzle chests engage users in a single-player mini-game that may require cognitive or physical activity. Finally, challenge chests similarly engage users in activities not necessarily games, and a stretch goal for multiplayers was that if multiple users were near a spot that another user found a treasure in, the other n users could challenge the treasure finder in a n vs. 1 duel, with the winner(s) taking the rewards.

## How we built it

Once we figured out our direction for the project, we built a user flow architecture in Figma to brainstorm the game design for our application ([link](https://www.figma.com/design/pyG5hlpYkWwVcyvIQJCnY3/Treasure-Hunt-UX-Architecture?node-id=0-1&node-type=canvas&t=clqInR0JpOM6tEnv-0)), and we also visualized how to implement the system for integrating phone haptic feedback with the spectacles depending on distance and directional conditions.

From there, we each took on specific aspects of the user flow architecture to primarily work on: (1) the treasure detection mechanism, (2) spawning the treasure once the user entered within a short distance from the target, and (3) the content of the treasure chests (i.e. rewards or activities). Nearly everything was done using in-house libraries, assets, and the GenAI suite within Snap's Lens Studio.

## Challenges we ran into

As we were working with Spectacles for the first time (compounded with internet problems), we initially encountered technical issues with setting up our development environment and linking the Spectacles for debugging. Due to limited documentation and forums since it is limited-access technology, we had to do a lot of trial-and-error and guessing to figure out how to get our code to work, but luckily, Snap's documentation provided templates to work off of and the Snap staff was able to provide technical assistance to guide us in the right direction. Additionally, given one Spectacle to work with, parallelizing our development work was quite challenging as we had to integrate everything onto one computer while dealing with merge conflicts between our code.

## Accomplishments that we're proud of

In a short span of time, we were able to successfully build a game that provides a unique immersive experience! We've come across and solved errors that didn't have solutions on the internet. For a couple of members of our team, this sparks a newfound interest in the AR space.

## What we learned

This was our first time working with Lens Studio and it's unanimously been a smooth and great software to work with.
For the experienced members on our team, it's been a rewarding experience to make an AR application using JS/TS instead of C# which is the standard language used in Unity.

## What's next for SnapChest

We're excited to push this app forward by adding more locations for treasures, implementing a point system, and also a voice agent integration that provides feedback based on where you're going so you won't get bored on your journey!
If Spectacles would be made available to the general public, a multiplayer functionality would definitely gain a lot of traction and we're looking forward to the future!