Process Manager & System Monitor for Developers
Documentation • Quickstart • Examples • Contributing • Discord
Sentinel is an open-source desktop application that combines process management with real-time system monitoring. Built with Rust and Tauri, it provides developers with a fast, secure, and intuitive way to manage development processes across macOS, Linux, and Windows.
Current Status: Alpha (v0.1.0) | License: MIT | Built by: Glincker (A GLINR Product)
- Start, stop, and restart multiple processes from a single interface
- YAML/JSON configuration files for reproducible development environments
- Dependency management with automatic startup ordering
- Auto-restart capabilities with configurable retry logic
- Aggregated log viewing with real-time updates
- Docker container integration
- Real-time CPU usage tracking (per-core breakdown available)
- Memory monitoring (RAM and swap utilization)
- Disk I/O performance metrics
- Per-process resource consumption
- Low-overhead monitoring (less than 5% CPU usage)
- Cross-platform desktop application (macOS, Linux, Windows)
- Command-line interface for terminal-based workflows
- Keyboard shortcuts for common operations
- Light and dark theme support
- Minimal resource footprint (under 50MB memory at idle)
brew tap glincker/tap
brew install sentinelDebian/Ubuntu (.deb):
wget https://github.com/glincker/sentinel/releases/latest/download/sentinel_0.1.0_amd64.deb
sudo dpkg -i sentinel_0.1.0_amd64.debAppImage:
wget https://github.com/glincker/sentinel/releases/latest/download/Sentinel-0.1.0-x86_64.AppImage
chmod +x Sentinel-0.1.0-x86_64.AppImage
./Sentinel-0.1.0-x86_64.AppImageDownload the .exe installer from the Releases page.
See Development Guide for detailed instructions.
# Clone repository
git clone https://github.com/glincker/sentinel.git
cd sentinel
# Install dependencies
npm install
# Build and run
./scripts/build.sh release1. Initialize Configuration
sentinel initThis creates a sentinel.yaml file in your project directory.
2. Configure Processes
Edit sentinel.yaml:
processes:
- name: backend
command: npm
args:
- run
- dev
cwd: ./server
env:
PORT: "8101"
- name: frontend
command: npm
args:
- run
- dev
cwd: ./client
env:
PORT: "8100"
depends_on:
- backend3. Start Processes
# Start all processes
sentinel start
# Or open the GUI
sentinel guiSee Quickstart Guide for a complete tutorial.
Sentinel includes pre-configured examples for popular development stacks:
| Stack | Description | Path |
|---|---|---|
| MERN | MongoDB + Express + React + Node.js | examples/mern/ |
| Next.js | Next.js Full-Stack + PostgreSQL | examples/nextjs/ |
| FastAPI | Python FastAPI + React + PostgreSQL | examples/python-fastapi/ |
| Spring | Spring Boot + React + PostgreSQL | examples/spring-react/ |
See Examples README for usage instructions.
- Quickstart Guide - Get up and running in 5 minutes
- FAQ - Frequently asked questions
- Examples - Real-world configuration examples
- Architecture - System design and technical decisions
- Testing Guide - Running and writing tests (99 tests, 94.7% coverage)
- Contributing Guide - How to contribute to Sentinel
- Roadmap - Planned features and timeline
Sentinel is built with a multi-layered architecture:
- Backend: Rust (process management, system monitoring, business logic)
- Frontend: Svelte 5 with TypeScript (reactive UI components)
- Desktop Framework: Tauri 2.0 (3-5MB bundle size vs 80-120MB for Electron)
- CLI: Rust with clap (command-line interface)
- Configuration: YAML/JSON parsing with serde
Performance Characteristics:
- Startup time: < 1.2 seconds
- Memory usage: 35MB idle, <50MB under load
- CPU usage: 2% idle, <5% during monitoring
See Architecture Documentation for details.
Sentinel maintains high code quality with comprehensive test coverage:
| Test Type | Count | Coverage |
|---|---|---|
| Unit Tests | 45 | Backend logic, utilities |
| Integration Tests | 12 | Multi-component workflows |
| Security Tests | 15 | Input validation, injection prevention |
| CLI E2E Tests | 18 | Command-line interface |
| Performance Benchmarks | 9 | Critical path performance |
| Total | 99 | 94.7% |
Run tests:
# Run all tests
cargo test --all-features --workspace
# Generate coverage report
cargo llvm-cov --all-features --workspace --htmlSee Testing Guide for comprehensive documentation.
We welcome contributions from the community! Here's how to get started:
- Fork the repository on GitHub
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/sentinel.git - Create a feature branch:
git checkout -b feature/your-feature-name - Make your changes following our Code Standards
- Run tests:
cargo test && npm test - Commit your changes with conventional commits
- Push to your fork:
git push origin feature/your-feature-name - Open a Pull Request using our PR template
See CONTRIBUTING.md for detailed guidelines.
- Core process management
- System monitoring (CPU, memory, disk I/O)
- Desktop GUI with Svelte
- CLI implementation
- 99 tests with 94.7% coverage
- Auto-restart implementation
- Health check execution
- Real-time log aggregation viewer
- Interactive CPU/memory graphs (uPlot)
- Process search and filtering
- System tray integration
- Global hotkeys
- Export capabilities (CSV, JSON)
- Custom themes and UI customization
- Plugin system foundation
See Full Roadmap for the complete plan.
- GitHub Discussions: Ask questions, share ideas
- Discord: Join our community
- Issue Tracker: Report bugs, request features
- Email: [email protected]
Sentinel is released under the MIT License.
Copyright (c) 2025 Glincker (A GLINR Product)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
See LICENSE for full text.
We take security seriously. If you discover a security vulnerability, please:
- DO NOT open a public GitHub issue
- Email us at [email protected] with details
- Allow us 90 days to address the issue before public disclosure
See our Security Policy for more information.
Sentinel is built with excellent open-source technologies:
- Rust - Systems programming language
- Tauri - Desktop application framework
- Svelte - Reactive UI framework
- sysinfo - System information library
- tokio - Async runtime for Rust
- clap - Command-line argument parser
Thank you to all contributors and the open-source community.