ZPNL is the definitive resource scheduling platform for high-velocity engineering teams. Ditch the spreadsheets and Slack wars. Visualize, book, and manage your physical infrastructure with a tool as modern as the code you write.
In small to mid-sized organizations, managing physical test devices—routers, switches, servers—is often a nightmare of:
- ❌ Phantom Bookings: "I thought Bob was done with it?"
- ❌ Spreadsheet Hell: Outdated, broken shared docs.
- ❌ Lost Productivity: Developers waiting for gear that's actually sitting idle.
- ❌ Shadow Usage: No accountability on who broke the config.
ZPNL eliminates the noise. It provides a single source of truth for every cable, rack, and blinking light in your lab. It's not just a scheduler; it's a productivity multiplier.
- ⚡ Blazing Fast Performance: built on FastAPI and Vite, interactions are instantaneous. No page reloads, no lag.
- 🎨 Stunning Visual Design: A glassmorphism-inspired Dark Mode UI that feels like a premium consumer app, not enterprise gray-ware.
- 🔒 Local-First Security: Your topology is your trade secret. ZPNL is designed to be self-hosted behind your firewall. No cloud leaks, no external dependencies.
- 👥 Granular Control: Role-Based Access Control (RBAC) ensures only Admins can decommission core routers, while Developers have freedom to book what they need.
A crystal-clear, 7-day Gantt-style view of every device alongside its availability. Spot gaps instantly.
- Drag & Drop (Roadmap) concept.
- Conflict Prevention: The engine physically prevents overlapping bookings.
Need a device for the rest of the day?
- One click using the "Quick Book" star button.
- Smart defaults based on your user profile's favorite device.
- Custom Schemas: Define platform-specific fields (IOS version, Rack ID, Serial Port) using JSON schemas.
- Live Search: Filter hundreds of devices in milliseconds.
- Broadcast maintenance windows or critical outages directly in the dashboard.
- Keep the entire team aligned without mass emails.
In an era of cloud-everything, ZPNL stands apart by empowering you to own your infrastructure.
- Self-Hosted: Run it on an internal Ubuntu VM, a Raspberry Pi, or a Docker container.
- Data Sovereignty: All booking data lives in a local
SQLitedatabase (upgradeable to Postgres). - Zero Telemetry: We don't track your usage. Your lab is your business.
ZPNL is designed to be deployed in minutes, not days.
- Python: 3.9+
- Node.js: 18+
- OS: Linux (Ubuntu/Debian recommended), macOS, or Windows (WSL2).
git clone https://github.com/your-org/zpnl.git
cd zpnlThe backend powers the API and database.
cd backend
# Create virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Start the API Server
# Auto-creates the SQLite database on first run
uvicorn app.main:app --host 0.0.0.0 --port 8000The frontend connects to your backend API.
cd frontend
# Install packages
npm install
# Build for production
npm run build
# Preview the production build
npm run preview -- --host- Reverse Proxy: We recommend using Nginx or Traefik in front of the Uvicorn and Vite services.
- Process Management: Use
systemdorsupervisordto keep the Python backend running. - Database: For labs with >50 concurrent users, switch the SQLAlchemy connection string in
backend/app/database.pyto PostgreSQL.
Need custom integrations with LDAP/Active Directory or SSO? Contact our Engineering Team for enterprise licensing and support packages.