Skip to content

ieee-cs-bmsit/System-Playground

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Visual System Builder

CI Release License

An interactive visual system builder for learning operating system concepts through hands-on simulation and experimentation.

✨ Features

  • 🎨 Visual Node-Based Interface - Build complex system architectures with an intuitive drag-and-drop interface
  • ⚑ High-Performance Simulation Engine - Rust/WebAssembly powered simulation for real-time execution
  • πŸ“± Cross-Platform - Available as desktop app (Windows, macOS, Linux) and Android mobile app
  • πŸŽ“ Educational Levels - Structured learning path from basics to advanced OS concepts
  • πŸ” Real-Time Visualization - See how processes, memory, and scheduling work in real-time
  • πŸ’Ύ Memory Management - Visualize paging, segmentation, and virtual memory
  • πŸ”„ Process Scheduling - Experiment with different scheduling algorithms
  • πŸ” Deadlock Detection - Understand and resolve deadlock scenarios
  • πŸ“Š Performance Metrics - Track and analyze system performance

πŸ“₯ Installation

Desktop Application

Download the latest release for your platform:

Android App

Download APK and install on your Android device.

Build from Source

# Clone the repository
git clone https://github.com/ieee-cs-bmsit/visual-system-builder.git
cd visual-system-builder

# Install dependencies
npm install

# Build the simulation engine (Rust/WASM)
cd simulation-engine
wasm-pack build --target web --release
cd ..

# Run in development mode
npm run dev

# Build for production
npm run build

# Build desktop app
npm run tauri build

# Build Android app (requires Android Studio)
npm run tauri android build

πŸš€ Quick Start

  1. Launch the application - Open the desktop app or Android app
  2. Choose a level - Select from beginner to advanced scenarios
  3. Build your system - Drag and drop components to create your OS architecture
  4. Run simulation - Click "Start" to see your system in action
  5. Analyze results - Review performance metrics and behavior

πŸ—οΈ Architecture

visual-system-builder/
β”œβ”€β”€ src/                    # React frontend
β”‚   β”œβ”€β”€ components/         # UI components
β”‚   β”œβ”€β”€ modules/           # OS module simulation logic
β”‚   β”œβ”€β”€ levels/            # Educational scenarios
β”‚   └── simulation/        # Simulation state management
β”œβ”€β”€ simulation-engine/     # Rust/WASM backend
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ memory/        # Memory management
β”‚   β”‚   β”œβ”€β”€ process/       # Process scheduling
β”‚   β”‚   └── lib.rs         # WASM bindings
β”‚   └── Cargo.toml
β”œβ”€β”€ src-tauri/             # Tauri desktop/mobile app
β”‚   β”œβ”€β”€ src/main.rs        # Tauri main process
β”‚   └── tauri.conf.json    # App configuration
└── .github/workflows/     # CI/CD pipelines

πŸ› οΈ Technology Stack

  • Frontend: React 18, Vite, ReactFlow, Zustand
  • Simulation Engine: Rust, WebAssembly (wasm-pack)
  • Desktop/Mobile: Tauri
  • Styling: Tailwind CSS
  • Testing: Jest, Playwright, Cargo Test
  • CI/CD: GitHub Actions

πŸ“š Documentation

🀝 Contributing

We welcome contributions from the community! Please read our Contributing Guide to get started.

Development Setup

# Install dependencies
npm install
cd simulation-engine && cargo build && cd ..

# Run tests
npm test                    # Frontend tests
cd simulation-engine && cargo test && cd ..  # Rust tests

# Run linters
npm run lint
cd simulation-engine && cargo clippy && cd ..

πŸ“Š Project Status

This project is actively maintained by the IEEE Computer Society, BMSIT&M Chapter.

  • βœ… Desktop applications for Windows, macOS, Linux
  • βœ… Android mobile app
  • βœ… Comprehensive testing suite
  • βœ… Automated CI/CD pipeline
  • 🚧 iOS app (planned)
  • 🚧 Web-based version (planned)

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Built with ❀️ by the Visual System Builder Team
  • IEEE Computer Society, BMSIT&M Chapter
  • All our amazing contributors

πŸ“ž Support


Made with ❀️ for operating systems education

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors