Skip to content

Manage and plan IT Rack. Take care of Your IP reservations offline or use Unifi API to read them.

License

Notifications You must be signed in to change notification settings

pbuzdygan/rakit

Repository files navigation

RAKIT

RAKIT Banner

RAKIT is a self-hosted dashboard for IT ops. Manage Your IP reservations offline or read it via Unifi API directly from Your Unifi stack. Visualize, manage and plan Your IT Cabinets. Export data at any time.

  • ✅ Modern UI (React + Vite + Tailwind)
  • ✅ Backend API (Node.js)
  • ✅ PWA – works offline and behaves like a native app
  • ✅ Manage multiple IT rack cabinets
  • ✅ Manage IP reservations including entire IP scopes
  • ✅ Designed for self-hosting (Docker, docker-compose, reverse proxy friendly)
  • ✅ Secured with encryption key

Demo / Screenshots

Main UI

Main UI IT Cabinets Dark Main UI IT Cabinets Light

Main UI IP Dash Dark Main UI IP Dash Light

Export data

Export Dark Export Light

Profiles management

Profiles Dark Profiles Light


Features

  • Manage IT Cabinets
  • Manage IP Reservations
  • Read IPs info directly from Unifi API integration
  • Add, edit, and delete API connection profiles
  • Generate export data
  • PIN guard built-in (secure access)
  • Offline mode (PWA, cache zasobów)
  • Data encryption - your API keys are secured with encryption key

Run with Docker (GHCR)

The easiest way to get started is to use compose file:

services:
  rakit:
    image: ghcr.io/pbuzdygan/rakit:latest
    container_name: rakit
    restart: unless-stopped

# Network mode for Rakit - recommended for using all Rakit API's integrations
    network_mode: host
    
# Rakit backend/frontend listens on port 8011 inside the container
# Not required in "network_mode host"
#    ports:
#      - "8011:8011"

# Persistent data (if backend writes anything to /data)
    volumes:
      - ./data:/data

# Environment variables
    environment:
      - PORT=8011 #in network_mode host You can set different than default port
      - DB_FILE=/data/rakit.sqlite
      - APP_PIN=REPLACE_WITH_YOUR_PIN #PIN 4-8 digits
      - APP_ENC_KEY=REPLACE_WITH_YOUR_KEY
      - NODE_ENV=production

Generate Your APP_ENC_KEY

Result of below command is Your encryption key - stored it securley - without it, Your Rakit will not start and Your API connection profiles will be lost.

openssl rand -base64 32

Buy Me a Coffee

If You like results of my efforts, feel free to show that by supporting me.

"Buy Me A Coffee"

BMC QR code

About

Manage and plan IT Rack. Take care of Your IP reservations offline or use Unifi API to read them.

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages