[Discontinued] auroraOS - An OS in your browser

auroraOS

auroraOS was an OS in your browser. Completely written from scratch over two fifteen months before discontinuation, it featured a beautiful GUI, a fast window manager, package loading, application APIs, and more.

Try it out.

It’s also remixable and open-source on Github, please excuse the spaghetti code!

The demo filesystem is persistent and all files are visible to everyone. Please do not write any personal information to the filesystem.

FAQ

  • How does auroraOS work?
    • auroraOS is a combination of Node.js on the back-end and pure JavaScript on the front-end. Every single thing on the front-end is written in pure HTML, CSS, and JavaScript; no preprocessors or Webpack here!
    • auroraOS revolves around packages, somewhat like Linux. When a package is started, auroraOS fetches the script from the server and executes it while exposing many package APIs like package.resource, which allows a package to retrieve files in its directory, and package.createWindow, which creates a window under the designated window manager. Even the window manager is a package!
  • What am I allowed to do with auroraOS?
  • Why was auroraOS created?
    • It’s a long story, but it basically started out as a side-project and a chance to improve my JavaScript.
  • How are passwords encrypted?
    • Passwords are encrypted using Bcrypt, a library that automatically salts and scales strength to keep up with modern technology.
  • When will a documentation be made?
    • Soon.
  • How do I update auroraOS versions?
    • For now, there is no auto-update system planned, unless I somehow integrate it with the Market. You must currently remix the demo and transfer your files, or pull from Github.
  • How do I login?
    • Username: demo
    • Password: demo
  • Why was auroraOS discontinued?
    • First and foremost: because I no longer agree with Glitch’s values. Private projects becoming a paid-only feature was the final straw, and the boosted plan isn’t exactly a good deal for what you get. Also, this happened.
    • auroraOS was discontinued because I didn’t have much time on my hands to manage it, and because it was based on aging code that, when written, didn’t meet any security or performance standards nor did it even remotely follow good JavaScript, HTML, and CSS practices.
    • File permissions were implemented absolutely horribly; for example, read-locked files could even be accessed through the readStatic path even if you didn’t have the proper permissions.
    • The filesystem itself was implemented poorly; every action constituted a new HTTPS request. While this isn’t necessarily bad, if auroraOS were rewritten today, I would’ve used socket.io or something similar.
    • Apps were not sandboxed. Not a big reason as this is something that’s hard to do in any web app, but if auroraOS were rewritten today, I would either put every app in an iframe, or use a custom GUI drawing system that auroraOS can 100% control, and run each app’s process in its own JavaScript VM (JS in JS)
    • I always used the newest web platform features as soon as they came out, whether they were supported on the majority of browsers or not. This is why auroraOS doesn’t run on iOS <14 or most versions of Safari.
    • Around auroraOS 5, I decided to absolutely replace the completely functional window manager with something a bit more modular and a whole lot broken. It’s a mess. I ended up somewhat reverting this change but it’s still not as good as it used to be.
    • With the default themes, I used blur everywhere. Smh
    • Settings app: since auroraOS 6 (?), became some weird half-broken app that was just…bad
    • Terminal app: all commands were part of the Terminal app itself. Not easily extensible, and the text rendering itself was implemented horribly. If auroraOS were rewritten, I would rewrite this to act like the Windows Console Window Host, which listens to a process’s stdout, forwards stdin, etc.
    • Files app: barely had any features.
    • Write app: what even was this? Didn’t even have filesystem functionality lol
    • auroraOS System:
      • When launching an app and then closing it, the app’s JS heap usage would not be cleaned due to my horrible attempt at JS processes in a highly-constrained platform (the web, am I right?)
      • Non-fs data storage: used quick.js. Probably the worst module you could use for the types of things that auroraOS stored out of the filesystem.
      • Aging code: at first, auroraOS started out as simply a concept with no backend code at all. This was a problem.
      • Bad code: I learned JS through auroraOS. As such, some code is bad.
      • CSS: used a lot of hacks, was just not maintainable; changing one thing would probably completely annihilate another.
    • I understand that some of these issues could be fixed with another feature update, but…it was simply too much. It was time for auroraOS to go.

your feedback would be greatly appreciated

18 Likes

i like how people are writing OS’s in glitch!

well done! i might remix

2 Likes


hmmmmmm
Edit: Theres an issue and it makes the browser really slow

Don’t run virus.exec lol, it slows down your whole browser and was mostly a test

I’m not aware of any performance issues right now, but I’ll look into it, thanks for telling me

by the issue i was talking about the virus lol

1 Like

The window close animations are slightly laggy for me
But first of all

  1. Great window management
  2. Nice taskbar
  3. Amazing startup animation
  4. Nice start menu
  5. Overall it’s nice looking
1 Like

also seems like the images in the market are broken

Thanks for all the compliments!

The lag can be fixed by switching to a different theme, as Dark and Light use backdrop-filter to simulate background blur, and its currently very performance-intensive.

1 Like

yeah, the Market is a work in progress and there aren’t really any images yet.

Such a lovely design, it reminds me of how people make linux cool.

5 Likes

I know right? Best “Linux-like” OS ever.

3 Likes

this is by far the best os so far

1 Like

Even works on mobile except from the background glitching out a bit

i just made an app which shuts down the PC, it sounds basic but needed

best part is that it only takes up 4% space

3 Likes

dev article: https://dev.to/17lwinn/aurora-os-2a9m

1 Like

https://technolofi.tech.blog worthy! I’ll blog about this later. Good job!

2 Likes

Thanks to everyone for the amazing compliments, this made my day!

And now for a sneak peek of 5.0:


The desktop may look the same, but everything behind the scenes has been revamped.
4 Likes

YES! Release date? @hhr3

And how do I update?

Sometime in the next two or three weeks.
Right now, there’s no auto-update, though you can remix the new version and transfer your files when it comes out.

4 Likes

It does not work if you type the url in chrome. To me, I assume that you are using window.close. I suggest just making the screen black or something like that and make it so that they can then restart or use the os once again.

Also, I found a file (.txt) that I find “not necessary”

I might rewrite this and make it windows-10-themed

3 Likes

Here’s some apps you should app(just iframe them I guess)


Really cool app with EPIC VISUALIZATION(shoot just found out visualization is a seperate plugin)
A minesweeper game
Also an app for glitch
If you guys can get a coder-server instance running (they use more disk space than glitch can provide) you can make vscode an application.

Yeah i’m rewriting the app to show something else like a dialog that locks up the apps until they press a button. I might try when 5.0 comes out

That file we need as a placeholder

1 Like

I remixed the project @hhr3, and I saw that you were using iframes for windows. (app windows, not the os) I am now going to make a browser app using iframes!

2 Likes

I already tried; back when I first started making auroraOS, a browser app was the first thing I set out to do.
iframes have restrictions on them that prevent certain domains, like Google, to be shown in the iframe (to prevent scamming).
I would still love to see what you make!

That’s true (I’ve learned it as well before your post) Apps like that have some kind of restriction. I realized this when I made a web proxy that uses IFrames (some websites work however though.)

2 Likes

There are several options to bypass the iframe restriction. If you have a browser that has extensions you can modify the header. There is also a solution that involves custom elements, however it is broken currently.


The custom element doesn’t work I think because the proxy servers are down. We can host a proxy server on the same machine as the os and have the iframe connect to that.
Just make an instance of cors-anywhere but remove the origin header restriction because it says
"
To prevent the use of the proxy for casual browsing, the API requires either the Origin
or the X-Requested-With header to be set. To avoid unnecessary preflight (OPTIONS) requests,
it’s recommended to not manually set these headers in your code.
"
4 Likes

I’ve tried to make the app, Aura Browser, but failed. The os does not seem to load.

Wow this is so cool. Sadly can’t access the filesystem RN and the marketplace doens’t work. I’ll keep watching this though

2 Likes

I’ve noticed that if the app name contains capitals and spaces, the os will crash

And @code-alt some handy tips i used when i tried to make a browser:

  1. Try to find an alternative to an iframe, when i tested this beside an object function- i saw the object loaded a lot faster.

  2. No spaces or caps- try auorabrowser or auorabrowse or ‘internet’

  3. Get an Internet browser PNG and convert to .webp, upload it as an asset then open the terminal and cd into your app source (_SERVER/packages/whateveryourappiscalled).

If you haven’t already- delete the existing icon and run:

wget -O icon.webp ASSETURL

Reopen your OS and you should see your app with an icon!


EDIT- I am going to try and recreate the lost windows version - windows longhorn

2 Likes

Webp is preferred but not required. You can use PNG, JPG, or even GIFs instead.

The OS doesn’t shouldn’t crash when app names have spaces or caps, it only crashes if your app’s folder name is different from the app name in your app/info.json.

For example, if your app/package’s name is Aurora Browser, then the folder must be named Aurora Browser, and name in your app’s info.json file must also be Aurora Browser.

i didn’t know that!

@hhr3 when can we see the market fixed?

Most likely when 5.0 comes out.

okay, so how would the market work?

Like any market/app store.
Open it, search for an app, and install it.

but how? how would we get the files?

what do you mean?
The market would handle all installing and retrieval of files, you just have to restart the OS and its installed.

okay, good to know!

starts making windows longhorn…

3 Likes

By any chance is there going to be a browser there?

Officially, most likely not, but community-made, probably.

Yes, understandable!

yeah, perhaps!

maybe somebody could make one, push to github so it can be added to the store!

4 Likes

Can you send a new discord invite link? For me it says it expired

1 Like

yeah, same here

also i sent a friend request

The invite shouldn’t be expired, but here’s a new one.

Woah, it now works? Discord problems i think. The old invite works now…

1 Like

Yoow, I keep hitting my head on the 100 server limit.

2 Likes

Odd, the link doesnt seem to be working. I’ll try the old one.

By the way…

The project seems very interesting! I haven’t been talking much but I might consider remixing.

2 Likes

I was just thinking that the terminal should be renamed, because it is a bit misleading. You could use a terminal emulator, such as this.

1 Like

I’m actually re-doing the entire Terminal to be an actual terminal and not just a JavaScript evaluator for auroraOS 5.0, stay tuned!

2 Likes

That sounds cool, how do you plan on doing that?

I’ll probably use my own terminal implementation.

2 Likes


Sneak peek of the new 5.0 file manager and permissions.
Just gotta finish the top bar and it’ll be done!

4 Likes

@hhr3

The application does not work on my mobile device. Only shows a white blank screen.

Let me guess, you’re using an iPhone?
WebKit browsers (Safari) doesn’t support webp, which is the image format auroraOS uses, but support might come soon. I’m pretty sure that browsers on iOS must use WebKit, so unfortunately, there is no way around this on iPhones. Sorry about that.

1 Like

I think using chrome for ios might work but I heard somewhere that ios chrome is just chrome interface with an apple rendering engine.

2 Likes

auroraOS is an OS that kidz-beta.glitch.me.

I think kidz used AuroraOS.

A new auroraOS is a browser.

By the way your editor is named market.

I know @javaarchive Sorry

Yes we used aurora OS for Kidz-beta.glitch.me
the same way riverside rocks used it for https://s2sl-code.glitch.me

1 Like

auroraOS is an OS that kidz-beta.glitch.me. Video Youtube: https://www.youtube.com/watch?v=5_wZATv5LjY

I belive that @random set up that part.

1 Like

owo. looks epic. :slight_smile:

lol where did you find that video

I know

MORE TEXT

auroraOS is an OS that kidz-beta.glitch.me. Video Youtube: https://www.youtube.com/watch?v=5_wZATv5LjY

Screenshot 2020-05-28 at 12.57.19 PM
Added to my notes :slight_smile:

2 Likes

https://technolofi.tech.blog made the post! https://technolofi.tech.blog/2020/05/31/auroraos-an-online-operating-system/

3 Likes

auroraOS 5.0 is now out.


username demo
password demo

2 features are not available, sorry! I received tons of feedback from users asking me to release it today however, so here you go.

I STRONGLY recommend that you do not remix until a proper password setting system is put in place. If you must, follow the directions in system/server.js.

4.0 has been moved to https://auroraos-legacy.glitch.me/

7 Likes

Yay! However there’s a ton of bugs in 5.0 I gotta say.

How do I change username and password?

Development has obviously been slow, but we’re still working on many things.
There’s a new developer preview available here.

Here’s a break-down of what has happened:
Available on the Developer channel:

  • Windstorm, a new theme (Industrial Light 2.0)
  • Window manager tweaks
  • Terminal 2.0
  • Package manager
  • And much, much more.

auroraOS is switching to a year-month version system, similar to Ubuntu’s. The current update is 20.06 (5.01), and the next update will be 20.07 (6.0).
This also means that feature updates will happen more or less monthly, with bug fixes in between.

The market has been discontinued temporarily. It has been replaced with the AuroraGet package manager, available in the terminal.

All themes are being refactored. Dark and Light have been re-done, with performance gains of up to 50%, and there is also a new theme called Windstorm. It is dedicated to modernness, beauty, and performance.

Settings 2.0 is coming soon; it will add the ability to change account passwords, create accounts, and delete accounts, something that everyone has been asking for.

auroraOS will be separated into a demo and a version that you remix soon. This will enable me to disable features to improve the demo experience.

Finally, the window manager has been tweaked. Windows now open in the center of the screen, and are sized automatically if a size is not provided manually. A bug with maximizing windows where the animation stuttered has also been fixed.

That about wraps it up, and I hope to see you when 20.07 is released.

scrot

3 Likes

Seen the dev edition, is the package registry going to be released?

a little help

PM if you need help/tester

Yes, the package registry will be released soon.

Im going to assume that you used xterm js for the terminal?

The terminal was built completely from the ground up to optimize it for auroraOS.

2 Likes

Ah…

Great! :smiley:

1 Like

Discord invites are not working… :man_facepalming:
You peaked my interest sir.

It runs perfectly on 4gb of RAM (Raspberry Pi 4 model B). Props to you, I’m really impressed !

3 Likes

Maybe auroraOS could be a linux distro one day

6 Likes
  1. Get arch linux
  2. Install desktop enviorment
  3. Set it to launch chormium koisk mode or electron fullscrenn
  4. Allow AuroraOS to access linux filesystem
  5. Release the image
4 Likes

I messaged the developer of OS.js, and he told me how he converted it to a distro

4 Likes

is it just me or it doesnt work? I’m stuck at the Glitch’s page saying “Starting”
Ok it works on the dev version, how to register?

Username: demo
Password: demo
You have to remix to make your own account I think

Imagine a browser inside the OS inside your browser inside your OS. (An aurora browser)

4 Likes

Are you still developing AuroraOS @hhr3?

Not everyone has the time to maintain projects and some get bored of one project/get more focused on another

5 Likes

Oh… ok… mhhmm…

how do you create an account?

Would it be possible to hide the mouse and create a custom one?


uhhhhh

2 Likes

Tall cat in AuroraOS, LOL

I might still use this, but i’ll have to see if I can dig out the code to get the old settings app

2 Likes

I would like to contribute auroraOS, Since there’s no update after a month.

Maybe… We’ll adding xfce4 support for AuroraOS :grin:
And some linux stuff…

Well, will adding SSH support on auroraos, But later.

soup is not adding anything to it anymore.

I’m in the discord server and from what I’ve seen they have changed the name and done a bit of a makeover. I would recommend you go there if you want to help as @hhr3 has left Glitch.

3 Likes

When will that be?

You can configure everything on your computer then upload to the node_modules directory if you don’t have enough space. Fair warning, you have to delete and re-upload using the command line if it doesn’t work. The node_modules directory doesn’t count against the disk limit.

Hey just saying this is amazing but i have one question:
the hell is the password???

Added the username and password to the FAQ.

At this time, there is no functionality available for account creation.

Yes, this may be done by hiding the cursor with CSS, then adding an element that moves to the cursor’s position every time onmousemove is fired.

Previous code is available on the GitHub under past commits.

The auroraOS instance that is running on https://auroraos-dev.glitch.me is currently on version 5.0.

1 Like

Yay! I’ll go look. What’s ETA for v6?

Hello soup, why is the auroraos main website not working? It gets stuck on the starting screen. Is my internet too slow? Or is auroraos down for ever? thank you
gitclone93

Can’t do that because of native binaries not being correct, I don’t see why to bother with uploading node_modules
I just got bored of writing and porting apps

I suggest that you give it a moment (up to 30 seconds) as Glitch is known to be extremely slow when waking up projects, including auroraOS.

I’ve gave it about half an hour.