Zero information available on mobile.
I thought it is some kind of portfolio site that does not work on mobile.
I think it's the combination of 1) really quick to get going, 2) isolated and disposable environments and 3) can be persistent and out there on the Internet.
Often to get element 3, persistent and public, I had to jump through hoops in a cloud console and/or mess with my 'main' resources (install things or do other sysadmin work on a laptop or server, etc.), resources I use for other stuff and would prefer not to clutter up with every experiment I attempt.
Here I can make a thing and if I'm done, I'm done, nothing else impacted, or if it's useful it can stick around and become shared or public. Some other environments also have 'quick to start, isolated, and disposable' down, but are ephemeral only, limited, or don't have great publishing or sharing, and this avoids that trough too. And VMs go well with building general-purpose software you could fling onto any machine, not tied to a proprietary thing.
This is good stuff. I hope they get a sustainable paid thing going. I'd sign up.
Also, though I realize in a sense it'd be competition to a business I just said I like: some parts of the design could work elsewhere too. You could have an open-source "click here to start a thing! and click here to archive it." layer above a VM, machine, or whatever sort of cloud account; could be a lot of fun. (I imagine someone will think "have you looked at X?" here, and yes, chime in, interested in all sorts of potential values of X.)
— $20/month
— 25 VMs
— 2 CPUs
— 8GB RAM
— 25GB disk
— 100GB bandwidth
Is this 2 CPUs/8GB RAM per VM (in other words, 50 CPUs/200GB RAM)? If so, this is an unbelievable bargain (too good to be true?); other cloud providers charge hundreds of dollars per month for an equivalent VM.
If, OTOH, it's 2 CPUs/8GB total, Hetzner offers an equivalent VM for about $5/month (with much more disk and bandwidth), and I'm not sure what the exe.dev value proposition is. (I'm also not sure why one would want to split 25 VMs across so few shared CPUs/such little memory.)
Also, stop charging for SSO/OAuth2 integration. Seriously. There's a huge list of services that stupidly charge for SSO/OAuth integration at https://sso.tax, and this list needs to get smaller, not grow. SSO doesn't cost anything to implement. Especially if I'm the one hosting it on my own infrastructure.
Edit: it comes out of the box with screenshot capabilities. The defaults on this are very well considered. Im impressed within the first 15 min. Edit2: this is very neat. I will be recommending it to my non-coder friends who don’t really have the local setup to use Claude but would like to try a Claude-like tool.
Trying my way around it now. Not sure what is going on:
me: apt install apache
the shell: exe.dev repl: command not found: "apt"
What is "exe.dev repl"? Am I not in a shell? me: bash
the shell: exe.dev repl: command not found: "bash"
Damn, it seems the "shell" is not a Linux shell?SSH is really the only protocol you can do shenanigans like that over, it's a shame not to use them.
[1] (seems overloaded right now) https://words.filippo.io/whoami-updated/
I'm not using it yet, but the way that it handles sharing looks incredibly sweet: an excellent way to take "home-cooked software and bare-foot developers" "perfect software: an audience of one" from one to a few / many people. Just sharing links that people can easily sign into, without having to build a whole auth system seems ridiculously easy here, and that is super cool. You don't have to think about it, you can just build your app: this fills a huge gap that makes making connected online software so much easier. https://outofdesk.netlify.app/blog/perfect-software https://news.ycombinator.com/item?id=46334206 https://exe.dev/docs/sharing
I used the included Shelley agent, which has a perfectly adequate simple web ui, to do all development. It was able to debug a bunch of pretty gnarly problems, using screenshots & scrolling down to get check it's work.
My output is a super simple site, very close to vibe coded, in ~90 minutes, but I quite enjoyed setting up a little guestbook project here: https://nan-falcon.exe.xyz/
- Email delay to Gmail inboxes for verifying an SSH key used via SSH via email is longer than the timeout of the "Waiting for verification email..." stage in the SSH key registration. Wait longer or provide a non-email way to authorize a new key. You could imagine a few ways to do this: Allow users to add/delete SSH keys from the website or exe.dev shell; create a bearer token/random string that I can generate from the exe.dev shell or website to associate a new SSH key; SSH key signatures (existing key signs new key); SSH CAs (like @cert-authority); etc.
- SSH U2F/FIDO2 authentication support has become mainstream, and offers you a way to have homogeneous auth across web and SSH interfaces. Maybe consider unifying authN this way?
- exe.dev ssh interface does not allow me to list SSH keys, only to delete them. Consider moving all authN/authZ functionality into an "auth" subcommand/submenu (like you have for "share") and support SSH pubkey CRUD in there.
- You make some strong assumptions about email addresses that aren't true -- what happens on email address changes, lost email access, etc. This will become more important when you start billing (and possibly costly).
- How do I manage persistent disks? Any way to attach them to a different VM after I'm done with them on the original one? Is there always a single PD per VM or can these be managed separately? What about data or database volumes? Can PDs be attached to one or multiple VMs at a time?
At what scale do you break even on fixed costs (wages, rents, etc.)?I'm very much into the product itself, but that would get extremely tiresome if I was trying to use it consistently. I assume I have to be using it wrong in some way for there to be that much friction...
The downsides:
- usage-based pricing would be nice, $20/month is pretty steep to start, but also no room to scale up?
- 100GB/month is only 300k views for a small-ish page or API, 10k req/day is a tiny amount of traffic. Can't make anything public with that. Even the smallest servers at Hetzner have unlimited bandwidth
Small nit: I think you should make it more clear in the docs (if not in the landing page) that one can just use any key with the ssh command the very first time and it automatically gets registered. Also on the web UI one should have the ability to add the ssh keys. I logged into the web UI first, and was a bit confused.
I think the pricing is alright for the resource and remote development features, though might be a bit much if someone doesn't need higher level of resources for deploying something that's mostly already developed.
Anyway, this reminds me of a product called Okteto that had similar UX. They were focused on leveraging k8s for declarative deployment. But for some reason they suspended their managed cloud/SaaS offering for individual/non-enterprise clients, I wonder if it was because they couldn't make the pricing work. Hope that doesn't happen here.
Lost me at "verify email" though. Why get so creative, yet limit yourself to archaic "email". Why do *YOU* the provider need me to have an email or a phone?
Look, mullvad can provide vpn services without email or all that nonsense. If you want people who will use ssh to order things, these are the same people that would get your service because you're not asking for dumb things like email. It's the first thing you ask of potential users, and it's an obstacle preventing them from giving you their money!
You can issue users a recovery/access key and/or let them user their ssh public key and trust they know how to manage that on their own. If you have messages for them, display that when they login. This sort of stuff differentiates your service, ssh does too, but it's cosmetic and gimmicky. I would prefer a rest-api over ssh anyways, but ssh is cool too.
I guess its an innovation at the resource management layer where you create / manage VMs. It's interesting they choose to give away individual plans. That's very generous. Though I'd feel bad using any of their resources.
> exe.dev is a subscription service that gives you virtual machines, with persistent disks, quickly and without fuss. These machines are immediately accessible over HTTPS, with sensible and secure defaults. You can share your web server as easily as you can share a Google Doc. With built-in optional authentication, so you can focus on your thing.
> Your VMs share CPU/RAM. Create as many VMs as you like with the resources you have.
Source: https://exe.dev/docs/what-is-exe
s/cloud computing should like/cloud computing should be like/
i cannot find a way in the docs to start new VMs with a bootstrap script that starts a bunch of services for me and runs a specific docker image
my use-case is that I want a full developer environment for every branch of my project, so i can vibe code on many VMs at a time
EDIT: Just realised there's an image one can pass to the new command. Still it's not clear to me whether private images would be supported and what registry this is using:
exe.dev ▶ help new
Command: new
Create a new VM
Options: --command container command: auto, none, or a custom command --env environment variable in KEY=VALUE format (can be specified multiple times) --image container image --json output in JSON format --name VM name (auto-generated if not specified) --no-email do not send email notification --prompt initial prompt to send to Shelley after VM creation (requires exeuntu image)
Though not a fan of 100GB and egress charges. Is there a way to hardcap that?
I guess I could implement something VM side but that’s a bit convoluted
> ssh exe.dev
Please complete registration by running: ssh exe.dev Connection to exe.dev closed.
Anyone get a similar issue?
Enjoy my creation https://love-storm.exe.xyz:8001
> Private by default, share with discord-style links exe.dev takes care of TLS and auth for you. By default only you can reach your HTTP services, and you have easy mechanims to share them with friends and colleagues.
Is anyone with access to a link able to get in?
also it's a bad ui meme
I'd love an easy way to connect to and run an existing GitHub/GitLab repo in a VM and spin it up, and iterate on that and be able to open PRs etc from there.
``` ssh exe.dev Please complete registration by running: ssh exe.dev Connection to exe.dev closed. ```
1. the home page should have a link to all docs
2. about page docs link should be a link to all docs, not a link to itself
some feedback:
No matter what i do, i can't ssh into VM that i created Local terminal; always timeout built in terminal; SSH handshake failed: ssh: handshake failed: EOF
shelley agent seems to be install, but it always shows isn't running.
Sort of a container which "feels like" a VM? Reminds me of Virtuozzo / OpenVZ VM approach which was popular ~20 years ago when RAM was expensive...
Did have an issue with auto-generated server name being taken (and similar names being taken). So there could be even less friction on that aspect. But I like the idea of not talking/listing features or showing diagrams, just give me access.
I mean I do need to know pricing, usage limits, uptime etc. But just let me easily find that after giving access.
like you give 2 cpu. 8gb memory for 20vms. Which I believe you wont be able to use 20 of them at the same time if they share 2 cpu only
On a side note, a lot of people in this thread are doing a sort of "I don't get it, your website sucks" but it's like, come on dude! Just read the site! It takes less time to read the pricing, docs, and FAQ than it does to post about how you don't get it.
I mean it and I wish the best of luck for the project
That being said, I tried to look at it for asap golang project deployments and I am the creator of https://spocklet-pomodo.hf.space/ a single main.go + single dep multiplayer pomodoro (please note that it was one shotted out of curiosity and also frustration as https://cuckoo.team would sometimes glitch for me)
That being said, I face the issue where I can't have a go.mod or run go mod tidy because I face this error
exedev@crimson-cobra:~$ go mod tidy go: finding module for package github.com/gorilla/websocket go: pomodo imports
github.com/gorilla/websocket: module github.com/gorilla/websocket: Get "https://proxy.golang.org/github.com/gorilla/websocket/@v/lis...": dial tcp: lookup proxy.golang.org on 1.1.1.1:53: read udp 10.42.0.45:33739->1.1.1.1:53: i/o timeout
Hope that the project fixes this and wishing best of luck to the project. I am a little busy right now with studies but your idea truly inspired me and perhaps I want to create a similar thing or collaborate on it with you too so I will join discord hopefully sooner than later.
I am looking further into it and seeing if I can fix that error as I would love to host some exe.dev's services and wishing the best of luck for the project and hope that it becomes sustainable enough.
Out of curiosity, if I may ask, what is the tech stack behind this which generates the vm's. Is it libvirt or firecracker perhaps?
For my own use cases, I recently rediscovered incus and even ran it on cachyos on my desktop to try it out and there were some hiccups partially because I was running it on non standard debian/ubuntu but I am overall very pleasant with incus but still, I am interested in what tech stack you used so please discuss!!
Also what cloud provider are you using. Pro tip but if you are looking for something cheap, either go with ovh or upcloud.
I really really love hetzner a lot too. (Hey hetzner_OL if you are reading this, love hetzner, have a nice day and hope your christmas was good:)
But still hetzner is a little admittedly more strict than ovh but maybe hetzner can respond to it as I know that their policy can ban accounts if someone abuses and considering that you provide compute (to even free) chances of abuse can rise but overall hetzner's the cheapest so I hope hetzner team might make an special exception/response to your post/my comment.
I am imagining a github private action which ssh's into this and then updates and runs a simple shell script which can be a reinstall state every time someone updates something in git to get git-ops style workflow. If someone implements it for exe.dev, just credit me :) (if you so wish) ` An amazing product overall. 7/10 due to that one hiccup which saddened me a bit (but which I have faith can be fixed) but its a 9-10/10 potential and that means a lot and a 7/10 at launch is pretty good
Please just tell me every decision/question I had in depth since I love details about projects like these ^^
Another minor suggestion I can have is having asciinema gif too to showcase what it does for some people. To me I only understood to run the command ssh exe.dev which then helped me learn but the only way I understood what exe.dev does beforehand was reading the comments on HN
An asciinema can go a long way in this journey, perhaps, let me know your thoughts.
And have a nice day! One thing I am wondering tho is if you are gonna open source the project, one project which feels similar to your project which is open source is this https://github.com/ekzhang/ssh-hypervisor that runs on top of firecracker