Sign in

Anton Sviridov

@indoorvivants.com
93 followers 64 following 66 posts

I keep a detailed account of my various projects over at blog.indoorvivants.com and specifically the summary page: blog.indoorvivants.com/projects

PostsRepliesMedia
Anton Sviridov @indoorvivants.com · 02/06/2026
I have forked and published sbt-revolver with experimental Scala Native support – running long-lived Scala Native processes in the background directly from your sbt build. Things like HTTP servers and UI (e.g. gtk) apps seem to work. Also ported sbt 2 support from upstream.
110
Anton Sviridov @indoorvivants.com · 01/06/2026
Recording of my talk from Scalar is up. In the talk, I invite you to a gentle waltz with a 50-year-old sabre-tooth behemoth called C and why Scala should care about learning to communicate with it.
100
Anton Sviridov @indoorvivants.com · 31/05/2026
I was able to browse the catalogue without signing up or anything: www.libraryofthings.co.uk/catalogue/br... And can indeed see a thermal camera available near me, which I didn't know about. This will make things interesting.
120
Anton Sviridov @indoorvivants.com · 31/05/2026
looks right now
110
Anton Sviridov @indoorvivants.com · 30/05/2026
FWIW I get that in Safari, Chrome, and Firefox :)
100
Anton Sviridov @indoorvivants.com · 30/05/2026
Highlighting is wonky, seems like it's not my browser
100
Anton Sviridov @indoorvivants.com · 05/05/2026
I usually find overbaking more problematic for slow tasks. In Scala Native, I experimented with a custom merkle tree hashing of the config to provide detailed feedback about why exactly overbaking occurs: github.com/scala-native... Wonder if something like this (but more generic) can be in sbt 2?
211
Anton Sviridov @indoorvivants.com · 21/04/2026
Felt cute, thought I'd do some compile time numbers
000
Anton Sviridov @indoorvivants.com · 20/04/2026
Thought I'd see how sharp the bleeding edge is and converted my Scala Native CLI tool build from scala-cli to sbt2. And it works! Machine-wide caching works too, great for Github Actions
SBT 2 build for Sniper CLI using Scala NativeRelease on Github made by sbt 2 with various CLI assets for different platforms
110
Anton Sviridov @indoorvivants.com · 24/03/2026
Finally got around to do a tool I desperately need – Scala Native-specific interactive binary size explorer. $ sn-sizer serve test-binary Starting server on localhost:52616
100
Anton Sviridov @indoorvivants.com · 26/11/2025
Scala Days talks are live! I can finally refer to my hot takes by timestamps www.youtube.com/watch?v=qkUV...
041
Anton Sviridov @indoorvivants.com · 14/11/2025
I'm a big fan of Decline, but I still think that leaving macro-derived CLIs off the table is incorrect – you can get quite far with enums, case classes, and annotations in small to medium apps. In my projects I use both the raw Decline API and my own derivation mechanism for it.
110
Anton Sviridov @indoorvivants.com · 14/10/2025
New post! Self-contained multi-stage Dockerfiles are rad Post: blog.indoorvivants.com/2025-10-14-s... Repo: github.com/indoorvivant... I use this old approach a lot in my apps (fullstack mostly) and I'm confident it's good enough for most people.
An image of a self-contained multi-stage dockerfile deploying a simple Scala backend service using Scala CLI
110
Anton Sviridov @indoorvivants.com · 22/09/2025
To celebrate the release of Cats Effect for Native 0.5, I rebuilt my web interface for sn-bindgen in Smithy4s and Http4s. Now on Native 0.5, and actually working! Blog post: blog.indoorvivants.com/2025-09-22-s... App: sn-bindgen-web.indoorvivants.com Repo: github.com/indoorvivant...
020
Anton Sviridov @indoorvivants.com · 27/05/2025
Got invited to Imperial College of London to do some livecoding for students, this time making a simple Electron app with Scala.js searching Scala libraries. github.com/keynmol/scal...
131
Anton Sviridov @indoorvivants.com · 11/05/2025
For something more relatable, here's a Scaladex MCP server: github.com/keynmol/scal.... Note that the model did not get any project descriptions and decided to just wing it.
100
Anton Sviridov @indoorvivants.com · 11/05/2025
I've been playing around with MCP to understand the hype, and wrote a small library (codegen, really): github.com/indoorvivant... This image itself was generated by my CLI (Scala Native btw!) tools, into which I added a mcp subcommand.
100
Anton Sviridov @indoorvivants.com · 14/03/2025
With AST seemingly explorer not maintained, I decided to try and implement it in Scala.js. Lots of fun, until I hit several recursion bugs in my interval tree implementation, and it was hell from that point onwards. This will soon be hosted under Scalameta org and website.
0123
Anton Sviridov @indoorvivants.com · 01/03/2025
Released scala-uri 4.2.0, now with Scala Native 0.5 support: github.com/indoorvivant... The native part currently depends on libidn2, but I'm working on a pure Scala Punycode implementation, to remove dependency on scalajs-dom (and browser) in Scala.js as well.
020
Anton Sviridov @indoorvivants.com · 16/02/2025
Calling Scala Native from Java using Foreign Function & Memory API blog.indoorvivants.com/2025-02-16-s... Code: - example with Scala CLI: github.com/keynmol/scal... - self-contained SBT template: github.com/keynmol/scal... - sbt-jextract plugin: github.com/indoorvivant... pic.x.com/VaCkgTVEVm
010
Anton Sviridov @indoorvivants.com · 09/02/2025
toml-scala 0.3.0 is out: now with Scala 3 derivation! github.com/indoorvivant...
084
Anton Sviridov @indoorvivants.com · 08/02/2025
New blog post. Let's call Java/Scala JVM from Scala Native using JNI. Because why not. blog.indoorvivants.com/2025-02-08-j...
243
Anton Sviridov @indoorvivants.com · 17/12/2024
Don't just take my word for it – I added a HLJS comparison mode
000
Anton Sviridov @indoorvivants.com · 17/12/2024
Last night I added a bunch of improvements to my Tree Sitter powered Scala syntax highlighter. Themes, facelift, latest tree-sitter-scala (now with named tuples support!), and a bunch of build niceties. keynmol.github.io/scala-treesi... I plan to write a blogpost about how all of this works.
220
Anton Sviridov @indoorvivants.com · 01/12/2024
Here's an interactive cue4s demo running in the browser, using xterm.js and Scala.js! Have a go: keynmol.github.io/cue4s-xterm-... See how it's built: github.com/keynmol/cue4...
Demonstration of cue4s - cross-platform Scala 3 library for CLI prompts that works on JS, Native, and the JVM. This demonstration is performed by running the Scala.js version of the library in terminals emulated by Xterm.js
020
Anton Sviridov @indoorvivants.com · 01/12/2024
Cue4s 0.0.3 is out, and with this version I was able to port dexsearch to it, removing the javascript prompts dependency entirely! cue4s: github.com/neandertech/... dexsearch: github.com/neandertech/...
050
Anton Sviridov @indoorvivants.com · 14/11/2024
Quickest I ever deployed anything probably Mimalyzer: check if a change triggers a MiMa problem Try it: mimalyzer.fly.dev Code: github.com/keynmol/mima... Template: github.com/indoorvivant... It's built in like 40 minutes, so it will constantly crash, bye :P
030