Congrats on your game it reminds me both of SimCity on the SNES and SimCity 2000 (pc).
I'm also using a cursed stack (deno + pyodide) and it's awesome! Everything works surprisingly well and I can do my Python experiments in a notebook while hot reloading via vite in a browser + quickly try things in the dev console.
No, it's just a calculator app. So I guess it's not that crazy of a way to use those together but it sure seemed like it would be before I started tried it.
It's kind of funny that Modular is getting acquired by a hardware company considering what it's founder has said repeatedly in interviews and articles about how those companies fail to make AI stacks.
I'm happy to see this I see that this provides CEF, Webview and Raw * backbends but it would be nice if there was also a launch in browser option (like WebUI has). To me that has the best tradeoffs if you want to avoid the mess that is webkitgtk but still not ship (and be in charge of updating) a chromium engine with your app.
> I'm happy to see this I see that this provides CEF, Webview and Raw
They beat Tauri at their CEF support.
Webviews are a mistake in most cases. They're too platform-specific, and certain Webviews (Safari/Webkit) are buggy as hell, making platform support a nightmare. (Linux, ironically, is even worse due to how underbaked webviews are on the major desktop Linuces - Tauri is barely functional on Linux.)
Deno Desktop could be a real contender in this space. It's good to see more Electron alternatives.
I think that my Sciter is better option when you need HTML/CSS/JS native application running on
Windows (XP and beyond), MacOS and Linuxes.
Sciter SDK [1] contains scapp[.exe] - standalone Sciter engine that can be attached to HTML/CSS/JS bundle making standalone (single exe file) and portable executable. https://quark.sciter.com/ tool allows to compile such apps.
Size of "hello world" is a size of scapp.exe binary + size of compressed HTML/CSS/JS bundle.
On Windows scapp.exe is of ~14 Mb. On Linux ~18 Mb.
Linux version at startup detects GTK4, Wayland or X11 and uses those as windowing backends.
On all platforms Sciter provides out of the box: HTML/CSS/JS runtime, libuv based Node.JS alike runtime, GPU accelerated rendering, WebGL 3D runtime, JS built-in persistence (NoSQL DB).
It does not have TS compiler built-in as Deno, but that TS-to-JS compiler is better to be outside anyway as it is used only once - at app loading.
While I'm trying to take a test it seems too much to start a Hello world application, or just to bundle my existing "dist" folder of a part time project.
Is it possible to install some tool, and give it a "dist" fold path and the application is generated all alone?
I'm stupidly lazy, and I hate work with graphical UIs to start a project and input that many fields, make me feel like visiting a 1990 web page requires me registering with tons of information and most of them are useless or at least I can provide later if needed.
Wouldn't that just be "Raw"? I.e. start a webserver and ask the system to open the URL. There is no "special stuff" to do in this case like avoid sockets in favor of IPC to a well known webview or package CEF and no real integration to make with dev tools etc after - it's just open socket and serve from prebuilt binary.
No. As I understand it, the Raw backed just gives you a Window with input handling and you have to embed something like Skia, WebGPU for the graphics. So basically you have make your widget library yourself.
Now you can just start a server with deno pretty easily and serve a website. But WebUI will actually also manage opening the browser window for you as well a make the communication between backend and frontend just like using a Webview or electron.
Raw still exposes access to Deno APIs & ability to call native code but it doesn't seem to assume it should give you a window out of the box or anything based on my testing (AFAICT you have to orchestrate most all of that yourself, Deno just won't get in the way with packaging other stuff like CEF automatically). If this is just some issue on my machine with the canary build though, the existing "Deno compile" should accomplish the same goal for a binary version without any GUI components at all.
Outside making it so you don't have to call to open the link yourself, I'm still not sure what could be integrated in the scenario. Deno can integrate with WebView because the WebView APIs were designed to allow external applications to have full control of the session. CEF (the Electron-like) approach works because Deno packages CEF & the APIs as part of the app itself, having even more control of everything. Browsers are meant to be in control of themselves or the user, and have had a long history of fighting malware trying to act otherwise.
There's also just shipping with a Web interface that opens in a browser (like Jupyter, or WebUI apps). Plus there's the option to use the system Webview like Deno Desktop (this), Tauri and Electrobun do by default.
So thankfully we can still have our REPLs with live reloading and nice documentation (MDN, W3schools etc.) and large library of embeddable UI components without most the costs of using electron.
Just adding my respect for the team behind KDE. I left KDE for more resource friendly desktops and window managers around the KDE 4 transition. Then in the last couple of years came back. It's definitely the most feature complete and sane option for Linux desktops.
When they transition to Wayland I'll probably have to move away again as my hardware won't support it but I'll still likely use dolphin as it's a better file manager than all the others.
I know there are people that are used to the indention based scope but that has a real problem when it comes to copy/pasting code. I think a alternative that still looks pretty clean is to do like Ruby and Julia and have the function/class imply begin and have a literal 'end'.
I don't understand this concern. How exactly are you copy/pasting code such that significant indentation causes "real problems"?
I remember the creators of Go explained [1] that they chose explicit block delimiters because of problems they saw when embedding snippets of Python in other languages. But this seems like a very niche kind of problem.
Fun fact, in Python, the indentation is checked per block. So, in the outer block, indentation can be 2 spaces, while in the inner block, the indentation is 3 spaces. The only prerequisite is that the indentation in the block is the same.
I'm one of those people that prefer vscode (actually I'd prefer just about any editor with a UI designed within the last couple of decades over emacs). Lately I've been thinking about working though a nice Lisp book just because the idea appeals to me.
Hister sounds like a idea I had years ago but gave up on after running into issues with index size taking up way too much storage.
Long ago I've used Searx and really liked it but after some point didn't see the point as opposed to using Google more directly. But lately in the back of my mind I've thinking about checking in on it again.
I'm also using a cursed stack (deno + pyodide) and it's awesome! Everything works surprisingly well and I can do my Python experiments in a notebook while hot reloading via vite in a browser + quickly try things in the dev console.
reply