Readit News logoReadit News
Posted by u/joshspankit 2 years ago
Ask HN: What's the stack for your "home-cooked meal" apps?
Inspired by the insightful conversations at https://news.ycombinator.com/item?id=38877423 , I noticed that people don’t usually share the code for their “home-cooked meal” apps (for lots of good reasons) but I think we can just as much value by sharing the stack so that others can “cook their own meals”.

I’ll go first:

I have a personal photo/video app that uses B2 for storage and Vultr to host a VM (free egresss). It’s main goal is to keep archival copies that can be viewed, verified, and shared and so the server code is very lightweight: user permissions, API endpoints for thumbnails (eg /pictures/utgGhj/400x400/image.jpg), add/edit/delete endpoints, and a notification system.

The app is distributed by manually installing it (future plans to distribute via TestFlight and whatever the Android equivalent is).

The app itself is very simple: Flutter, login screen, list views that can be sorted (default to newest), and a screen for viewing an item. Share links and comments are stored in Firebase (mostly for the offline sync convenience).

Someone could probably make it in a couple weeks if they have a little backend+mobile experience.

What apps do you “cook at home”?

nicbou · 2 years ago
I love that philosophy. I read Robin's article a while ago and it really stuck.

My stack gets smaller every year. I love Django + Postgres, but a Python script + SQLite is often better. I just have less time for maintenance and I like things that just work with minimal dependencies.

In the front-end I love VueJS. I'm still at Vue 2 mostly because I have lots of projects to upgrade and don't see any reason to do so.

Everything is dockerised because I love reproducible builds.

Recently, I've started using Caddy instead of Nginx. I don't have to fuss with SSL anymore and I love it. The config syntax is saner, but I still struggle to configure it. At least with Nginx I have a lot of recipes from old projects.

My home-cooked apps are...

- My movie server, dubbed "Nickflix" by friends. I've dramatically simplified the code last week.

- My GPS logging server for the Owntracks app, also getting simplified today.

- My timeline thing, which shows my photos, GPS tracks, diary and other things on a timeline.

- My online recipes, which are just markdown compiled by the static site generator I created for my business.

https://nicolasbouliane.com/projects

akkartik · 2 years ago
Lua and LÖVE.

Talk about some of my apps in isolation: https://akkartik.name/freewheeling

Demo showing me combining my apps in workflows: https://archive.org/details/akkartik-freewheeling-2023-07-06

Now I've also been getting into mobile development: https://akkartik.itch.io/carousel

subtra3t · 2 years ago
Do you use zerobrane or carousel to write your apps? Why?
akkartik · 2 years ago
I tend to prefer editors to IDEs. Lua is a simple enough language and my codebases have been small enough that my usual Vim sufficed at the start for apps like http://akkartik.name/lines.html back in May 2022. Over time I figured out how to do live editing, and lately I build my apps 95% in https://git.sr.ht/~akkartik/driver.love. I find it to be quite a nice experience, particularly with 2 monitors. I open the app I'm working on in one monitor while running driver.love full screen in the other to make changes to it.

Carousel is for a whole new use case: building simple scripts right on my phone or tablet. Nothing else can do that as simply, I think. It's cross-platform but that's an experimental property I'm hoping to carry forward to other apps. The use case here is purely for mobile devices.

JohnFen · 2 years ago
About 1/3 of the applications I use regularly are ones I've written myself, from the trivial to one that are very large and complex.

My favorite one, though, was a simple alarm clock app I wrote (back when I used alarm clocks). It had the one thing I wanted from alarm clocks that nobody provided: every time you hit the snooze button, it snoozes for half the time you got the last time you hit the snooze. When the snooze period drops below 1 minute, the snooze button stopped working entirely.

qup · 2 years ago
What does it do when it quits working?

Some snoozers I know would just consider that a victory and get back to sleep

Deleted Comment

talldatethrow · 2 years ago
The snooze key/process quits working, and it just keeps beeping until you complete the turning the app off process.. probably. (Not OP)
Krastan · 2 years ago
I would assume it keeps ringing. You could potentially have it increase in volume or require gps movement to turn off.
subtra3t · 2 years ago
Is it on the play store?
tejaskumar_ · 2 years ago
I love this question. Like @kassner said (https://news.ycombinator.com/item?id=38880809), I also don't have a stack but typically stick to what excites me.

Right now, I'm really into:

- Frontend: Astro/SolidJS

- Database + API + Monitoring + Auth: Keel (https://keel.so)

- Desktop/Mobile wrapping: Tauri (https://tauri.app)

I know building native apps with web technologies is a bit lame since it's a glorified web view on native devices and thus is somewhat limited, but as a web developer this allows me to play in those worlds a bit more.

I've tried to learn Swift/Kotlin but haven't been able to get as far as I have with JavaScript yet.

paeselhz · 2 years ago
Recently I've felt overwhelmed by the amount of ads in a simple solitaire game (from many distributors). So I've spent some time learning Unity and built my own Solitaire Game to play during my commute, with no required internet connection, and no loading screen, just like the old days of Solitaire in Windows 98. I'm still pending on adding some features to make the game more complete, but it has been a joyride to learn a new stack while building something completely personal.

Other than that I've built some tools just for the sake of exploring some hypothesis that I had, but all of those always felt like work. The game development was something that truly felt like "cooking at home".

BlackjackCF · 2 years ago
It’s really cool that you’re doing this for yourself… but reading this also makes me kinda sad that solitaire gets flooded with ads.
rodlette · 2 years ago
I find F-Droid is a good source for ad-free apps:

Solitaire: https://search.f-droid.org/?q=Solitaire&lang=en

paeselhz · 2 years ago
Hahaha, exactly! A simple game that has been around for centuries, and now even Microsoft riddled it with ads and (no idea how or why) paid features. Looks like they took a page from EAs book...
nickisnoble · 2 years ago
Rails, render, sqlite3.

Hotwire really is incredible (coming from someone who's primarily a JS dev in the past) and makes common things way easier.

The more I write ruby, it really feels like home cooking, whereas even the best JS frameworks (sveltekit + bun IMO) felt more like ...home maintenance? Plumbing?

coldtrait · 2 years ago
Any good resources on using hotwire ?
philip1209 · 2 years ago
I have an internal app for my company (https://workshop.contraption.co). It's a Rails app, with basic Devise login. I can add people to the system, and scope which of the systems they have access to.

I put everything that's not business critical in it. Some examples:

* A "Scoreboard" growth chart of my MRR. It syncs with Stripe's API periodically. I add some friends and peers to it so they can see my progress. When I hit pre-programmed MRR milestones, it triggers a celebration announcement.

* An RSS->Sendy tool. My company blog is hosted in Jekyll and has an RSS feed. I send email newsletters for the blog through a Sendy installation. Sendy doesn't have good email templates, so this little system applies a template to RSS feed items and creates a draft in Sendy so I can send it.

* A mini internal CRM / search engine, which an intern was helping me manage for a bit.

* Some cron jobs that send email reminders to me, such as sending electricity bills to my accountant for a home office reimbursement.

I highly recommend companies have a full-featured "toy" app separate from customer data. Customer apps have a lot of red tape to protect data and uptime. But, we underestimate how long it takes to set up an environment or pick a stack when we have ideas - even for things like "cron job that sends emails" - so a small app stack helps encourage creativity and useful little scripts with minimal effort.

fullstick · 2 years ago
HTML, JavaScript, CSS web app hosted on cloudflare.

I built a simple compass web app so I can know which direction I'm driving. I want to access some other sensor APIs to make it more like a compass (you have to be moving for it to work).

https://compass.nad27.nethttps://github.com/radioxeth/compass