Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If I understand correctly, it's WebSocket on top of Embedded C/C++ web server (civetweb).

Also, the application must find and launch the installed browser. In my opinion, this part is very fragile. On my system, this function (webui/src/webui.c) :

   static bool _webui_browser_exist(_webui_window_t * win, size_t browser);
cannot find my browser.


Agree finding browsers can be tricky, but the node Chrome-launcher package has a fairly good approach that you can patch and extend to the other vendors.

In graderjs i solve this by searching for the installed browser, and then prompting the user to download it —obviously just the first time! — if we couldn’t find it. so the download and install happens as part of the application start up process and it’s baked into the framework. I think it’s a nice solution where the application installs any components that might need.

I think another nice solution would be to use playwright because that usually downloads all browsers that you might want and I’m sure that can be customized. playwright is a reliable source and it’ll put them in a location that easy to find.


Do you have "open URLs with a browswer" turned off in your OS? Because that's the universal way to open "whatever the user has set as their default browser".


> Do you have "open URLs with a browswer" turned off in your OS?

But the application works differently. It needs the browser in kiosk mode, which means it should be able to run the browser binary with specific arguments.


The default browser on MacOS is often safari, which is not supported (yet) according to the docs.


civetweb will run cross platform as a http server.

the issue is when you need write code on each OS, e.g. a cgi for windows/macos/linux/bsd, you will have to know the native API for each OS and use them, which could be hard to maintain if cross-platform is a must.

I wish there is something lower level that is truly cross platform, e.g. a C library runs on each OS and let me do filesystem/network/etc, it does not seem exist.


> a C library runs on each OS and let me do filesystem/network/etc, it does not seem exist.

Uh, stdlib and friends? No?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: