Inspiration
We were inspired by looking around at other meal websites and looking at what they had to offer and we saw a lack of sites that ordered solely by nutritional information. So we figured we would create it.
What it does
This website allows users to upload there own meals, adding the nutritional values (fat, sugar, salt, calories) aswell as a picture of the meal with a title. Then on the homepage the user can see all the recipes from other users (and there own) they can filter the results by the nutritional information too. They can also click to view the meal if they like how it looks.
How I built it
We built it using FastAPI for the backend, and vue/jinja for the frontend. There was only 2 of us, so i (cswil) wrote the backend, and my teammate (c3a) wrote the frontend.
Challenges I ran into
Seen as though there was only 2 of us it was difficult to distribute the workload to manageable sizes. Which lead to some things missing from the final product. Combining vue and jinja certainly had its problems as some endpoints had to be written to fit vue and some to fit jinja.
Accomplishments that I'm proud of
I am relatively new to FastAPI as i was just a flask developer for about a year, but i moved to FastAPI but im happy with how well the backend of this turned out. Neither of us are particularly good at frontend dev, so im proud of how the frontend turned out.
What I learned
I learnt a lot about FastAPI as-well as how to integrate it with vue and jinja as-well as about sqlalchemy and its ORM manager.
What's next for CalSearch
- Allow people to add recipes
- Search the products in the recipe and find cheapest deals
- Move from sqlite to postgres
- Clean the frontend up
Built With
- css3
- fastapi
- javascript
- jinja
- sqlalchemy
- sqlite
- vue
Log in or sign up for Devpost to join the conversation.