Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ApexOS Hybrid Edition

image

A virtual operating system in the browser — desktop GUI, terminal, packages, and real hardware access via Web APIs.

License Python


Features

Area Capabilities
Desktop Window manager, taskbar, start menu, icons
Terminal Full shell + apx, lsusb, bluetooth, network
Files Persistent VFS (storage/disk.img)
Settings Network status, Web Bluetooth, WebUSB, permission registry
Packages .apx install with Android-style permission gatekeeper
Apps Calculator, text editor, browser, system info
Security Login (RBAC), per-app permission grants in /system/etc/permissions.json

Quick start

git clone https://github.com/YOUR_USERNAME/ApexOS.git
cd ApexOS
python -m venv venv
source venv/bin/activate   # Windows: venv\Scripts\activate
pip install -r requirements.txt
python run.py

Open http://127.0.0.1:8000

User Password
root password
guest guest

Hybrid architecture (Web APIs)

ApexOS bridges the virtual desktop to the host browser:

  • Networknavigator.connection / navigator.onLine (Settings → Network, network CLI)
  • Bluetoothnavigator.bluetooth (Settings → Bluetooth, bluetooth scan)
  • USBnavigator.usb (Settings → USB, lsusb)

Hardware calls are user-gated by the browser. Chrome/Edge on localhost or HTTPS work best.


.apx package format

An .apx file is a ZIP archive:

my-app.apx
├── manifest.json
├── index.js
└── (optional assets)

manifest.json

{
  "name": "Hello World",
  "id": "com.apex.helloworld",
  "version": "1.0.0",
  "author": "ApexOS",
  "permissions": ["hardware.network.read", "hardware.usb.read"],
  "entry": "index.js"
}

Install

  1. Open Packages on the desktop
  2. Select a .apx / .zip file
  3. Confirm permissions in the gatekeeper dialog

CLI:

apx list
apx remove com.apex.helloworld
perms

Sample package: packages/hello-world.apx

Permissions are stored in the VFS at /system/etc/permissions.json.


Shell commands

login / whoami / pwd / date / sysinfo
ls  cd  cat  write  touch  mkdir  rm
echo  ps  kill  matrix  clear
apx list | apx remove <id>
perms
lsusb
bluetooth scan
network
help

Project layout

ApexOS/
├── apps/                 # Built-in app manifests
├── packages/             # Sample .apx packages
├── src/
│   ├── api/              # FastAPI + desktop frontend
│   ├── auth/             # Authentication
│   ├── core/             # Kernel, scheduler, apx engine
│   └── filesystem/       # VFS
├── storage/disk.img      # Persistent disk (created at runtime)
├── run.py
├── requirements.txt
└── README.md

Roadmap implemented

  • Phase 1 — Network / Bluetooth / USB control panels + CLI
  • Phase 2 — .apx package format + install API + gatekeeper UI
  • Phase 3 — Permission registry + grant API
  • Phase 4 — apx, lsusb, bluetooth scan, network commands

License

MIT — see LICENSE.

Web Bluetooth / WebUSB behavior depends on the browser vendor. Use HTTPS or localhost for full API access.

About

Virtual operating system streamed in your browser — desktop GUI, terminal, filesystem, apps, and a Python kernel over WebSocket.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages