this post was submitted on 08 Mar 2026
14 points (88.9% liked)

Show & Tell

597 readers
1 users here now

Show & Tell

A community for developers to share personal projects of any size or polish. Anything software/firmware/hardware.. ALL THE WARES!! Side projects, experiments, learning builds, half-finished ideas — all welcome.

Explain what you built, why you built it, and what you learned. Give feedback if you can. Ask for feedback if you want.

Rules

  1. Personal projects only (no company or paid product marketing)
  2. Include context: what it is, what tech you used, what you learned
  3. Be constructive and respectful
  4. No spam or referral farming
  5. Feedback is encouraged, not mandatory
  6. Mark NSFW content clearly
  7. If you see a project you like and you think is cool consider giving it a star!
AI Rules

Guys it's 2026, if you're not using AI at this point you're falling behind. That being said this community is not for showing off AI prompts that you put into gh Copilot or Claude or whatever, all that's showing the world is "hey I know how to make something up and explain it in 20 words while having the expectations of a team who gives a shit! Woow look at me!!".

So do your best to disclose where/how/why you used AI in your code, and if you suspect a project is entirely AI generated slop,, don't engage, don't bully, just let them eat their foot ¯\_(ツ)_/¯.

Icon and Banner were generated using ChatGPT, they're placeholders as of 1/20/26, will replace them with real art soon! https://chatgpt.com/share/696fa8bc-f3e0-8012-b6d7-350a8b53a0e1

founded 2 months ago
MODERATORS
 

I cannot ever be sure about this but this might have come to me in a dream. I just thought about why it's so hard to implement a web-server in bash, basically all the functionality of the webserver must be implemented in bash but the http handling can be compiled.

This program lets you declare endpoints and map them to shell commands, query args get passed as ENV vars, methods are enforced, body is passed in stdin and the response is the stdout.

I also learned I really like declaring flake.nix files for all my personal projects, I hope it helps you install what I create!

top 11 comments
sorted by: hot top controversial new old
[–] CameronDev@programming.dev 12 points 2 weeks ago* (last edited 2 weeks ago)

Unauthenticated RCE <3

[–] rimu@piefed.social 8 points 2 weeks ago
[–] sip@programming.dev 8 points 2 weeks ago (1 children)
[–] purplemonkeymad@programming.dev 2 points 2 weeks ago

Yea have you not be able to do this with Apache etc forever? You can even define the endpoint with a very unix like every endpoint is a file.

On fact was there not even a vulnerability that was caused by the fact the CGI can run bash?

[–] flying_sheep@lemmy.ml 5 points 2 weeks ago
[–] catnip@lemmy.zip 5 points 2 weeks ago

Im using this in prod to host our banking frontend! It works great so far :)

[–] brian@programming.dev 3 points 2 weeks ago

for the common use cases, I imagine you're better off using https://github.com/adnanh/webhook instead. handles security etc. don't think it lets you return responses but at that point you probably want a proper server framework

[–] brian@programming.dev 1 points 2 weeks ago

for the common use cases, I imagine you're better off using https://github.com/adnanh/webhook instead. handles security etc. don't think it lets you return responses but at that point you probably want a proper server framework

[–] brian@programming.dev 1 points 2 weeks ago

for the common use cases, I imagine you're better off using https://github.com/adnanh/webhook instead. handles security etc. don't think it lets you return responses but at that point you probably want a proper server framework

[–] tocano@piefed.social 0 points 2 weeks ago (1 children)

What about request/response headers?

[–] danhab99@programming.dev 2 points 2 weeks ago

Out of scope