Linux boxes via SSH: suspended when disconected

(shellbox.dev)

232 points | by messh 16 hours ago

26 comments

  • Egor3f 16 hours ago
    $36/mo for 2/4/50 VPS without public IP... Ok, I get the idea that the service is for non-regular use, but I think even $0.005 per hour ($3.6/mo) of suspended state is too expensive. The same config in Hetzner is just $4.09/mo for 24/7 working VPS with public IPv4 address
    • messh 16 hours ago
      Hi, That is a good point actually. The suspended price has to be significantly lower than the alternative. I'll revise it.

      Still, there is the advantage of simplicity not having to deal with the web console etc. Some people may enjoy this

      • eptcyka 15 hours ago
        Have fun racing to the bottom. If I can get an unsuspended VM at 5$ a month, the suspendable one has to be significantly faster or significantly cheaper. Then again, take my gnawing with a boulder of salt for I will not be a customer. I have my own server that is running 24/7 already.
        • saghm 13 hours ago
          Yeah, I don't really see the suspension as something worth paying more for; the only potential "feature" I can imagine is it being significantly cheaper, which seems tough given how cheap a VPS already is.
          • Nora23 2 hours ago
            Makes sense for dev boxes you spin up weekly but don't actually use 24/7. Like staging environments.
            • account42 56 minutes ago
              Those can just be VMs on a computer you already have. What's the advantage on putting them into a not publicly accessible cloud VM?
          • littlestymaar 12 hours ago
            > which seems tough given how cheap a VPS already is.

            A suspended machine only costs its disk usage to the hoster. You can have 800 of them on a machine with 4TB SSD. You can't say the same for VPS at all.

            • saghm 12 hours ago
              If the pricing for a product like this reflected that, it would certainly be more appealing to me. $5 a month is already so low though that unless I got way better performance for the same price or paid like, $0.50 a month or less for the same performance, it just doesn't seem worth it to me.
              • DrewADesign 2 hours ago
                Yeah, same. If you’re competing on price, you have to have a competitive price. Unless you can come up with some solid real-numbers benefit to the environment or some other really compelling marketing angle, nobody cares if it’s theoretically the lower-cost way of doing things if that doesn’t translate into either a lower bill, or more service for a comparable bill.

                The service seems neat, but the pricing seems more to be a novelty than a real service. Maybe I’m missing something.

            • lacunary 10 hours ago
              it has to cost some amount in reserved capacity too. for every n suspended machines there is some small fraction of a machine's cpu/ram capacity that must be kept in reserve, like in a fractional lending system.
              • fooker 3 hours ago
                You can 'suspend' to SSD/aka hibernate.

                Can be pretty fast.

                • account42 52 minutes ago
                  I think gp means that when a customer wants to connect to the VM there needs to be hardware (CPU and RAM) available to run it. While this can be less than the total number of (suspended) VMs it has to have some buffer of "unused" hardware to account for usage spikes that still needs to be paid for.
      • einsteinx2 15 hours ago
        Yeah this is a cool idea but the pricing is way too high. For anything I would use this for I could just set up any VPS from any provider for cheaper and it’s stateful in the sense that it’s my own VPS and my files/applications/tmux sessions/whatever will be there the next time I SSH in.

        The UX here seems really nice, but after spending a couple minutes setting up the VPS, I essentially get the same UX (aka just ssh in and so stuff).

        I’d potentially be willing to pay some premium over a standard VPS, but certainly not a 10x premium…honestly probably not even 2x.

        • wolvoleo 8 hours ago
          Yeah my vpses cost as much as this one does while suspended. With unlimited data traffic.

          And the big benefit of a remote box is that you can offload long running tasks to it.

        • littlestymaar 12 hours ago
          I think it can be worth it if the suspended cost is much cheaper (like ten times) than an idle VPS, as long as you don't use the machine too often (if the active cost is 10 times more expensive than a VPS, it makes sense as long as you don't use it more than 800h a year).
      • nine_k 15 hours ago
        The interesting part here is that the box is stateful, unlike a Lambda. You return literally to the point where you left off.
      • Gooblebrai 3 hours ago
        What web console?
      • 7bit 4 hours ago
        Why would I need to suspend a machine other than saving cost? Until your rare is SIGNIFICANTLY cheaper, I just go to Hetzner and let it run.
    • nine_k 15 hours ago
      Interesting to compare with Fly's sprites: https://sprites.dev/#billing
      • swores 4 hours ago
        Maybe I'm being dense, but could someone kindly explain to me the "Web App" example on that Sprites page?

        "30 hours of wake time per month (~5 concurrent users avg), averaging 10% of 2 CPUs and 1 GB RAM"

        Does that mean it would sit available but using 0% when there's nobody on the site, and just bill for usage when web traffic is causing the server to do work? So if the web app went a month with no visitors it would cost nothing (except for the file storage fees)?

        • jorams 3 hours ago
          > So if the web app went a month with no visitors it would cost nothing (except for the file storage fees)?

          Yes that's the idea. The public URL for a sprite is served by a (free) load balancer. The sprite is normally suspended, gets resumed when a request comes in, then suspended again. Not sure on the exact timeouts, they probably don't suspend immediately after a response is sent.

          • swores 3 hours ago
            Alright, thanks!
      • messh 15 hours ago
        One difference other than price is that sprites doesn't seem to use ssh
        • nine_k 15 hours ago
          Also, they cost less than a shellbox when unused (idle), and more when used.
          • jorams 5 hours ago
            > and more when used.

            Sprites pricing is based on usage, not reserved capacity, so depending on what you're doing I think it can actually be cheaper than Shellbox. You'll have to stay below 1GB of memory and have the CPU be mostly idle, which I'm not sure common workloads will.

        • blackqueeriroh 15 hours ago
          You can use ssh with a sprite.
    • khaki54 59 minutes ago
      How did you find $4 on Hetzner? I didn't see anything close!
    • LevkaDev 2 hours ago
      I think this is mostly true functionally, but not experientially.

      A VPS gives you persistent state, but it still assumes you’re willing to manage that state. The distinction here seems less about what’s possible and more about who carries the ongoing operational burden: the user or the service.

    • TurdF3rguson 14 hours ago
      I think the comparison has to be with EC2 spot right? It feels like EC2 is the better deal, but maybe more of a pain to deal with their UI.
      • kelnos 14 hours ago
        Sort of, but maybe not quite? When you spin up an EC2 spot instance, it's a fresh instance with whatever AMI you load into it, and it's a fresh boot at that time. (You can save persistent data to an EBS volume that you create once up front and then attach to each new instance, of course.)

        With this service, it seems like the VM underpinning your session is suspended (like as if you were to suspend-to-RAM or hibernate your laptop), and then resumed the next time you sign in, so not only is the filesystem in the same state as it was during your last session, but any background processes that have spun up since then are resumed as well, and are still running.

        • electroly 13 hours ago
          EC2 instances can hibernate, too. You stop paying for the instance while it's hibernated; you pay the EBS storage cost only.

          https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernat...

        • TurdF3rguson 13 hours ago
          Right you would need it to be on-demand to hibernate like that but even then a medium will beat these prices I believe.
          • arianvanp 12 hours ago
            I think you can technically hibernate the instance when the spot reclaim signal comes in. Then snapshot the instance and then terminate it.

            Can then spawn a new instance from the snapshot and it should unhibernate

            Whether the OS will like that... That's another point. As there will be things that change like smbios etc

            • TurdF3rguson 11 hours ago
              That's a cold boot though and things like tmux sessions will disappear. (I'm assuming that doesn't happen with shellbox)
    • messh 8 hours ago
      Currently the price is in the same ballpark as dev.exe ($20/month no suspendind) ans sprites.dev (higher for suspended butnlowe for running)
    • wolvoleo 8 hours ago
      Also many other services that are way cheaper are also charged per hour.
      • messh 8 hours ago
        But you cannot suspend these vps so easily and fast. Shellbox.dev aims to be frictionless in that regard
        • wolvoleo 6 hours ago
          I understand but they cost about the same running full time as the shellbox costs suspended so there's no need to suspend it.
    • nodesocket 11 hours ago
      Pricing does not make any sense. I can get a AWS EC2 t4g.small (2 vCPUs, 2 GB memory) with a 50 GB EBS SSD (gp3) for a total of $16.26/mo.
  • krick 11 hours ago
    As others pointed out, this isn't a very strong offer, but I'm wondering, if it would be competitive (price/performance wise), does anyone have a use-case for this? I mean, I can name quite a few if it would offer me some hardware that my laptop I'm using to access it just doesn't have, like some A100-level GPUs and stuff, then it would be fantastic: login, do your job, forget about it until the next time you need it. But for anything else it feels like I'd just prefer something more… traditional? Like, DigitalOcean droplet, AWS instance, Linode VPS, you get the idea. At least a managed Docker container. Even if it's technically more expensive and less performant, we are talking like $5/mo, and you can pretty much always easily scale-up or buy additional storage volume, all these things. And it's all yours, for pretty much all practical intents and purposes.

    Does anyone have a legit use-case when it would be actually nicer to use this on-demand type of service? (Once more, unless we are talking some serious on-demand hardware.)

    • LevkaDev 2 hours ago
      A legit use-case is long-lived but infrequently accessed sessions.

      Think debugging, learning environments, or experiments where the hard part is recreating state, not paying for compute. A VPS can do it, but suspend/resume avoids either leaving it running or constantly rebuilding it.

    • ronsor 11 hours ago
      For these kinds of services, I think the main value would be UX improvements, such as offering an environment preconfigured with a certain set of tools (e.g. nmap, tmux, curl, etc.) and other defaults. SSH in, and don't deal with a web panel. They may also be valuable in a learning environment where you don't want student servers running 24/7.

      Other than those points, offering access to more powerful hardware is probably the best use-case.

      • varenc 9 hours ago
        What you've described sounds a bit like the very new https://exe.dev service! Which I discovered on HN just weeks ago.
        • chews 8 hours ago
          I just subscribed to exe.dev and man is it a slick service… Shelly their ai is clever as all get out too
        • er1t0 4 hours ago
          came across it few days back , thier signup has been broken for 2 days smh . wanted to try it out.
  • Imustaskforhelp 15 hours ago
    This is fascinating idea. I created an idea like this on top of firecracker and custom golang ssh client to build something like this for my own personal use case (the abstraction part of pricing and how to connect it seemed the more difficult part for me atleast)

    What stack does this use underneath?

    Good luck with launch, this idea is similar to railway in terms of pricing model. I discussed about it a few comments back and I think its an interesting idea and we are seeing alternatives within such pricing model

    Also are you using some cloud provider itself or building it yourself, I'd be interested in so many details to discover

    Have a nice day and looking forward to ya response! Good luck with your project!

    • messh 15 hours ago
      Hi thanks for the interest!

      This is all written in python and the AsyncSSH package. Firecracker for VMs with memory mapped files for ram. Paddle for billing. Caddy as a reverse proxy for certificates.

      It works on top of very large bare metal instances.

      I'm thinking maybe open sourcing but it will take some more work on the code to make it publishable w/o embarrassing myself :)

      • Imustaskforhelp 14 hours ago
        THanks for your response! as well

        I am interested in which bare metal instances from which provider are you using if I may ask since I had a similar idea (as mentioned before) and I wanted to deploy it on hetzner but I was always worried that hetzner's policy might be too harsh for it even though they are one of the cheapest options out there

        Which server provider did you end up using?

        Thanks once again for your in depth response, these are the things I come to hackernews for! cheers and looking to ya response

        • wolvoleo 8 hours ago
          Hetzner is cheap but they are sticklers for rules. Need photocopy of ID when renting servers etc. I just got elsewhere now
          • Imustaskforhelp 3 hours ago
            Where did you go if I may ask?
            • wolvoleo 1 hour ago
              Scaleway in France. Very happy with them.

              Ps not doing anything illegal but I just don't like having copies of my ID everywhere. Too much data getting leaked these days. With Scaleway you just pay with your card and that's it.

        • messh 14 hours ago
          Hetzner auction servers, not cloud
          • Imustaskforhelp 14 hours ago
            Hm I had thought the same! Interesting thanks for responding once again but what are your thoughts on the fact that someone can abuse the situation and your account might get banned and hetzner has a pretty strict policy in that

            When I wished to create something as such, this was the most major thing I was worried about. I am curious what your thoughts are on it and how are you managing it (the fact that anyone might abuse in your service which could then impact you and hetzner relations and they might block/restrict you)

            I have heard that hetzner requires you to respond in hours or similar. Like I am interested, did you talk to hetzner people (they are usually very kind and I love that about them) or not, because I remember asking some question to that in similar vein but I had gotten the answer that I am still responsible for what happens downstreams and that worried me

          • Trufa 10 hours ago
            How will you handle for example if someone uses this for crypto stuff that's against TOS is hetzner.
      • chwzr 14 hours ago
        Do you do something similar to the modifications codesandbox has done to firecracker, regarding mmap ram? (They have multiple blogposts about it on their blog)

        Would love to chat about details there

        • messh 14 hours ago
          I have read about it, but currently using vanilla Firecracker w/o any memory optimizations. It is as simple as it gets for now
  • zackify 12 hours ago
    There's been so many of these lately.

    I really need to share a blog post on doing this exact thing with a VPS, 2 commands to install and setup lxd.

    And then client side bash function to just make and connect via tmux and delete when you're done.

    Self hosting these services is too easy to do and you can have more control of your data and better specs.

    • w7 8 hours ago
      It's funny to me as well. Being initially inspired by Yelp's dockersh I wrote a functional MVP of the same concept around 2 years ago. It used a custom Go sshd-proxy to spawn kata-container backed pods in kubernetes. I used it personally for a very brief period of time, and found it useful as a small timesaver for testing things. I wasn't comfortable with monetizing it though. After seeing a few of these pop up, I realize maybe I missed my chance to be early.

      As far as self-hosting goes, it looks like there are some FOSS projects now, eg https://containerssh.io/

      • abbbi 3 hours ago
        i looked at containerssh once and it was way to featureful for me. I came up with a simple ssh daemon that basically does spawn arbitary containers on ssh login and destroys on exit: https://github.com/abbbi/sshcont
    • indigodaddy 11 hours ago
      On this same idea, I just started working on shelley-lxc: https://github.com/jgbrwn/shelley-lxc

      Work in progress/alpha, but the core functionality works as a proof of concept. Super exciting working on this kind of stuff.

  • yehat 4 hours ago
    I have issue with that balance cut off at $5. How one spends the entire balance then?
    • steeleduncan 3 hours ago
      It is odd, I would have thought $0 is the more obvious number there. It seems you can refund via a shell command though, so the money is not trapped
  • qudat 12 hours ago
    This is a very cool idea and I like the simplicity of the business model! SSH has a ton of great features and its ergonomics are excellent for terminal enthusiasts. Most of us want to ssh into our cloud compute anyway. As a founder of an ssh platform (https://pico.sh) I just wanted to say welcome and good luck!

    Also If you ever want to chat about ssh feel free to reach out!

  • Liftyee 16 hours ago
    This looks quite similar to exe.dev which was on here a while ago - anyone know how it compares?
    • indigodaddy 16 hours ago
      Pretty sure shellbox.dev has been around for at least 2-3 years though - EDIT nm they have a show HN from two days ago. I must be thinking of a similarly named/sounding service
      • messh 16 hours ago
        Maybe you mean keypub.sh? That is another project of mine with similar graphic design.
        • indigodaddy 11 hours ago
          Actually I was thinking of the Devbox cloud thing, which I think they call Jetify Cloud now
        • indigodaddy 11 hours ago
          Love the site design btw. Super attractive on mobile.
    • messh 16 hours ago
      I think exe.dev is subscription. In Shellbox.dev you have funds and pay very little when not connected
      • indigodaddy 11 hours ago
        Do you do any resource scaling at all? What happens if my workload hammers the VM resources?
  • rolymath 6 hours ago
    I would use this with expensive GPU instances so I don't forget them running. Not so useful for cheap instances.
    • messh 6 hours ago
      Excellent point. This may be better proposition for more expensive instances
  • amelius 3 hours ago
    Unrelated in many ways, but I have the reverse problem:

    When I suspend my Linux machine, my ssh connections are lost.

    Anyone know of a good solution for this?

    PS: Yes, I know about tmux/screen but I'd like a solution that keeps the connection, because I often forget to start a screen session. Also, I'd like my X11 applications to keep working.

    • ratdragon 3 hours ago
      WDYM lost? do you roam? I used to have a job with simple OpenVPN to connect to the servers (via public IP, just routed through the VPN tunnel) and ssh connections stayed during my trip from office to home. Probably needs both sides not to be overly aggressive with keepalives and such. VPN just reconnected at home, but tun0 device and its local ip stayed the same, ssh connections also stayed.

      If you do not roam other side may do TCP keepalives or even ssh protocol keepalives and close the connection for you. Unless you can tune that, not much to do.

      Other solutions might be mosh (mobile shell; haven't tried) or just running screen or tmux on the other end and just resume where you left of after quick reconnect.

    • hopw_roewur_ne 3 hours ago
      Mosh on server and client keeps the SSH connection going during suspension or network drops, etc.

      https://github.com/mobile-shell/mosh

      • amelius 3 hours ago
        Nice! But not a solution since it does not support X11 forwarding.
    • steeleduncan 3 hours ago
      Use tmux. Ssh in and start a tmux session. If the connection breaks you can ssh back in and reconnect to the tmux session later.

      GNU Screen is another alternative

      • amelius 3 hours ago
        Yes, thanks, but it does not work for me since X11 applications lose their connection too.
  • raphinou 5 hours ago
    I could imagine using this to access a beefier machine besides my main work computer. But indeed paying for stopped VM is difficult to sell. There was a suggestion to propose pre installed tools in different images which I find a good idea. Otherwise the workflow all by ssh is cool!
  • gvldev 15 hours ago
    I've been trying to come up with a hypothetical use case for this. I can't use this as a server without keeping an active session right? I wonder if you could get around this by sshing into itself from inside the primary session. Is that an edge case you've considered?
    • messh 15 hours ago
      This is a feature I want to implement: an option to keep boxes running while disconnected. Maybe with something like

      ssh shellbox.dev keepalive box1

      • gvldev 15 hours ago
        Maybe this and other future extended features could be configured via some host-accessible mounted conf.d? Otherwise if I forget to use that command on every login, I might just forget, logout, and go on thinking my server is still running.
    • kelnos 14 hours ago
      For this use case, why wouldn't you just instead run a VPS on AWS or some cheaper platform?
  • WhyNotHugo 14 hours ago
    Cool idea, but where's the "sign up" button?

    Trying to use any of the commands in the home page, I just see "hugo@shellbox.dev: Permission denied (publickey).". Clearly I have to register first, but there's no clue as to how.

    • messh 14 hours ago
      You are missing an ssh key. Run this first:

      ssh-keygen -t ed25519

      • newman314 8 hours ago
        There is no support for ed25519 host keys (confirmed using ssh-audit). Would be nice to have though.

        As an aside, you should use ssh-audit to get recommendations for what to disable as far as less than ideal options/configs go.

  • zinodaur 14 hours ago
    Love this idea! Started building a version of it a while ago, but gave up because my resume time was too slow

    My job has their own DCs, but inexplicably hosts devboxes in EC2 - an autosuspend feature for cost savings sounds awesome.

    Feature request: let me give you a Dropbox folder to persist/load my suspended vms from/to, that way i dont get charged for storage when not using it, and i can walk away whenever i want

    • indigodaddy 11 hours ago
      The Dropbox idea sounds super interesting
  • bks 12 hours ago
    What a brilliant billing and account interaction interface. I legitimately wanted to build something like this for a transactional SMS provider where it would all be provisioned, managed, configured on the CLI. Do you have any tips on how you built this out so elegantly?
    • varenc 9 hours ago
      Would love a SMS provider that was simple to use. Have used twilio in the past and every time I come back it, it feels like they've added yet another layer of abstraction to the process.

      But I suspect that spam and abuse means that becoming an SMS customer is going to have to be complex. Though just the ability to automate SMS msgs to a few pre-defined and verified numbers would be valuable and negate spam risk.

  • theykk 12 hours ago
    I made something similar last week using rust. It uses docker container with bunch of tool pre loaded. if anyone interested source code https://github.com/TheYkk/agentman
  • yjftsjthsd-h 15 hours ago
    > Note: The -O flag is required for OpenSSH 9.0+ to use legacy SCP protocol.

    Why isn't SFTP supported?

    • messh 15 hours ago
      WIP, this is still in MVP phase...
  • vagab0nd 11 hours ago
    I'm curious: what's the use case? Usually when I need a server I need it to stay on and have a public IP.
    • behnamoh 11 hours ago
      I wish runpod.io and others had this feature. I've forgotten to stop my pods a few times and only learnt about it when my balance became $0.
  • littlecranky67 14 hours ago
    Not sure about the security sandbox, but given that paddle.com (your payment provider) takes 5% cut you could consider accepting lightning (bitcoin layer2) payments. QR code generation for lightning invoice is instantaneous just as payment, and will cost less than 0.1% fee (payer pays fee anyway). But the security sandbox should be solid, else it will be used for illegal stuff.
    • znpy 14 hours ago
      > you could consider accepting lightning (bitcoin layer2) payments.

      uh? i lost interest in bitcoin a few years ago, did bitcoin get actually usable for payments ?

      • kelnos 14 hours ago
        Not really. I mean, I guess the lightning stuff makes it settle/confirm faster than doing an on-chain transaction, but bitcoin as a store of value is still essentially gambling. So you'd want to immediately sell it and convert it to USD (or a stable coin, I guess), and presumably you're incurring fees at whatever exchange you're using.

        5% for paddle does sound like it kinda sucks, but I feel like any lower fee you'd end up paying with bitcoin would get eaten up by complexity, annoyance, and currency conversion risk.

        • nh2 11 hours ago
          > 5% for paddle does sound like it kinda sucks

          Don't underestimate the benefit of it doing international VAT collection and payment. Especially for small amounts.

        • littlecranky67 13 hours ago
          lightning also works for USDT, if you prefer that.
  • mnsc 15 hours ago
    Is it non-American all the way down?
    • messh 15 hours ago
      I was born in Argentina, so technically American, yes ;)
      • WhyNotHugo 13 hours ago
        Weird fun fact (as an Argentinian who went to school in England for a few years): in English-speaking countries, America is not a continent in the same way as in Spanish. In English they have two continents: South America and North America.

        So the word "American" in English does not mean the same as "Americano" in Spanish.

        There's really no natural word in English to refer to someone from "El continente Americano", because no such continent exists in English. That's why they use the word "American" to refer to someone from USA exclusively.

        • unwind 4 hours ago
          That sounded fascinating as a rather large difference in world view stemming only from using different languages.

          It turns out that there are various models for the number of continents, and that is (phew) known in Spanish, too. See the Wikipedia page [1] (link to Spanish version) for instance. This is for European Spanish though, but I couldn't find a version of the page in es-AR.

          [1]: https://es.wikipedia.org/wiki/Continente#Modelos_continental...

        • dwedge 4 hours ago
          I think "the Americas" means the continent(s), and America (to some extent) can mean either but it would feel more like something used as a gotcha at a pub quiz.

          You're definitely right about there not being a word for someone from that continent though.

        • singpolyma3 13 hours ago
          "American" to refer to USA exclusively does make sense either way because USA shares the continent with at least two other countries no matter how you slice it.
        • ekropotin 13 hours ago
          Frankly, the model with the single America continent doesn’t make any sense, because south and north Americas are so different in both geographical and cultural/historical sense.
      • messh 15 hours ago
        If it is successful then the next region would be in the US
  • orliesaurus 12 hours ago
    is there a typo in the title? disconnected takes 2 n (sorry for the nitpick)
  • gildenFish 13 hours ago
    Looks cool. You probably need a fyi or faq indicating that how the account system works.
  • gigatexal 13 hours ago
    ALS no mention of GB’s of bandwidth provided.
    • indigodaddy 11 hours ago
      If it's hetzner then it's probably not something you have to worry about unless you are talking like terabytes per day
  • solumunus 14 hours ago
    But why? Genuinely want to know what one might use this for. I can imagine it would be cool for a remote dev environment but the selling point would have to be that it’s far cheaper than the alternative.
    • messh 14 hours ago
      Simpler, easy to use, more enjoyable and fun are also valid reasons
      • Kwpolska 14 hours ago
        What’s difficult to use in Hetzner or DigitalOcean?
        • dwedge 4 hours ago
          Apart from the payment part, this could be used entirely from a machine without a GUI. You can do the same with others using Terraform or aws-cli but it requires setup first.
        • hrimfaxi 12 hours ago
          One thing can be simpler than another without either of them being difficult.
  • knorker 7 hours ago
    What are the legalities of having a cash balance, withdrawable? (So not "credits" or something)

    Do you need a banking license, or partner with someone who has?

  • SuperNinKenDo 10 hours ago
    Cool idea if you have a more specific niche requirement than it would initially appear, but genuinely nice to know this is available if such a use-case happens to cross my path.
  • andrewmcwatters 10 hours ago
    [dead]