Ask HN: Show us your low-tech/simple stack side projects

50 points by martin_a ↗ HN
Hey HN!

Show us the power of "single PHP file" side projects and other low-tech/"simple stack" stuff that you're working on or like a lot.

Anything goes, doesn't need to earn money, but it should be fairly simple behind the scenes.

42 comments

[ 0.25 ms ] story [ 58.9 ms ] thread
Three-sided cards.

This is a simple installation I have upstairs

HTTPS://GEN5.INFO/$/S1WRY:GO2099AW5ZB/

Those three cards each have a back side with a QR code and metadata that you can see by clicking on the individual cards in that constellation. Next to the constellation there is a QR code printed on a small paper square. As of last night I have printed 198 different cards including fine art, anime fan art, and photos I take myself.

It is "simple" in that no database is involved and the hosting system is just Amazon S3. The images and metadata are packed up by a Python script and the process is highly streamlined, I've gone from snapping the shutter on my Sony α7ii to card with a web presence in 15 minutes of wallclock time. I've discovered the cards as much as I created them and there are numerous details such as positioning the QR code on the back so it doesn't get damaged when you attach the card to the wall, etc.

I run https://extensionpay.com off a single server with a SQLite database. That feels kind of low-tech these days :) But SQLite has a lot going for it in production! https://blog.wesleyac.com/posts/consider-sqlite

The more high-tech part is that it's a SvelteKit app — so it has server-side rendering (for performance/SEO) with client-side hydration and other nice things. In fact, I like this stack so much that I'm going to spin it out into its own starter template so other people don't have to code all the tedious features that most apps have (like user auth, admin dashboards, etc): https://sveltesaas.com

Love ExtensionPay, so easy to use! I spent a while looking for ways to accept payments and most importantly handle subscriptions for Chrome Extensions, and everything felt like too much work. Super glad I came across your product, was very quick to integrate too and easy to check if a subscription is active or not. Been using it for my Carden extension, sadly no sales just yet :P
Thanks for the love! Glad you found it useful.

One of the things I enjoy about ExtensionPay is that it really de-risks monetizing extensions — even for my own extensions! I can just throw ExtPay in and see if it makes any sales without spending weeks on the infrastructure.

Thanks for subscribing should be shifted in Colour
Ah thanks for telling me about that! Looks like in dark mode it wasn't quite working correctly.
I have never even considered using SQLite as a production database. This is cool!
Yeah, it's awesome. Saved me setup time, db server money, and maintenance and haven't run into any issues with it. And if I want to test something locally with production data I just download the db file to my machine :)

I was partially convinced after reading this tweet: https://twitter.com/levelsio/status/1381709793769979906

And further convinced when I read about LiteStream and how you can get continuous backups with it: https://litestream.io/getting-started/ Seemed like continuous backup was one of the major missing pieces from SQLite.

And further further convinced when I read about someone using LiteStream: https://mtlynch.io/litestream/

Most of my projects are fairly simple stack (either plain Javascript or with jQuery, using Firebase as a DB if necessary), but I tend to build relatively complex WebApps with it (e.g. a collaborative map editor, audio editor, motion graphics editor, animated mockup maker...).

The simplest product I've ever built in terms of code (fewest lines of code, no dependencies besides jQuery) is Omni, which is an extension that adds an omnisearch to your browser to manage tabs, bookmarks, history, perform multiple actions, add shortcuts, commands...

It's basically just an array of available actions with a simple UI to search through them and select them. I love it because it's incredibly simple to add new actions, I've also open sourced it so anyone can easily contribute: https://github.com/alyssaxuu/omni

I still don't know if it's going to do well or not, I am going to publicly launch it tomorrow, hopefully people find it useful despite its simplicity :P

Just launched a newsletter (remote jobs that hires in the italian timezone) with 2 html pages and an external tool with a generous free tier. https://fullremote.it I already reached 350 subscribers

I have many btw. Most of them are jekyll websites with content and banners, not worth sharing :D

https://spendi.li ("spend them", translated) is a private ecommerce referral links randomizer I use with some friends. It's a PHP app made of 3/4 files (routing, security, etc...) with a configuration array of people participating and their referral links. Some day I'll make it public

DotNet

MVC + EF

Right click - deploy - enter pwd of the server = done

Includes database migrations out of the box.

https://lipcolourmatch.com - a niche search engine built with a simple Flask app + SQLite (yes, I do still suck at frontend development, but it has a niche userbase that finds it moderately useful)
Do not sell yourself short; there is nothing wrong with that front end. WAY better than I could do.

I am curious, how do you/did you get it in front of your customers? I havean idea for an ultra niche site, in DIY space, but have no clue how to market it.

Thanks for sharing ...

https://onlineornot.com is "just" a Next.js app with a database that calls a lambda function over a million times a week (website/API monitoring).

There's also a slightly more complicated part that runs a Chrome browser to check React/JS SPAs.

Where did you get inspiration for your landing page? I have seen a ton of apps that look similar to this.
It's Tailwind UI, a paid package for Tailwind CSS.
How is your hosting structured to ensure you don’t have downtime?
The web app itself is completely isolated from the Lambda function doing the work, so that part can have downtime while the service keeps checking and sending alerts.

On top of that, there's a bit of replication across regions (and soon across cloud vendors), so if an entire AWS region goes down (happened twice last month), the checks keep on checking.

How do you generate your documentation? Looks good!
Thanks! That's Docusaurus v2
I’ve been building a passwordless auth service and the stack is just Javascript and Vuejs running on Cloudflare workers using their Kv store as DB.
I built https://bongo.to in order to more easily share music links with my friends. You can input a Spotify, Apple Music, or YouTube link to share, and Bongo will create a landing page which links to all three.

The codebase is very simple, just an Express server with a couple of endpoints, and serving some static HTML/JS files. I resisted the temptation to reach for a framework to keep things as simple as possible and get the MVP built quickly.

I recently added a Discord bot without needing much extra code. I've been working on an iOS version which can be launched from the share menu in apps, which is mostly a web view along with the native sharing extension code.

It's been refreshing to build an application which is so simple! I'm around 500-700 MAUs currently, and working on some features to take usage to the next level. I hope this can be my full-time job someday :)

Not really a single PHP file, but multiple PHP files: https://uxwizz.com

It's a self-hosted analytics platform, I chose to use MySQL and PHP to make it really easy to install and maintain (most hosting providers offer a default LAMP stack).

It does earn me some money (varies between $500 and $2k per month) and could probably earn a lot more, but I hate marketing as I have the "will market it when all the features are implemented and all the bugs are fixed!" syndrome.

Hm... i try to use "chat" on your site and got "Something went wrong, please try again or email..."
Hey, thanks for the heads-up, I will check it out.

It's actually a simple form, not a live chat. Maybe the service that I am using to deliver emails is down.

You can send an email directly at support@uxwizz.com with your questions or ask here on HN.

I just tried it and it worked for me, so it will be hard to debug. What browser are you using?
These aren't my projects, but inspiration I've found around the web and started keeping track of recently. https://indielurker.com/#8dff6575218049a78b6b86e977c8d66b

Some of my favorites:

- Nomad List started as a Google Sheet.

- Product Hunt began as a simple list emailed out to people.

- Levels.fyi was powered by a Google Sheet until 2021.

- Crave Cookies was making $200k/mon according to their interview using a SQlite DB which started as a JSON file.

- Headlime started as a JSON file sitting on his frontend with no DB - then sold for $60k a week later

Tools I personally am exploring:

- DB: Google Sheets - either through API (numerous services like sheet.best for this or self-hosted)

- DB: Airtable - it provides API out of the box and has forms and whatnot too, keeps things real quick to start

- Whole Shebang: have only built toy examples, but Glideapps and Softr seem like handy options to spin an idea up really quickly and not getting distracted by tech rabbit holes

I made a simple arcade word game at the start of lockdown with JavaScript and minimal dependencies:

https://seanwilson.itch.io/wordoid

It felt relaxing working on something self-contained without the distraction complex frameworks.

I made https://nowhiteboard.org with a google sheets back-end.

I use an open-source project someone made that lets you export a google sheet as a JSON object. Website is hosted using vercel and front-end was made using react, but recently transitioned to nextjs. And then I have a DigitalOcean VPS run a python script to grab any new jobs every 3 hours and upload it to the google sheet. Pretty simple set-up, and only costs $10/month for the VPS. Everything else is free!

I'm repackaging forecasted load and generation data for the Texas grid to allow people to charge electric cars at a time that renewable (well wind generation) megawatts dominate the on the grid. It seems so weird that my car is so weather dependent... but, the planets align for this here in Texas. http://evdead.com
My art newsletter is very dumb:

https://randomdailyart.com

The website is a static site made with go hugo.

The art is just data in a flat yml file that I manually update every week.

A zapier zap tells netlify to update the site, daily, from the github repo.

An email service sends the emails automatically by dynamically pulling the data in from the static json endpoint.

Love the quotes from Van Gough, et al. Did you have to solicit them to get them to comment? /s
I made Radio-Canada Lite - https://rc-lite.xyz - a static, text-only and low bandwidth version of Radio-Canada's news website (the news articles are in French and targeting Quebecers and French Canadians)

It’s built with Eleventy (https://11ty.dev), and fetches the news articles every 30 minutes from Radio-Canada’s public API.

There’s no ads, no trackers, no pictures. Simple HTML with CSS and a little bit of Javascript.