Inspiration

When our team was discussing ways in which we can implement a health-related app, we focused on mental health. The pandemic has caused a surge in need for psyche therapy, and now more than ever, we are in need of possessing abilities to take care of our mental health on a daily basis, so came the idea for diarist.

What it does

Diarist is a journaling app that allows one to make an account to then track their journal entries. Each entry contains a section for a title, body, and a question about any current goals. On top of that, diarist asks the user how they were feeling on the day of the entry, and whether or not the user exercised. We believe these daily check-ins will allow a user to understand themselves better, and keep track of how well they are taking care of themselves physically.

How we built it

We broke up into teams for front-end and back-end development. The website front-end UI was designed with HTML5, CSS3, and JavaScript, with some components being make with the Bootstrap framework to allow for responsive and snazzy designs.

To get the website up and running we used Flask with SQL-alchemy for the user and journal databases. To allow for secure sign-ups and logins, we used bcrypt to encrypt user data, and Fernet to create secret key tokens.

Challenges we ran into

We had some conflicts arise from Git and GitHub, and the page layout using CSS and Bootstrap was hard to implement at first. We also found that designing custom components was a difficult and time-consuming task.

Accomplishments that we're proud of

Having a deployed web app built from scratch!

The pages have some nice responsive design.

Data is stored and retrieved from the database.

What we learned

We learned how to use some new frameworks, collaborate with Git, and set up working environments.

What's next for Diarist

The future is boundless for Diarist.

There are some core features missing for a text app like editing, deleting, and formatting.

The journal UI can be further enhanced with API's and more health based tracking metrics.

Accessibility is also something we need to add to the website, especially for screen readers.

Share this project:

Updates