frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
6•sandGorgon•2d ago•2 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
247•isitcontent•17h ago•27 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
349•vecti•19h ago•157 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
315•eljojo•20h ago•194 comments

Show HN: MCP App to play backgammon with your LLM

https://github.com/sam-mfb/backgammon-mcp
2•sam256•1h ago•1 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
77•phreda4•16h ago•14 comments

Show HN: Smooth CLI – Token-efficient browser for AI agents

https://docs.smooth.sh/cli/overview
93•antves•1d ago•70 comments

Show HN: I'm 75, building an OSS Virtual Protest Protocol for digital activism

https://github.com/voice-of-japan/Virtual-Protest-Protocol/blob/main/README.md
5•sakanakana00•2h ago•1 comments

Show HN: I built Divvy to split restaurant bills from a photo

https://divvyai.app/
3•pieterdy•2h ago•0 comments

Show HN: ARM64 Android Dev Kit

https://github.com/denuoweb/ARM64-ADK
17•denuoweb•2d ago•2 comments

Show HN: BioTradingArena – Benchmark for LLMs to predict biotech stock movements

https://www.biotradingarena.com/hn
26•dchu17•21h ago•12 comments

Show HN: Slack CLI for Agents

https://github.com/stablyai/agent-slack
49•nwparker•1d ago•11 comments

Show HN: Artifact Keeper – Open-Source Artifactory/Nexus Alternative in Rust

https://github.com/artifact-keeper
152•bsgeraci•1d ago•64 comments

Show HN: I Hacked My Family's Meal Planning with an App

https://mealjar.app
2•melvinzammit•4h ago•0 comments

Show HN: I built a free UCP checker – see if AI agents can find your store

https://ucphub.ai/ucp-store-check/
2•vladeta•5h ago•2 comments

Show HN: Gigacode – Use OpenCode's UI with Claude Code/Codex/Amp

https://github.com/rivet-dev/sandbox-agent/tree/main/gigacode
19•NathanFlurry•1d ago•9 comments

Show HN: Compile-Time Vibe Coding

https://github.com/Michael-JB/vibecode
10•michaelchicory•6h ago•1 comments

Show HN: Slop News – HN front page now, but it's all slop

https://dosaygo-studio.github.io/hn-front-page-2035/slop-news
15•keepamovin•7h ago•5 comments

Show HN: Daily-updated database of malicious browser extensions

https://github.com/toborrm9/malicious_extension_sentry
14•toborrm9•22h ago•7 comments

Show HN: Micropolis/SimCity Clone in Emacs Lisp

https://github.com/vkazanov/elcity
172•vkazanov•2d ago•49 comments

Show HN: Horizons – OSS agent execution engine

https://github.com/synth-laboratories/Horizons
23•JoshPurtell•1d ago•5 comments

Show HN: Falcon's Eye (isometric NetHack) running in the browser via WebAssembly

https://rahuljaguste.github.io/Nethack_Falcons_Eye/
5•rahuljaguste•16h ago•1 comments

Show HN: Fitspire – a simple 5-minute workout app for busy people (iOS)

https://apps.apple.com/us/app/fitspire-5-minute-workout/id6758784938
2•devavinoth12•10h ago•0 comments

Show HN: Local task classifier and dispatcher on RTX 3080

https://github.com/resilientworkflowsentinel/resilient-workflow-sentinel
25•Shubham_Amb•1d ago•2 comments

Show HN: I built a RAG engine to search Singaporean laws

https://github.com/adityaprasad-sudo/Explore-Singapore
4•ambitious_potat•11h ago•4 comments

Show HN: Sem – Semantic diffs and patches for Git

https://ataraxy-labs.github.io/sem/
2•rs545837•11h ago•1 comments

Show HN: A password system with no database, no sync, and nothing to breach

https://bastion-enclave.vercel.app
12•KevinChasse•22h ago•16 comments

Show HN: GitClaw – An AI assistant that runs in GitHub Actions

https://github.com/SawyerHood/gitclaw
10•sawyerjhood•23h ago•0 comments

Show HN: FastLog: 1.4 GB/s text file analyzer with AVX2 SIMD

https://github.com/AGDNoob/FastLog
5•AGDNoob•13h ago•1 comments

Show HN: Craftplan – I built my wife a production management tool for her bakery

https://github.com/puemos/craftplan
568•deofoo•5d ago•166 comments
Open in hackernews

Show HN: TUI for managing XDG default applications

https://github.com/mitjafelicijan/xdgctl
138•mitjafelicijan•1w ago
Author here. I made this little TUI program for managing default applications on the Linux desktop.

Maybe some of you will find it useful.

Happy to answer any questions.

Comments

untech•1w ago
Looks neat!
sourcegrift•1w ago
No one on earth has so far managed to get xdg default apps work on Linux. I've been failing since 19 years personally. If you've really succeded then congratulations!
nickjj•1w ago
> No one on earth has so far managed to get xdg default apps work on Linux.

I've only been using Linux for a few weeks but what am I missing here?

I set a bunch of mime types in `~/.config/mimeapps.list` which are assigned to desktop apps and they all open perfectly with `xdg-open` or when I launch them through a file manager.

It is documented in the XDG specification https://specifications.freedesktop.org/mime-apps/latest/file....

forgotpwd16•1w ago
For me currently, when trying to open a `text/markdown` file, there's a disassociation between what my file manager (Caja) runs (own bin/emacs script; was under the impression it was auto-creating a .desktop file), what mimeapps.list have (emacs.desktop), and what `xdg-open` runs (Firefox for some reason).
TingPing•1w ago
Older desktops don’t follow the specs and xdg-open does different things based on the desktop, so they indeed can get out of sync.

I’d have to look into your specific case but `gio mime` and `gio open` do the right things.

sam_lowry_•1w ago
> what am I missing here?

There are gotchas, for instance Chrom,{e,ium} insists on XDG_DESKTOP_DIR != XDG_DOWNLOAD_DIR.

See this bug report from a confused user: https://issues.chromium.org/issues/41076564

mikkupikku•1w ago
> also of note, we (mostly) don't allow ~/Desktop as the download dir for security reasons

This isn't an XDG issue. It's a chromium engineers being silly pricks that think they know better than the power users who obviously went out of their way to create such a configuration. Also I bet it would work if you set your XDG_DESKTOP_DIR to ~/Download/

flexagoon•1w ago
This is XDG base directories, not XDG default applications. They're two different freedesktop specifications.
mitjafelicijan•1w ago
I probably haven't. :) They are a nightmare indeed. But it does help a little.
saturn_vk•1w ago
Great. I must be living on the moon then. I guess gnome work great there since it manages this part
mitjafelicijan•1w ago
Gnome has done an amazing job at this, I agree. You don't even notice this issue.
t-3•1w ago
It's when I want to use a non-systemd, no-DE environment that xdg-stuff becomes very annoying, but that's usually because applications assume a certain setup rather than any fault of xdg. eg. Wayland is very stupid about requiring a certain xdg setup to run at all.
jwrallie•1w ago
Just by reading the title, I’m sold! This should be very useful specially if you are not using a desktop environment that manages the default apps.

I always alias open to xdg-open, it’s so useful to open a file directly from the terminal.

mitjafelicijan•1w ago
That was the exact reason for it. I made my own window manager for fun and was missing a simple way of changing default apps.
roman_soldier•1w ago
Nice, but problem with all these AI coded TUI's is we will have hundreds of them, best to stick to the built in linux commands, add aliases/abbreviations (fish) if required, do you need a TUI for everything? Sometimes the answer to "Should I write this?" Is no
mitjafelicijan•1w ago
I do agree with some of your sentiment. But by that logic, nothing would ever be made.

The same goes with aliases. Why not just use the actual commands. You give it your best shot, and sometimes something good comes out. And sometimes it's crap. That's life.

And I made it for fun and to learn something. And it wasn't AI coded. It's like 200 lines. I wanted to learn termbox2.h a bit more than I already had.

brw•1w ago
Yea I was pleasantly surprised by how simple the code is when I read it. Honestly a great example of what termbox2 is capable of. Very nice!

And now I know about termbox2, which looks very cool. Looking through the example projects[1] in the README I also found ictree[2], which does exactly what I was looking for yesterday (turning the output of `find` into an ncdu-like/interactive tree interface). I didn't manage to find something for that through googling around or asking LLMs, but thanks to you posting this here I did, so thanks!

[1] https://github.com/termbox/termbox2#examples

[2] https://github.com/NikitaIvanovV/ictree

mitjafelicijan•1w ago
This whole tool is much more a display of what termbox2 can do in couple of lines tbh :) You are so right about that.

It's an amazing library. And all that juice in one stb-style header file. You just gotta love it.

And if you are interested in such small libraries, I have a Github list with a bunch of them that I found.

https://github.com/stars/mitjafelicijan/lists/stb-style-mini...

wolttam•1w ago
Let people make and use what they want, you don’t have to use it.
samtrack2019•1w ago
reading the code, what make you think it was vibe coded?
jrm4•1w ago
I absolutely fail to see the problem and I think the whole "best to stick to built in linux commands" is an utterly dinosaur-esque take that can, and will, and should, go extinct in the age of AI-assisted coding.
mitjafelicijan•1w ago
It is interesting that somehow every conversation now pivots to LLM's. It's almost like people are paranoid or something. I have no issue with AI. But it should be used carefully when learning/working so you don't miss the little details that usually make a big difference later. But to each their own.

It is just getting tiring that people assume more and more that things were written with AI for everything. It's like, OMG, can you stop it for a second. And who cares, really. Do your due diligence, check the code and decide for yourself. But maybe, this is just projection. Or a nice way of insulting/dismissing people, which I find quite funny.

And like you said, the age of AI-assisted coding is already here. There is beauty in piping core utils together and being really productive with them. No doubt about it. But there are also new ways of computing emerging, and we should learn about that too.

mikkupikku•1w ago
The nice thing about AI coded TUIs is they're so easy to make you can make the ones that suit you yourself and ignore the rest.
ranger_danger•1w ago
Feature suggestion: The ability to add/remove more specific mime entries such as video/mp4
mitjafelicijan•1w ago
I haven't thought about this. That makes sense. I will add this.
fouc•1w ago
At first I thought it was going to be some kind of solution to force all linux apps to adhere to the XDG Base Directory Specification, until I realized this related to a different specification altogether (XDG MIME Applications specification).
jedahan•1w ago
Making home read-only can get there, and I can't find the project that forced using XDG paths. I think it used LD_PRELOAD or somesuch trick.

edit: https://soc.me/standards/defending-home

ekipan•1w ago
Strange. Middle-clicking the link opens a HackerNews frontpage, but copypasting into a new tab shows the article. Presumably the server shoos away referer links? To reduce load maybe somehow? Or maybe something's weird in my own configuration idk.
mitjafelicijan•1w ago
I had the same issue as you. Had to copy and paste the link.
IAmLiterallyAB•1w ago
They explicitly check if the referrer is hackernews and do that.
piskov•1w ago
Thank god it’s not another React, Solid, Typescript, what have you, web abomination inside the terminal (claude code, opencode, I’m looking at you).

Bravo!

thehamkercat•1w ago
That's where codex-cli shines (rust)

the startup time is crazy, you can start writing as soon as you hit the command

(I don't use codex, just noticed that it's crazy fast)

DrammBA•1w ago
Sadly the fast startup time is overshadowed by the slow response time of the codex agent
piskov•1w ago
I don't get it. Even in ChatGPT I always use Pro model with maxed-out thinking budget (selectors available only on web and windows).

Let them cook as much as they can.

forgotpwd16•1w ago
Looks like there're two main approaches to AI-first development: (i) favor slow responses to produce an upfront high-quality result, (ii) favor quick responses to enable faster response-test-query iteration. And, based on comments read here, seems Codex isn't too fit for the later. Optimally a developer should be able switch between the two approaches depending on problem at hand.
codethief•1w ago
> claude code, opencode, I’m looking at you

Could you elaborate? I mean, I get the usual criticism of web/Electron-based desktop applications (slow, includes a whole Chrome engine, non-native UI, …) but Claude Code isn't one of them?

piskov•1w ago
Search for twitter drama where Anthropic engineer says basically the following [1] and gets shamed by what AAA game developers are able to render at the same time.

tldr; the ui you see in the terminal is react-based in claude code. As for opencode just see their repo on github.

[1] https://news.ycombinator.com/item?id=46706040

renewiltord•1w ago
These days I pretty much write this kind of software in ratatui with LLM when I need it. But the idea is nice. I like that. LLMs are the return of the value of the ideas guy!

But this seems human-written? Then it is interesting. Thank you for sharing.

mitjafelicijan•1w ago
Yeah, I did write it myself, yes. It's actually a very simple program.

I heard so many great things about ratatui. I am, however, not well versed in Rust. Only did a couple of toy little things in it.

coppsilgold•1w ago
I usually just edit ~/.config/mimeapps.list directly.

I can see how that tool can be useful, but only if it's included in official repos. Editing mimeapps.list is simpler than the hassle of downloading and building this tool.

undume•1w ago
There are also replacements for xdg-open with more sane (in my opinion) configuration, like jaro: https://github.com/isamert/jaro