frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

Show HN: A Tiling Window Manager for Windows, Written in Janet

https://agent-kilo.github.io/jwno/
125•agentkilo•3h ago
Hi HN!

I read[1] about Janet[2] some time ago, then immediately got impressed by the enthusiasm of its community, and by the language itself, so I started playing with it.

At the time I was searching for a tiling window manager for Windows, and unavoidably the idea of scratching my own itch with Janet got hold of me, so Jwno was born.

Simply put, Jwno is a keyboard-driven tiling window manager for Windows, scriptable with Janet. But since it has a complete Lisp runtime, and a thin wrapper library for Win32 APIs[3], you can certainly do much more with it.

I hope you'll enjoy playing with it as much as I enjoyed building it.

And yes, I use StumpWM on the Linux side, by the way.

[1]: https://ianthehenry.com/posts/why-janet/

[2]: https://janet-lang.org/

[3]: https://github.com/agent-kilo/jw32

Comments

pjerem•3h ago
Oh ! That looks cool :)
agentkilo•3h ago
Thanks :)
piskov•3h ago
Just in case someone new is looking, komorebi is great:

https://github.com/LGUG2Z/komorebi

agentkilo•3h ago
Definitely! I got great inspirations from both of the Komorebi and GlazeWM communities. People who like tidy desktops are definitely nice people :)
bsnnkv•3h ago
komorebi dev here - Jwno is awesome and I highly recommend people give it a try (especially people who enjoy writing Lisp!)

The Windows tiling window manager development scene is a very kind, relaxed and collaborative space where we all take inspiration from and support each other

bsnnkv•3h ago
Jwno is great, agentkilo is kind, Lisp is magic :)
agentkilo•3h ago
Thanks for the kind words! It means a lot coming from you :)
pbohun•3h ago
This is so cool! It's funny because open source devs are making Windows better while MS is actively making it worse. If MS removed all telemetry and AI (and restored win10 functions in context menus), I would probably move back to it.

I've recently started playing around with Janet, and it's a great language. I think it's inspired by Clojure and Lua, and somehow manages to be better than both (in my opinion).

agentkilo•2h ago
> I think it's inspired by Clojure and Lua, and somehow manages to be better than both

This is exactly how I feel about Janet too. I don't think I have enough experience on Clojure or Lua to comment on them, but I got attracted to Janet almost immediately.

Working on Jwno also confirms my first impression on Janet: It's really a practical language. The tooling has some room for improvement, but the language itself can get things done - usually fast and easily.

cfiggers•2h ago
Agreed on the need for better Janet tooling. I'm trying to be the change I wish to see with Janet LSP[0]. Issues and contributions are welcome!

[0] https://GitHub.com/CFiggers/janet-lsp

pbohun•1h ago
This is how I feel about Janet too, absolutely practical. So far it's been a breeze to write the little experiments I've done so far.
sph•37m ago
How’s the REPL/interactive editing story? I feel weird using a Lisp that is not as interactive as Racket, Scheme or Common Lisp. Running scripts from the REPL ain’t the same thing as C-x C-e an expression on a live program
rich_sasha•2h ago
I'm curious, did you find there were things that were easier to do because it's Janet/lisp-like language? Or you just fancied like using it (perfectly valid reason of course!).

I tried various lisp dialects, but I could never find the killer feature vs other languages I already use. And I can justify why I use these specific languages I do use, if that makes sense.

agentkilo•2h ago
I find the REPL and interactive development workflow invaluable. A window manager is a long-running background service by nature, and has a lot of accumulated runtime states. The ability to peek inside and debug while the process keeps running helped me a lot when building Jwno.

I think Jwno's REPL module is so important, I specifically changed Jwno's architecture at one point to make it work.

iLemming•14m ago
> I could never find the killer feature vs other languages I already use.

You're kidding or trolling? Structural editing and the REPL are the greatest features of Lisp. The ability to just grab any expression and move it around simplifies so many things when coding and refactoring. With the connected REPL you can eval anything on the spot, that turns the entire experience of coding into a video game — you don't need to wait for linter, linker, compiler — you just run things. You often don't even have to save anything. I suspect when you "tried various lisp dialects" maybe you didn't use structural editing and the connected REPL?

90s_dev•2h ago
> You can implement custom commands and hooks to trigger. It's even possible to call native Win32 APIs in your own implementations. For example, to always move a Notepad window to the (100, 100) coordinates on your screen(s), using the low-level SetWindowPos function

Great job. Looks really interesting and useful. And a fun excuse to write Lisp.

I really appreciate it when APIs give you high-level functionality but keep the door open to lower-level APIs when you really need them.

packetlost•2h ago
This might be the coolest project I've seen using Janet yet!
pona-a•2h ago
What kinds of automation are possible with having a scripting language inside your WM, rather than Sway-style IPC? I heard the new Windows WMs were where most pure workflow advances happen, so I wonder if they can be replicated on Linux.
roxolotl•2h ago
Tangential but I’ve been writing a lot of Janet recently using Joy[0], web framework, to build a small web app. Would love to hear what you learned about Janet from doing this work and how you feel about the language afterwards.

The one thing I’ve noticed is that it seems like Janet had a burst of interest 2020-2022 but it has since slowed down. Would love to see it become popular again. The main reason I’m using it is because I like how it’s both powerful and lightweight. I’d use clojure but I don’t want Java. I’m tempted to also try Common Lisp but so far Janet has been great.

[0]: https://github.com/joy-framework/joy

agentkilo•2h ago
I think Janet is quite...liberal? It's a practical language, but doesn't force a specific paradigm on you. There're "escape hatches" in different levels of the language, and I like that.

Maybe the most "opinionated" things in Janet are the ev stuff and fibers. I think they're done right though, you just need to be careful with the event loop when embedding Janet.

nicce•1h ago
How it compares with Lua?
77pt77•1h ago
This one actually has real arrays (mutable and immutable)
ang_cire•2h ago
Custom windows shells (I know this is just a window manager, but still) in the year of our lord 2025? This takes me back to the days of installing bb4win and litestep in XP. I'm a kid again!
insin•1h ago
TIL bbLean [1] still works in Windows 11! Currently digging through my archives for my old BB4Win styles repository

[1] https://bb4win.sourceforge.net/bblean/

aus10d•1h ago
Janet looks really neat. And this project seems really cool. Windows DESPERATELY needs a more powerful built-in manager. It's ridiculous to use the mouse all the time.
Rasthor•59m ago
One of the later PowerToys updates makes the first few steps in the right direction with "fancy zones". It's not strictly native windows, but still developed by Microsoft and adds keyboard shortcuts for all its utilities
MisterKent•1h ago
How does it compare to komorebi? I've been using it for about 5 months with great success. I'm a Hyprland user when I'm on my personal machine, but for windows Komorebi has let me keep my muscle memory and workflow largely intact.
agentkilo•40m ago
I think these are the most obvious differences between the two:

* By default, Komorebi uses dynamic tiling, while Jwno uses manual tiling.

* Komorebi has workspaces, Jwno works with Windows native virtual desktops instead.

* Komorebi uses IPC and native system command line to send commands, while Jwno usually operates all by itself.

There are definitely other details that are important to you, but these are the things that immediately came to my mind. I don't run Hyprland so can't really comment on that.

iLemming•24m ago
Whoa, very cool. I love WMs, I love Lisp, and I hate Windows. This seems to be a perfect "medicine" for my frustration with it.

Show HN: We made an AI QA tester that uses VLMs to test your front-end

https://www.fracten.com/
1•andersonbcdefg•25s ago•0 comments

Google reveals $250 per month 'AI Ultra' plan

https://www.theverge.com/news/670495/google-ai-ultra-plan-pricing-launch-io-2025
1•tosh•41s ago•0 comments

Performance measurements and the people who love them

https://blog.cloudflare.com/loving-performance-measurements/
1•emot•49s ago•0 comments

Honda commits to going out of business by pulling back on EVs as sales rise

https://electrek.co/2025/05/20/honda-commits-to-going-out-of-business-by-pulling-back-on-evs-as-sales-rise/
1•toomuchtodo•2m ago•1 comments

Flow TV – Channels

https://labs.google/flow/tv/channels
1•xnx•3m ago•0 comments

Brave Launches On-Chain Naming Service, Unlocking .brave for over 85M Users

https://brave.com/blog/brave-tld/
1•LorenDB•5m ago•0 comments

Gerra – Enterprise Mecha on Demand

https://www.gerra.com/
1•sberens•5m ago•0 comments

Show HN: I made a Bolt.new sidebar extension that saves tokens

https://chromewebstore.google.com/detail/lightning-bolt-fix/okniiejblehkfmihmpaegdpfepibodhc
1•ChrisCodes-Bolt•5m ago•0 comments

Gamers Nexus to open an investigation into Nvidia's shady business tactics

https://www.youtube.com/channel/UChIs72whgZI9w6d6FhwGGHA/community?lb=UgkxRu3y8tmPdsRBVuru4Fe-ExTFS0GD0I1m
2•orphea•6m ago•0 comments

Vlastimil Hort, a Memorably Selfless Chess Grandmaster, Dies at 81

https://www.nytimes.com/2025/05/20/sports/vlastimil-hort-dead.html
2•furcyd•8m ago•1 comments

Nvidia Powers Largest Quantum Research Supercomputer

https://nvidianews.nvidia.com/news/nvidia-powers-worlds-largest-quantum-research-supercomputer
2•donutloop•9m ago•0 comments

More than 1,500 AI projects are now vulnerable to a silent exploit

https://twitter.com/arimlabs/status/1924836858602684585
1•mykytamudryi•10m ago•0 comments

Finding hard 24 puzzles with planner programming

https://buttondown.com/hillelwayne/archive/finding-hard-24-puzzles-with-planner-programming/
1•todsacerdoti•11m ago•0 comments

On-device small language models with multimodality, RAG, and Function Calling

https://developers.googleblog.com/en/google-ai-edge-small-language-models-multimodality-rag-function-calling/
2•cuuupid•12m ago•0 comments

Google Flow TV

https://labs.google/flow/tv/channel/window-seat/ZThsRiDpcUmx4rM4oZwb?random=true
1•sberens•13m ago•0 comments

Why does Lindy Hop have 6 AND 8 count patterns? (2014)

https://web.archive.org/web/20240425120643/https://thehomeofhappyfeet.com/8-count-dance-6-count-rhythms/
1•Tomte•13m ago•0 comments

Show HN: Porting Mutable Instruments to Arduino, RP2040

https://github.com/poetaster/arduinoMI
1•poetaster•13m ago•0 comments

Cursor intentionally slowing non-fast requests?

https://old.reddit.com/r/cursor/comments/1kqj7n3/cursor_intentionally_slowing_nonfast_requests/
1•rdrd•14m ago•1 comments

Why do Windows functions all begin with a MOV EDI, EDI instruction? (2011)

https://devblogs.microsoft.com/oldnewthing/20110921-00/?p=9583
2•Tomte•14m ago•0 comments

US to limit Covid boosters to over-65s or those at high risk

https://www.yahoo.com/news/us-limit-covid-boosters-over-170829818.html
4•sundaeofshock•14m ago•0 comments

Ask HN: Zed Instead of Cursor?

1•travisgriggs•16m ago•0 comments

Please, stop asking us to open source our products

https://candid.dev/blog/please-stop-asking
2•candiddevmike•21m ago•2 comments

The NSA Selector

https://github.com/wenzellabs/the_NSA_selector
2•anigbrowl•22m ago•0 comments

Gemma 3n

https://deepmind.google/models/gemma/gemma-3n/
9•Philpax•24m ago•0 comments

Starina Microkernel OS

https://starina.dev
3•apitman•24m ago•0 comments

Amazon's drones deliver items in 60 minutes or less

https://www.aboutamazon.com/news/transportation/amazon-drone-deliver-package
1•thm•25m ago•0 comments

Fast, Simple and Open Firebase Alternative: TrailBase

https://github.com/trailbaseio/trailbase/releases/tag/v0.12.0
1•trailbase-alt•25m ago•0 comments

Why Walmart decided to say it would raise prices – and risk Trump's fury

https://www.cnbc.com/2025/05/20/walmart-price-increases-trump-tariffs.html
2•rntn•25m ago•1 comments

Tofu Pages: Dynamic custom landing pages off your existing website

https://chromewebstore.google.com/detail/tofu-pages-infinite-landi/onckekmldkdfnmkckejeifmcnfbkdmbd
2•ejcho623•26m ago•0 comments

The Last RAG: A Disruptive Architecture for Memory-Augmented Al

https://archive.org/details/the-last-rag
3•IamLumae•27m ago•1 comments