Thanks for the feedback on #63. I've created this new PR, which merges into #63, to address your comment. I will work on the changes and keep this PR's description up to date as I make progress. Original PR: #63 Triggering review: https://github.com/blackboxprogramming/BlackRoad-Operating-System/pull/63#discussion_r2536274127 > @copilot open a new pull request to apply changes based on [this feedback](https://github.com/blackboxprogramming/BlackRoad-Operating-System/pull/63#discussion_r2536249063) <!-- START COPILOT CODING AGENT TIPS --> --- 💬 We'd love your input! Share your thoughts on Copilot coding agent in our [2 minute survey](https://gh.io/copilot-coding-agent-survey).
BlackRoad Operating System
A nostalgic Windows 95-inspired web interface showcasing the complete BlackRoad AI ecosystem.
Overview
BlackRoad OS is a fully functional web-based operating system interface that brings together AI orchestration, blockchain technology, social media, video streaming, and gaming - all wrapped in a beautiful 1995 aesthetic.
Features
🤖 AI & Communication
- RoadMail - Email client for managing communications
- BlackRoad Social - Social network for the BlackRoad community
- AI Assistant - Interactive AI chat interface
⛓️ Blockchain Infrastructure
- RoadChain Explorer - View blocks, transactions, and network stats
- RoadCoin Miner - Mine RoadCoin cryptocurrency
- Wallet - Manage your RoadCoin assets
🎮 Gaming Ecosystem
- Road City - City-building simulation game
- RoadCraft - Voxel world building game
- Road Life - Life simulation game
🌐 Web & Tools
- RoadView Browser - Web browser for the information superhighway
- BlackStream - Decentralized video platform
- Terminal - Command-line interface
- File Explorer - File management system
- GitHub Integration - Repository management
- Raspberry Pi Manager - Connected device management
Getting Started
Quick Start
🔑 Canonical UI entry point:
backend/static/index.html
The desktop interface is bundled with the FastAPI backend so it can load data from the API without breaking features. Use the backend server (locally or in Railway/GoDaddy) to serve the UI instead of opening the HTML file directly.
# Clone the repository
git clone https://github.com/blackboxprogramming/BlackRoad-Operating-System.git
cd BlackRoad-Operating-System
# Start the FastAPI backend (serves backend/static/index.html)
cd backend
python -m venv .venv && source .venv/bin/activate # optional but recommended
pip install -r requirements.txt
uvicorn app.main:app --reload
# Visit the desktop UI
# -> http://localhost:8000/ serves backend/static/index.html
GitHub Pages / GoDaddy Deployment
Only the static UI should be served from GitHub Pages or GoDaddy. The backend API and services continue to run on Railway so they remain isolated from the static hosting tier.
The default Deploy to GitHub Pages workflow now bundles the canonical front-end (everything under backend/static plus root-level assets such as index.html) into a temporary dist/ directory before uploading it. This ensures that Pages/GoDaddy only receives the static bundle, while the backend code stays out of the artifact and continues to deploy independently to Railway.
To publish manually without the workflow:
- Copy the contents of
backend/static/and any required root assets into a temporary folder (e.g.,dist/). - Upload that folder to your Pages or GoDaddy hosting destination.
- Keep the backend running on Railway so the static UI can communicate with the live services.
For cloud deployments (Railway, GoDaddy, etc.), make sure that
backend/static/index.htmlis the file exposed at/so the UI can talk to the API routes that live under/api/*.
GitHub Pages Deployment
The GitHub Pages workflow publishes the canonical frontend from
backend/static/. If you customize the UI, edit
backend/static/index.html (and any supporting assets in that directory) so
the validation and deploy jobs keep pointing at the same file.
Railway Secrets & Automation
- Vercel-free deploys – the backend ships with a Railway-native workflow
(
Deploy to Railway) so you can ignore Vercel entirely. - Single source of truth –
backend/.env.exampleenumerates every runtime variable and uses obvious placeholders so you can paste the file into the Railway variables dashboard without leaking credentials. - CI enforcement – the GitHub Action
Railway Secrets & Automation Auditrunsscripts/railway/validate_env_template.pyon every PR + nightly to make sure the template,railway.toml, andrailway.jsonnever drift from the FastAPI settings. - Manual check – run
python scripts/railway/validate_env_template.pylocally to get the same assurance before pushing.
Testing
Backend tests run against an isolated SQLite database by default. A helper script bootstraps a virtual environment, installs dependencies, and executes pytest with sensible defaults for local development.
# From the repo root
bash scripts/run_backend_tests.sh
The script exports ENVIRONMENT=testing, points TEST_DATABASE_URL to a local
test.db SQLite file (override it to point at Postgres if needed), and sets
ALLOWED_ORIGINS so CORS validation passes during the suite. To rerun tests
inside the prepared environment manually:
cd backend
source .venv-tests/bin/activate
pytest -v --maxfail=1
Architecture
Single-Page Application
BlackRoad OS is built as a single-page HTML application with embedded CSS and JavaScript:
- No build process required
- No external dependencies
- Pure HTML/CSS/JavaScript
- Works offline
Window Management
- Draggable windows
- Minimize/Maximize/Close functionality
- Z-index management for window layering
- Taskbar integration with active window tracking
Design Philosophy
- Nostalgic: Windows 95-inspired UI with authentic styling
- Complete: Full ecosystem of interconnected applications
- Immersive: Desktop icons, start menu, taskbar, and system tray
- Interactive: Functional window management and application switching
Technology Stack
- HTML5 - Structure and content
- CSS3 - Styling with Grid and Flexbox
- Vanilla JavaScript - Window management and interactivity
- No frameworks - Pure, dependency-free code
Components
Desktop Environment
- Grid-based icon layout
- Double-click to launch applications
- Teal background (classic Windows 95)
Window System
- Title bars with app icons and names
- Window controls (minimize, maximize, close)
- Menu bars and toolbars
- Content areas with custom layouts
Taskbar
- Start button with menu
- Application switcher
- System tray icons
- Live clock
Applications
Each application has its own custom interface:
- Email client with folders and preview pane
- Social media feed with posts and interactions
- Video platform with player and recommendations
- Blockchain explorer with live network stats
- Mining dashboard with real-time metrics
- Games with pixel art graphics
Customization
Adding New Applications
- Create the window HTML structure:
<div id="my-app" class="window" style="left: 100px; top: 100px; width: 600px; height: 400px;">
<div class="title-bar" onmousedown="dragStart(event, 'my-app')">
<div class="title-text">
<span>🎨</span>
<span>My App</span>
</div>
<div class="title-buttons">
<div class="title-button" onclick="minimizeWindow('my-app')">_</div>
<div class="title-button" onclick="maximizeWindow('my-app')">□</div>
<div class="title-button" onclick="closeWindow('my-app')">×</div>
</div>
</div>
<div class="window-content">
<!-- Your app content here -->
</div>
</div>
- Add desktop icon:
<div class="icon" ondblclick="openWindow('my-app')">
<div class="icon-image">🎨</div>
<div class="icon-label">My App</div>
</div>
- Add to start menu:
<div class="start-menu-item" onclick="openWindow('my-app'); toggleStartMenu();">
<span style="font-size: 18px;">🎨</span>
<span>My App</span>
</div>
- Add to taskbar titles (in JavaScript):
const titles = {
// ... existing titles
'my-app': '🎨 MyApp'
};
Browser Compatibility
BlackRoad OS works in all modern browsers:
- Chrome/Edge (recommended)
- Firefox
- Safari
- Opera
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Inspired by Windows 95 and the nostalgic computing era
- Built with love for the BlackRoad ecosystem
- Special thanks to the AI development community
Project Vision
BlackRoad OS represents a complete AI-powered ecosystem:
- 1000+ AI agents working in harmony
- Blockchain infrastructure with RoadChain
- Decentralized applications for social media and video
- Gaming experiences that blend creativity and strategy
- Developer tools for building the future
Support
For issues, questions, or contributions, please visit:
- GitHub Issues: Report a bug
- Discussions: Share ideas and ask questions
Built with 💻 by the BlackRoad community
Where AI meets the open road 🛣️