Skip to content

atdma/browserbox

Repository files navigation

BrowserBox

A browser-based desktop-style workspace: draggable windows, taskbar, and small apps (Welcome, todos, calculator, minesweeper, file explorer, notepad, terminal).

Requirements

  • Node.js 20+
  • MongoDB (local or Atlas), unless you use Docker Compose (Mongo is included there)

Setup

Copy .env.example to .env and set at least MONGODB_URI and AUTH_SECRET (32+ characters).

npm install
npm run dev

Open http://localhost:3000.

WebSocket protocol summary: docs/websocket.md.

Production

npm run build
npm start

Signed-in sessions use a JWT stored in sessionStorage and sent over the app WebSocket (/api/ws). Use a strong AUTH_SECRET and consider a shorter SESSION_MAX_AGE_SEC in code if you need tighter session lifetime.

Docker

docker compose up -d --build

Requires AUTH_SECRET in .env next to docker-compose.yaml. The stack uses the bundled MongoDB URL by default.

About

Browser-based desktop UI with draggable windows, taskbar, and built-in apps.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages