Ongoing project of course. I’m fighting hard to keep it simple with only HTML and CSS. Lets see how long that lasts.
I needed a way to track nutrition data in Exist so I coded this little tool up that allows you to manually submit nutrition data for a given day. Ideally it would integrate with something like MyFitnessPal or Google Fit, but the former closed their API and the latter’s API only throws 500s, so that was that.
The project is currently not online, but I may get that working still on a DO box sometime.
Elixir because it’s a pretty awesome language and this project was a nice excuse to use it. Didn’t use Phoenix as it felt overkill this particular project.
Did all the back-end code while a friend worked on all the front-end. Some interesting challenges on this one:
Managing item stock in real time to guarantee three things:
- What is in your cart isn’t purchaseable by someone else who’s quicker than you.
- If a customer becomes idle, they lose the "right" to an item until they get back online.
- No two customers can buy the same item.
- Complex but efficient product filtering and search using PostgreSQL only. The former required some fancy JOIN-fu to get done right, and the latter was helped tremendously by PostgreSQL’s own fulltext search capabilities which are very decent.
- Editable translations for all product fields (descriptions, titles, etc.). Again, saved by PostgreSQL’s great JSON support.
If you go around to the shop make sure to buy something! Awesome ladies running the show 🙌.