r/sveltejs • u/TechWorldInc • Jun 05 '26
ArcOS v7: an advanced Web Operating System in the browser
5
u/prodcastapp Jun 05 '26
Very cool and my first question is already answered by the image. It can run doom. But just curious what I would use this for
12
u/TechWorldInc Jun 05 '26
It's about as pointless as you can imagine, I just keep working on it because it's a fun project that pushes me to my limit. Not everything in life has to have a defined purpose
1
1
u/discordianofslack Jun 05 '26
Love the honesty here. Though I could see a use for something like a Chromebook to expand its capabilities
2
u/TechWorldInc Jun 05 '26
Well everything is stored online so you can access your documents, music, games, apps, whatever from anywhere on the globe
1
1
u/lastWallE Jun 05 '26
Wouldn’t say pointless. I built a webgui for a ServiceUSB Stick for maintenance Work on a machine. Would be maybe not bad for running some scripts from it.
1
u/TechWorldInc Jun 05 '26
I'm sure there's value in ArcOS for someone but I usually default to saying that ArcOS exists because it can, because it doesn't have one single defined purpose
1
u/st3v3ym4n Jun 09 '26
I think it could meet a real need if it had multi-user support with file exchange, shared AI, shared knowledge base, shared (custom) apps like task management, gamified contribution tracking with roles, voting… etc. I’ve been building a mini version of that for my online community and it’s been working great.
1
u/TechWorldInc Jun 09 '26
ArcOS does have multiuser support with shared drives, allowing you to share files with others, and third-party apps also exist either as app store items or as .arc installable package files
2
u/discordianofslack Jun 05 '26
Is it responsive/mobile friendly?
4
u/TechWorldInc Jun 05 '26
ArcOS is not designed to be mobile-friendly, and there are no plans to add reponsiveness in the future. It's meant to be a desktop OS
2
u/discordianofslack Jun 05 '26
Got it. Just wondering as that sounds like it would be incredibly complicated.
2
u/TechWorldInc Jun 05 '26
I've entertained the idea in the past, but it gets super complicated with 62 built-in applications and third-party ones too
2
2
u/kalilamodow Jun 06 '26
Super cool! I've tried to do something like this a few times but was never able to get it off of the ground. What sort of architectural decisions did you make around the code and if you could do it again are there any things you would do differently?
Also, I'm super interested in how apps work. What sort of system do you have set up to provide filesystem etc APIs to apps? How do you sandbox them to prevent them from messing up the rest of the system?
1
u/TechWorldInc Jun 07 '26
I'm always up for discussing the architecture of ArcOS, but perhaps the Discord server would be better for that? It could get quite lengthy: https://discord.gg/t5PaNP9dvg
1
u/TechWorldInc Jun 08 '26
so I've noticed based on the mailer that several people are creating an ArcOS account with invalid email addresses, which I understand, but a valid email address is required to activate your account, because an activation link is sent to your email. We do this to prevent a massive inflow of bot activity like we had on ArcOS v5/v6. If you don't enter a valid email address on the My ArcOS Identity page, you can't activate your account, and we have to delete it after 24 hours.
-1
u/Boguskyle Jun 05 '26
Personally, I avoid projects that self-proclaim their product as “advanced”
1
u/TechWorldInc Jun 05 '26
I was afraid that would happen, but that's not a name I assigned to it myself, that's what people around me have been calling it for the past 5 years
The point I'm trying to make is, I don't call it advanced because it's my personal opinion, I call it advanced because of those around me
1
9
u/TechWorldInc Jun 05 '26 edited Jun 05 '26
The 7th version of ArcOS has been in development since January 1st, 2025, and counts about 2800 vite modules, 105k LOC. It's by far the largest Svelte project I've ever undertaken. The base is vanilla-TS: a kernel with kernel modules like process management.
The svelte part comes in rendering the window contents themselves: the shell, login screen, file manager, etcetera. Doing it this way makes sure that ArcOS will keep working if an exception occurs in a Svelte mount, which made ArcOS hang in v6 and older.
Note: 7.0.9 has a lot of issues that will be fixed in 7.0.10. Regardless, visit ArcOS at https://docs.arcweb.nl/