VoyagerOS
- 6 Devlogs
- 6 Total hours
A web-based & terminal-themed operating system for the fictional Voyager-9 deep-space probe. Integrated with my other project "This Alien Does Not Exist" to create immersive environment.
A web-based & terminal-themed operating system for the fictional Voyager-9 deep-space probe. Integrated with my other project "This Alien Does Not Exist" to create immersive environment.
The Alien Registry is finally here.
VoyagerOS can now browse user-submitted species as if they were discoveries made by Voyager-9. Alongside the 4 billion procedurally generated species from This Alien Does Not Exist, anyone can now contribute their own interpretations to the registry.
I want to start building a community registry.
I’d love to see how different people imagine the same species and watch the registry grow over time, and try to forgive my bad drawing.
Guide for submitting your .alr : https://github.com/aamosm/VoyagerOS/blob/main/alr/README.md
Project README:
https://github.com/aamosm/VoyagerOS/blob/main/README.md
The biggest addition in this update is the Alien Registry.
VoyagerOS can now browse, search and view procedurally generated alien species from This Alien Does Not Exist as if they were real discoveries stored aboard Voyager-9. Each entry includes its own observations, classification and registry information while remaining tied to its original seed.
The Paint app also allows exporting a custom file (basically a zip with a diff extension) as custom Aliens. I want them to be able to be uploaded to the repo and work like the dinosaur repo of hackclub.
This is the first step towards connecting the two projects into the same universe.
Instead of existing separately, VoyagerOS now has a purpose beyond being an operating system. It acts as the place where alien records can be documented, searched and explored.
Also made themes better.
The registry is only the beginning.
The next step is expanding it with better search, filtering, observations and more tools for exploring discovered species. also allowing user inputted aliens alongside the already 4.something billion ones.
This update focused on making VoyagerOS feel like it has a history instead of just an interface.
I introduced the Compact, a shared registry that keeps track of delegates, records, archived documents and historical events. Rather than placing lore in random text files, everything now lives inside the virtual filesystem and can be explored through normal terminal commands.
One problem I ran into was keeping certain files up to date.
Things like registry records and submission logs shouldn’t be static, so I changed the file viewer and terminal to generate them when they’re opened. Commands like read, grep, stat and the file viewer all use the same underlying data, keeping everything consistent regardless of how it’s accessed.
The shell also gained a few new commands including whois, delegates, charter, access and submit.
Instead of being standalone features, they’re connected directly to the registry and filesystem, making the terminal feel more like a real administration tool rather than just a command prompt.
One thing I’ve noticed while building VoyagerOS is that adding content is becoming just as important as adding features.
The very next thing I want to do is add my project “This Alien Does Not Exist” which has procedurally generated aliens, to make a registry. It could be like, aliens recorded till now.
This update was mostly about making VoyagerOS feel less like a collection of windows and more like a real desktop.
I expanded the virtual filesystem with proper file operations and added more shell commands like find, grep, stat, df and man. The manual was also rewritten to make the terminal easier to use.
The desktop gained right-click context menus, a system monitor and better file management.
Dragging windows and icons also needed a rewrite. The old mouse-based system became unreliable, so I switched it over to Pointer Events, which made dragging much smoother and fixed several issues.
Desktop icon positions are now saved using LocalStorage, so the workspace stays the way you left it.
There were a lot of smaller changes too:
100dvh
The desktop is now in a much better place.
Next I’ll be expanding the ship software itself, adding more applications and filling the filesystem with logs, manuals and mission data.
VoyagerOS is no longer just a terminal.
The interface now boots into a desktop environment with draggable windows, a taskbar and a cleaner workspace. Multiple applications can stay open at the same time, making the OS feel much closer to a real operating system.
Several built-in applications have been added to the system.
These include a file explorer, settings panel, media viewer and a simple browser for navigating mounted data. They all share the same window manager and integrate with the rest of the desktop instead of acting as separate pages.
The file explorer now uses a virtual filesystem instead of static content.
Directories can be browsed through the desktop interface, giving VoyagerOS a proper file hierarchy to build future features on.
A lot of the interface was cleaned up during this update.
The desktop now has a proper wallpaper, improved window styling, better spacing and a more consistent visual style across the operating system. Small changes like these make the whole environment feel much more cohesive.
Moving from a terminal-only interface to a desktop introduced a lot of state management problems.
Keeping track of active windows, focus order and application state ended up being much more involved than expected, but it also made the rest of the system easier to expand in the future.
The desktop is now in place.
The next step is adding more applications, expanding the filesystem and continuing to make VoyagerOS feel like software that could actually exist aboard Voyager-9 and fixing drag of icons.
VoyagerOS is an experiment to see how far a browser could be pushed to feel like a real operating system.
The goal isn’t to make another futuristic UI. I wanted it to feel like software that actually belonged on a deep-space probe. Everything is built around a terminal interface where the user interacts with the system through commands instead of buttons and menus.
The project is built entirely with HTML, CSS and JavaScript.
The first milestone was getting the boot sequence and terminal working. The boot process now transitions into a persistent shell with command history, input parsing and a window manager capable of handling multiple processes at once.
The interface is still simple, but the focus has been on making it feel consistent rather than flashy.
One of the main ideas behind VoyagerOS is that it can mount real data from outside the system.
The first approach was embedding the Internet Archive directly, but it quickly became obvious that it broke the illusion. Logos, navigation bars and the surrounding website made it feel like a browser instead of an operating system.
I scrapped that approach and rebuilt it around the Internet Archive Metadata API instead.
Instead of displaying web pages, VoyagerOS now requests metadata, lets the user choose what to mount, and renders the data inside its own interface. Everything stays inside the OS instead of sending the user to another website.
At the moment VoyagerOS has:
The next step is expanding the shell itself.
I want to add more system commands, improve the filesystem, introduce more ship subsystems and continue making the environment feel like a real operating system rather than just a terminal running in a browser.