One of the most difficult parts of being a good yoga teacher is planning out effective yoga sequences that take into account the transitions between poses. Teachers also require deep understanding of the body, anatomy, and flow of positions when creating the sequences. An experienced registered yoga teacher, Yvonne proposed an app that plans out yoga sequences to her Hackathon team, the Lovelace Ladies. We are all passionate about mental health and wellness, and together we built Sundial.

What it does

Sundial is a web app for yoga enthusiasts that allows practitioners (teachers and students) to algorithmically generate yoga sequences at the touch of a button. Users can generate and save these sequences to use for both teaching and personal, at-home use.

How we built it

This app is built on a Python, Flask, CockroachDB back-end and JavaScript, JSX, HTML, CSS, React, Bootstrap front-end. We implemented the use of Markov chains because we had to consider the fact that not every pose can precede or follow the next, based on the position of the body from the previous pose. We also had to take into consideration that only a select few poses are appropriate for ending a sequence.

Challenges we ran into

Eager for a challenge, we chose to build the front end of our app using the React framework, despite Rachel being the only member of the team with React production experience. On top of that, since this was the first time we all used CockroachDB, we ran into issues seeding the initial database. After debugging one line at a time, we were thankfully able to successfully bring CockroachDB into the foundation of our app. Lastly, using a virtual environment between four members on opposite sides of the country was a challenge in itself that constantly tested our ability to effectively create our app from the start.

Accomplishments that we're proud of

We built a custom yoga sequence generator by inputting real yoga sequences as data, using Yvonne's knowledge of the practice. Using this seed data, we populated a dictionary of Markov chains to create an algorithm that will procedurally generate new yoga sequences.

What we learned

This was the first time any of us has participated in a Hackathon! We learned that being ambitious with our MVP can lead to some incredible learning experiences and unexpected challenges. However, seeing a project built from scratch in such a short time frame was deeply rewarding! We learned how important understanding our data model is, as it allows the whole team to be in agreement about how to build features that layer on top of each other.

What's next for Sundial

  • Additional poses in our yoga API and more base sequences to make the algorithmically generated sequences more diverse
  • More options for generating sequences (length, difficulty, targeted muscle focus filtering for poses)
  • Connecting Spotify API to link music to playlists
  • Allowing the user to favorite or dislike a pose

Built With

Share this project: