Skip to content

Aurora OS.js — extensible web OS game and hacking simulator framework for developers and gamers. Virtual OS experience with scripting, apps, terminals & sandboxed gameplay, set in the mental.os() universe.

License

Notifications You must be signed in to change notification settings

mental-os/Aurora-OS.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aurora OS.js

Version Roadmap Status Build (Main) Build (Nightly) GitHub Pages

Social media image for Aurora OS.js hacking simulator game project

A hacking game where the operating system is the game.

Aurora OS.js is an experimental, open‑source OS‑simulation / hacking game framework built entirely with modern web technologies: React, Vite, Tailwind, and Electron.
It’s not a finished game, yet. It’s the foundation: a playable, extensible virtual operating system designed to host hacking mechanics, scripting, multiplayer systems, and emergent gameplay.

✨ What exists right now

Even in its current proof‑of‑concept state, Aurora OS already solves the hard problems:

  • 🗂 Virtual filesystem (persistent, sandboxed)
  • 🧠 App lifecycle & OS‑level user flow
  • 💻 Functional bash‑like terminal
  • 🧩 Modular app architecture with context-aware Menu Bar system
  • 📝 Notepad app with syntax highlighting for: .txt, .md, .js, .jsx, .css, .html, .sh, and more
  • 🎛 Window management & desktop UX

🧭 Where This Is Going

Aurora OS is developed in clear evolutionary steps:

  • Stage 0 (0.x.x) — Foundation & Usability: Functional desktop OS with real applications and natural usability.
  • Stage 1 (1.x.x) — Single-Player Hacking Game: Playable single-player hacking experience (Steam Early Access).
  • Stage 2 (2.x.x) — Multiplayer Hacking World: Persistent multiplayer hacking environment (Steamworks).

The long‑term vision is an OS that feels real, but behaves like a game.

🧠 Why This Exists

I’m deeply inspired by hacking and programming‑driven games:

Each of them nailed something important — and each of them also felt like they stopped just short of broader reach or replayability.
When I discovered OS.js, a thought clicked instantly:

What if the OS itself is the game engine?

Aurora OS.js began as that experiment — inspired by OS.js and Puter, but reshaped into a game‑first system.

🧪 Current Status

  • Actively developed
  • Architecture stabilizing
  • UX polishing in progress
  • Looking for early testers, contributors, and curious minds

This is the ideal phase to influence direction, architecture, and gameplay systems.

🤝 Contributing & Contribution Terms

Aurora OS.js is open-source and community-friendly, with a long-term vision that will include commercial releases.

Contributions of all kinds are welcome — code, design, documentation, ideas, and feedback.
To keep things transparent and fair for everyone, contributions are made under clear contribution terms.

Before submitting a Pull Request, please read:

  • CONTRIBUTING.md — how to contribute, expectations, and contribution terms
  • CONTRIBUTORS.md — permanent credit for everyone who helped shape the project

In short:

  • You keep authorship of your work
  • Your contribution is credited permanently
  • Your contribution may be used in open-source and future commercial versions of Aurora OS.js
  • There are no retroactive license changes or hidden transfers

If anything feels unclear, open a discussion — transparency matters here.

Tech Stack

  • Framework: React 19 (Vite 7)
  • Engine: Electron 39 (Node 25) / ESNext
  • Language: TypeScript 5
  • Styling: Tailwind CSS v4
  • UI Library: shadcn/ui (Radix UI, Sonner, Vaul, CMDK) + Custom Components
  • Icons: Lucide React
  • Animation: Motion (Framer Motion)
  • Audio: Howler.js
  • Testing: Vitest

🚀 Getting Started

Prerequisite:
Node.js 24.0.0+ is required.
Chromium-based browsers (Chrome, Edge, Brave, etc.)

npm install
npm run dev

Or use the GitHub Pages (LIVE DEMO)

Release Notes (v0.8.3)

Added

  • Context menu: Each APP feeds context menu information the same way they feed Menu Bar items. Some apps may not have/require context menu items.
  • Finder: Recursive search functionality aware of the current location.
  • Music: Added support for scanning real metadata for files in /src/assets/sounds (was relying on filename before).

Improved

  • Standardized System Notifications: All feedback notifications (errors, warnings, etc.) now use the same system notification component notification.tsx. These are different than App notifications that will go into the notification center (applet).
  • Finder: Show item count in the sidebar for Favorites and for Locations sections. debar is aware of the existing folders in user's home directory.
  • Finder/Desktop: Context menu copy/paste functionality.
  • Finder/Desktop: Improved "Get Info" diagnostic display with rich, internationalized details (Permissions, Owner, Modified, Size).
  • All APPs: Benefit from optimizations, especially in terms of React drawing and memory usage.
  • Notepad: Opens with an empty state that propts user to open a file, instead of the clasic "first tab already open" - this gives the posibility to close all tabs.
  • Translation System: .scripts/check-i18n.js script find automatically missing or extra keys in translations as well as all the files in /src/i18n/locales. Aditional workflow for translations is added in TRANSLATION.md.

Fixed

  • Finder: Drag-to-move to same location bug.
  • Finder: Drag-to-move from one window to another now corectly checks for permissions (applies to Desktop too).
  • Finder: Drop highlight issue when it stayed active in some cases.
  • Finder: Terminal not passing the correct home path to Finder (eg. su guest > finder ~ should open Finder as guest in /home/guest, but it opened in /home/[user]).
  • Notepad: Tabs now remain active when closing and opening Notepad. Unsaved files prevent the app from closing.
  • Notepad: Tabs now remember the mode of each tab (edit / preview) to prevent unwanted preview mode where it is not supported.
  • Music: Ghost keys issue that appeared even if the app was not installed is now fixed.
  • Music: The subsystem of scanning metadata, handleling Sound applet, etc. is tied to the actual launch of the Music app, avoiding issues like not having the Music app installed but still producing effects.

📝 License & Others

Community

Other links

License

AI Disclosure

This project, "Aurora OS," is human-written, with AI tools assisting in documentation, GitHub integrations, bug testing, and roadmap tracking. As soon as this project is ready for release, all the AI tools will be removed and the generated content (audio, images, etc.) will be human-created.

About

Aurora OS.js — extensible web OS game and hacking simulator framework for developers and gamers. Virtual OS experience with scripting, apps, terminals & sandboxed gameplay, set in the mental.os() universe.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Languages