Inspiration

JavaScript can be a frustrating experience, so we wanted to make something that made the experience more zen.

What it does

Haiku.js provides the user with a stress-free JavaScript experience by converting JavaScript code into executable JavaScript code (but in haiku format).

How we built it

We built the back end using Python and Flask to build our web application. For the front end, we used HTML, CSS (SCSS), and JavaScript.

Challenges we ran into

One of our biggest challenges was actually getting started. It took us awhile to decide on an idea that our entire team wanted to work on. However, after getting started, we realized that there wasn't much documentation online for generating (or detecting) haikus from Javascript code, so one of our biggest challenges was creating that algorithm from the ground up. On the front end, our main challenge was fine-tuning the Web Speech API to work exactly as we wanted, and creating a great UI that isn't too over-the-top or overwhelming for the user. This would defeat the entire point of our project, so we carefully considered the effect of each addition to the interface.

Accomplishments that we're proud of

Overall, we are extremely proud of the look and feel of Haiku.js. What started as a simple de-stressing idea eventually evolved into a beautiful UI, with additional features of a built-in editor, falling cherry blossoms, calming lo-fi music, a soothing voice reading out the haiku code, and a wise man guiding you along. We feel like these features create the perfect mood that we want users to experience while programming. We are also proud of the algorithm to generate the haikus, which we thought would be simple at first but turned out to be much more complicated and interesting.

What we learned

In developing the back end, we discovered how to use NLTK to count the syllables of most words. We also learned how to scrape webpages (GitHub) to get the information we need and convert it into a useable format. On the front end, we learned how to use the Web Speech API and adjust the voice to mimic human inflections. We also learned how to connect the back end and the front end so that the experience is seamless.

What's next for Haiku.js

As software developers in today's society, we are all at risk of feeling burnt out and overwhelmed. Our algorithm of converting words to syllables can be adapted to many programming languages. Each language can have its own unique user experience. After all, we all deserve to experience zen.

Share this project:

Updates