Features & Capabilities

Modern Point of Presence management platform for global amateur radio networking

What You Can Do

Connect Globally

Multiple Points of Presence worldwide:

  • Choose your preferred region
  • Distributed edge locations
  • North America, Europe, and beyond
  • Low-latency connections
  • Geographic redundancy
Create Network Tunnels

Set up WireGuard tunnels in minutes:

  • Point-and-click tunnel creation
  • Automatic key generation
  • QR codes for mobile devices
  • Ready-to-use configuration files
  • Connect from anywhere globally
Get Public IP Addresses

Request and manage IP allocations:

  • IPv4 address blocks
  • Subnet allocation (/29 to /25)
  • Instant approval for small allocations
  • Public, routable IP addresses
  • Bring Your Own IP (BYOIP) support
Easy Configuration Export

Download configs for your platform:

  • One-click config generation
  • Many platform formats supported
  • Copy-paste ready configurations
  • DHCP server configs included for additionally Routed IP's
  • BGP routing configurations

Technical Features

Multi-Platform WireGuard Support

Generate configurations for 9+ platforms:

  • EdgeRouter (Ubiquiti)
  • MikroTik RouterOS
  • OpenWrt
  • pfSense/OPNsense
  • Linux (systemd-networkd)
  • Linux Network Namespaces
  • macOS
  • Docker containers
  • Mobile (QR codes for iOS/Android)
Advanced Routing

Sophisticated routing capabilities:

  • BGP dynamic routing with ASN management
  • Static route configuration
  • Subnet allocation management
  • IPv4 and IPv6 dual-stack support
Security & Access Control

Enterprise-grade security features:

  • Role-based access control (Admin, Operator, User)
  • WireGuard key regeneration
  • Email verification and password resets
  • OIDC/OAuth integration support
  • CSRF protection
  • Audit event logging
User Management

Comprehensive user administration:

  • User quotas and resource limits
  • Self-service network requests
  • Request approval workflows
  • Auto-approval for qualifying requests
  • API key management for automation
  • Timezone-aware displays
Infrastructure Organization

Hierarchical resource management:

  • Node groups for logical organization
  • Nodes (physical/virtual servers)
  • Interfaces (WireGuard, Loopback, Interconnect)
  • Network allocation and subnetting
  • ASN assignment and tracking
Automation & Integration

Built for automation:

  • RESTful API (v1 and legacy)
  • Email notifications with templates
  • Automated configuration generation
  • DHCP server configurations for Additionally routed prefixes
  • Self-installing setup scripts

Changelog

  • Enhancement add changelog data tracking file - 2025-11-17
  • Documentation add admin user approval guide to help section - 2025-11-17
  • Fix set ASN properties before adding to session to avoid warnings - 2025-11-17
  • New add debug routes and blueprint registry for development - 2025-11-17
    - Add blueprint registry for automatic route discovery - Add debug UI showing all registered routes - Provide development tools for route inspection
  • New add support email configuration option - 2025-11-17
  • Refactor improve UI route handlers and setup template - 2025-11-17
    - Enhance common UI utilities - Update account and help route handlers - Improve tools functionality - Refine setup template layout
  • Fix update frontend JavaScript modules - 2025-11-17
    - Fix loading indicator behavior - Update password validation display
  • New enhance server core functionality and template globals - 2025-11-17
    - Add get_asn template global function - Include sub-allocations in networks_by_owner - Improve query ordering for network hierarchy - Add site_name and other utility functions - Enhance API model and route handling
  • Refactor update navigation and layout partials - 2025-11-17
    - Improve sidebar organization - Update footer and navbar styling - Enhance password requirements display - Add email verification warning partial
  • Refactor improve various templates and UI consistency - 2025-11-17
    - Update base template and dashboard layouts - Enhance user guide documentation - Improve ASN and user list displays - Use dynamic site naming throughout templates - Fix minor styling and formatting issues
  • Fix ensure client modified_at timestamp updates and improve forms - 2025-11-17
    - Explicitly update modified_at when client is updated - Add validation for empty tunnel names - Improve client add/edit form layouts - Add routing configuration partial
  • New improve tunnel interface templates - 2025-11-17
    - Display location information (region/datacenter) in tunnel list - Show full public keys instead of truncated versions - Use dynamic site name instead of hardcoded values - Simplify tunnel forms and improve layouts
  • Fix resolve ASN approval session warning and improve request UI - 2025-11-17
    - Fix session warning by adding ASN to session before setting properties - Display request name instead of ID in titles - Improve prefix notation formatting - Add audit event display for approved requests - Show ownership indicator for user's own requests
  • New improve network allocation interface and add hierarchy depth tracking - 2025-11-17
  • New enhance landing page with typewriter effect and improved styling - 2025-11-17
  • New add audit event API and enhance admin configuration - 2025-11-17
    - Add audit event schema and API endpoints - Add support email configuration option - Improve admin configuration interface
  • New enhance topology visualization with improved network details - 2025-11-17
  • New add database rollback command to admin CLI - 2025-11-17
    - Add db-rollback command with target revision support - Include confirmation prompt for safety - Support rolling back to specific revisions or steps
  • New implement modular user approval workflow - 2025-11-17
    - Add approval status fields to User model (pending/approved/rejected) - Create approval_required decorator for route protection - Add admin interface for managing pending users - Implement email notifications for approval/rejection - Add pending approval page for users awaiting approval - Configure approval requirement via users.require_approval setting - Support both OIDC and local authentication workflows
  • Fix add oidc_secrets.json template for debian packaging - 2025-11-17
  • Fix merge migration heads by chaining add_user_approval after add_callsign_001 - 2025-11-17
    This migration merges two divergent migration branches: - Branch 1: ... -> c6d42a1091c0 -> ... -> add_callsign_001 - Branch 2: ... -> add_user_approval (now chained after add_callsign_001)
  • Enhancement remove unused universal_search_content.html template - 2025-11-12
  • New add BYOIP info card partial for network selection page - 2025-11-12
  • New improve sidebar organization and update features page - 2025-11-12
  • New add validation warnings for missing dependencies in node and node group forms - 2025-11-12
  • New add public key and tunnel IP columns to list view and improve form layouts - 2025-11-12
  • New modernize request forms with card-based layouts and improved styling - 2025-11-12
  • New add network utilization display and validation to interface creation - 2025-11-12
  • Fix explicitly delete client routing to ensure proper cascade cleanup - 2025-11-12
  • New add --force flag to bypass password validation in CLI user creation - 2025-11-12
  • Fix remove duplicate request blueprint that filtered to only pending requests - 2025-11-12
    - Remove duplicate blueprint registration that filtered requests by status == new - Fix issue where users could only see pending requests in their list - Users now see full request history including approved and rejected requests - Add add_context_func to interface blueprint for consistency
  • Fix resolve BYOIP AttributeError and improve page styling - 2025-11-12
    Fix AttributeError when accessing enable_byoip config and enhance the BYOIP request page to match the polished design of other request forms.
  • Refactor standardize list pages with universal search component - 2025-11-12
    Migrate all list pages from universal_search_content.html to universal_search.html for consistent search and filtering across the application.
  • New add create-user command to admin CLI - 2025-11-06
    - Add create-user command to create new user accounts via CLI - Support username, email, password options - Support auto-password generation - Support verified and enabled flags
  • New improve navigation and login redirect flow - 2025-11-06
    - Move Home link from sidebar to footer as "Landing Page" - Remove Home link from sidebar navigation for authenticated users - Redirect users to tunnel list after successful login - Landing page always accessible via footer link
  • Fix resolve ESLint errors in frontend JavaScript - 2025-11-06
    - Remove unused variables in timezone.js - Replace jQuery tooltip initialization with Bootstrap 5 native API - Add bootstrap global declarations to resolve undefined references - Export utility functions for potential future use
  • New make email notification checkbox more prominent on tunnel creation - 2025-11-05
    - Changed to larger toggle switch style - Added primary blue border and background tint - Increased label font size and weight - Made label and checkbox clickable with cursor pointer - More visually prominent to catch user attention
  • Fix show My Infrastructure section only for operators - 2025-11-05
    - Removed check for owned infrastructure - Only users with operator role can see the section - Ensures proper role-based access control
  • Fix add missing steal action handling in admin request view - 2025-11-05
  • Enhancement update configuration defaults - 2025-11-05
  • Enhancement enhance Debian packaging configuration - 2025-11-05
    - Added redis-server as package dependency - Include CHANGELOG_DATA.txt in package installation - Fixed config file ownership for pop-controld user - Added pop-controld-worker service support - Added pop-controld-worker systemd service file
  • Enhancement add request import to API module - 2025-11-05
  • Refactor update OIDC configuration management - 2025-11-05
    - Streamlined OIDC config file handling - Improved JSON configuration updates
  • Enhancement add debug logging for OIDC profile data - 2025-11-05
    - Log full OIDC profile only when debug mode enabled - Added audit logging import for future enhancements
  • New expand features page with detailed capability cards - 2025-11-05
    - Added "What You Can Do" section with feature cards - Detailed descriptions of global connectivity options - Secure tunnel creation workflow highlights - Public IP address allocation information
  • Refactor improve sidebar layout with CSS variables - 2025-11-05
    - Added CSS variable for sidebar width consistency - Fixed sidebar height to full viewport - Updated content wrapper margin calculations
  • Fix improve clipboard copy functionality - 2025-11-05
    - Prevent double-initialization of clipboard buttons - Add no-debounce class to prevent form submission interference - Fix selector string concatenation in tunnel view - Add error handling for empty or missing content
  • New add IP address lookup documentation to user guide - 2025-11-05
    - Added new section with /myip endpoint usage examples - Included curl commands and jq filtering examples
  • New add /myip API endpoint for IP address lookup - 2025-11-05
    - Returns JSON with client's IP address - No authentication required - Handles proxy headers and strips IPv4-mapped IPv6 prefix
  • New display user IP address in footer - 2025-11-05
    - Added client_ip() template global that handles proxy headers - Strips IPv4-mapped IPv6 prefix for cleaner display
  • Fix correct callsign field alignment in user profile - 2025-11-05
  • Fix Add missing fallbacks for config sections to prevent crashes - 2025-11-03
    - Add fallback for auth.oidc scopes config - Add fallbacks for all email section configs (from, host, port, starttls, username, password, signature) - Prevents NoSectionError when email section is missing from config.ini - Ensures admin configuration page loads even with minimal config
  • Fix Add fallback for missing OIDC config section - 2025-11-03
    - Fix ConfigParser NoSectionError when auth.oidc section doesn't exist - Add fallback=None to config.get() call to handle missing sections gracefully - Prevents 500 error on /admin/configuration page when OIDC not configured
  • Enhancement Add default placeholder configuration values - 2025-11-03
    - Populate example config with sensible defaults and placeholders - Uncomment required sections to prevent config getter crashes - Standardize comment style to use # instead of ;
  • Fix Update ARDC URL and add null check for node group - 2025-11-03
    - Change setup.py URL from ardc.org to ardc.net - Add null check for node.group in audit log to prevent AttributeError
  • New Add OIDC external ID management for users - 2025-11-03
    - Add confirmation modal when changing user OIDC external ID - Restrict external ID field to superadmin role - Add user_form partial with OIDC external ID field - Create reusable OIDC change confirmation modal template - Add JavaScript handler to prevent accidental changes
  • New Add OIDC auto-configuration with endpoint discovery - 2025-11-03
    - Add discover_oidc_endpoints() to auto-discover OAuth endpoints - Auto-generate redirect URI from base URL - Update OIDC JSON config file with client credentials - Read and display OIDC credentials in admin UI - Improved admin configuration template with client ID/secret fields - Add copy button for redirect URI - Better sectioned layout for OIDC settings
  • New Improve database constraint error messages - 2025-11-03
    - Parse constraint names from PostgreSQL errors - Display specific field names in conflict messages - Provide more helpful user-facing error messages
  • New Add OIDC session cookie configuration and error handling - 2025-11-03
    - Configure session cookies for OIDC OAuth redirects - Allow insecure cookies in debug mode for development - Add OAuth error handler with user-friendly messages - Handle email verification and access denied errors
  • Refactor Clean up frontend JavaScript code - 2025-11-03
    - Remove unused variable in clipboard.js - Add global Set declaration for debounce.js linting - Fix regex escaping in password-validation.js - Simplify Object.entries usage in table-sort.js
  • Build Add --platform linux/amd64 to dpkg target for cross-platform builds - 2025-11-03

  • Uncategorized Add callsign field with OIDC sync support - 2025-10-31
    - Add callsign column to users table via migration - Update User model with callsign field - Sync callsign from OIDC profile during authentication - Add callsign field to user edit form and view page - Handle callsign in user controller for form submissions - Improve OIDC sync to allow login on username/email conflicts - Log sync conflicts and show warning instead of blocking login
  • Uncategorized Add IPv6 support to subnet calculator - 2025-10-31
    - Implement full IPv6 CIDR calculations with 128-bit BigInt math - Add IPv6 subnet planning and splitting functionality - Update subnet modal to display IPv6-specific information - Support IPv6 address compression and expansion - Handle both IPv4 and IPv6 on same interface
  • New Implement tunnel save confirmation modal and improve key regeneration workflow - 2025-10-30
    - Add save confirmation modal to review changes before tunnel save/update - Change key regeneration to populate form fields instead of direct save - Store regenerated private keys in session to display once after save - Replace network multi-select with checkbox interface for better UX - Extend search/filter to support grid view cards in addition to tables - Move action buttons below tunnel name in view page - Add success alerts when keys are regenerated to remind user to save
  • Enhancement update development tools and configuration - 2025-10-30
    - Enhance changelog generation script with improved formatting - Update HTTPS development server script with better configuration - Update configurations README with latest documentation
  • New modernize UI templates and enhance account management - 2025-10-30
    - Add API key management interface with create/edit/view capabilities - Enhance account settings page with improved layout - Modernize base template with updated navigation and styling - Improve dashboard with better information hierarchy - Add comprehensive user guide documentation - Enhance landing page and error pages with better UX - Update sidebar navigation with cleaner structure - Improve request templates with better form layouts - Streamline menu templates across all model types - Add features page with capability overview - Update footer with improved styling
  • New improve controllers, models, and schema handling - 2025-10-30
    - Add enhanced ASN and client controller functionality - Improve notification controller with better error handling - Enhance request controller with additional validation - Update interface schema with improved field handling - Add better model validation for ASN and client objects - Update cleanup CLI command with improved logic
  • New enhance model view and list templates with improved layouts - 2025-10-30
    - Modernize view pages with card-based layouts and better information hierarchy - Improve list templates with enhanced styling and better data presentation - Add consistent formatting across all model types - Enhance audit event display with better formatting - Improve tunnel, node, client, ASN, network, and user view pages - Add better visual separation and readability to all list views
  • New add frontend JavaScript modules for enhanced interactivity - 2025-10-30
    - Add searchable-owner.js for dynamic owner search and selection - Add table-filter.js for client-side table filtering - Update common.js with shared utility functions - Improve user experience with live search and filtering capabilities
  • New enhance form UX with auto-naming and owner selection - 2025-10-30
    - Add auto-naming support for ASN and network forms - Calculate next index based on existing resources and pending requests - Fix null/None handling in next index calculation - Improve searchable owner select partial with better styling - Add helper text to form fields for better user guidance - Ensure auto-naming works for both user and admin flows
  • New enhance admin interface with new tools and settings - 2025-10-30
    - Add data integrity scanner for database health checks (superadmin only) - Add Redis configuration options to settings page - Add API keys enable/disable toggle to settings - Add configurable TTL settings for email queue (result and failure) - Restrict configuration page to superadmin role only - Add admin tools UI module for specialized administrative functions - Display queue TTL information in email queue status page
  • Refactor replace individual delete pages with shared modal - 2025-10-30
    - Add reusable delete_modal.html partial for all delete confirmations - Remove individual delete.html templates from all model directories - Simplifies deletion UX with consistent modal-based confirmation - Reduces code duplication across 8 model types
  • New add superadmin role and improve audit logging - 2025-10-30
    - Add SUPERADMIN role to User model with elevated privileges - First admin user created via CLI automatically gets SUPERADMIN role - Subsequent admins get ADMINISTRATOR role only - Add system user support for audit events (replaces None user) - Update CLI commands to use system user for audit logging - Add migrations for superadmin role and audit event username preservation - Display superadmin status in admin list command
  • New Modernize request forms with card layouts and enhanced UX - 2025-10-24
    Updated tunnel and ASN request forms to match the modern design of network request forms, improving visual consistency and user experience.
  • New add BIRDC BGP configuration generation - 2025-10-24
    - Create birdc.py module for generating BIRD BGP configurations - Support IPv4 and IPv6 BGP sessions over WireGuard tunnels - Include import/export filters with BGP path validation - Configure next hop settings for advertised networks - Add admin toggle to enable/disable BIRDC config display - Integrate BIRDC config generation into tunnel config output - Display complete copy-pasteable BIRDC config for BGP tunnels - Fix IPv4Interface/IPv6Interface string conversion in config generation
  • New redesign network allocation page with improved UX - 2025-10-24
    - Convert to card-based layout with visual hierarchy - Add "Selected Network Pool" card showing chosen network - Add "Network Request Details" form card - Style request button with blue gradient - Add comprehensive subnet sizing guidance panel - Explain /29 as recommended starting point - Highlight ability to request more IPs later - Include subnet calculation examples - Improve responsive layout with wider info panel - Add icons throughout for better visual navigation
  • New improve form UX with auto-naming and styled helper text - 2025-10-24
    - Add reusable calculate_next_index() helper for consistent auto-naming - Implement auto-naming for tunnels (Tunnel 1, Tunnel 2, etc.) - Implement auto-naming for networks (Network 1, Network 2, etc.) - Implement auto-naming for ASN requests (ASN Request 1, etc.) - Style helper text in blue (text-primary) for better visibility - Move regenerate keys button into WireGuard form card - Add modal confirmation for preshared key regeneration - Add ASN requirement warning for BGP routing
  • New Reorganize sidebar navigation and improve template UI - 2025-10-23
    - Reorganize sidebar: Move 'My Resources' to top for all users - Add visual separator (light blue line) before admin sections - Reorder admin sections: Ticket Management first, then Infrastructure, then Administration - Add fa-fw class to all sidebar icons for consistent text alignment - Fix admin_exists naming conflict in setup (renamed to has_admin) - Move 'Initial Configuration' section to only show when no admin exists - Improve template consistency across all views - Update styles for better visual hierarchy
  • New Improve navigation and development experience - 2025-10-24
    Enhanced sidebar navigation and developer tooling: - Collapsed sidebar sections by default for cleaner initial state - Added Email Queue link to admin navigation - Implemented debug-only cache-busting for faster development - Improved sidebar scrollbar visibility with better styling - Added iOS-specific touch feedback improvements
  • New Improve audit performance and permission handling - 2025-10-24
    Optimized database queries and enhanced permission feedback: - Added user_map to prevent N+1 queries when displaying audit events - Pre-fetch all users in a single query for audit event displays - Improved role_required decorator to handle list arguments - Added flash message when users lack permissions
  • New Improve dashboard and request UX - 2025-10-24
    Enhanced user interface for better usability and information display: - Improved button layout and spacing on dashboard - Added client count column to user list with sortable badges - Auto-populate ASN request names with sequential numbering - Calculate next ASN index based on existing ASNs and pending requests
  • New Preserve user information when users are deleted - 2025-10-24
    When a user who handled requests is deleted, preserve their username for audit trail purposes. Changed handler relationship to SET NULL on delete and added handler_username field to store the username.
  • New Add current_year template global function - 2025-10-24
    Added a template global function to provide the current year for use in copyright notices and other date-related displays throughout the application.
  • Performance Optimize base template performance and UX - 2025-10-24
    Improved page load performance and user experience with several frontend optimizations.
  • New Add successful emails view to queue dashboard - 2025-10-24
    Enhanced email queue monitoring to show all email statuses including successful deliveries, not just failed emails.
  • New Add asynchronous email queue with Redis and RQ worker - 2025-10-24
    Converted email sending from synchronous SMTP to asynchronous background processing using Redis Queue (RQ). This prevents email sending delays from blocking web requests and improves application responsiveness.
  • Enhancement Remove unused bpython dependency - 2025-10-24
    bpython was listed as a dependency but not actually used. The CLI shell uses Python's standard code.interact() instead due to compatibility issues with bpython 0.24.
  • New implement cache-busting and improve loading indicators - 2025-10-24
    Frontend caching and UX improvements: - Added timestamp-based cache-busting for JavaScript bundles - Disabled static asset caching during development for easier testing - Re-enabled page loading indicators with simplified logic - Removed no-loading class checks to reduce complexity - Added no-debounce class to user dropdown to remove Loading indicator
  • New add database indexes for audit events and fix migration chain - 2025-10-24
    Added performance indexes and resolved migration dependency issues: - Created indexes on audit_events.created_at and audit_events.user_id for faster queries - Fixed migration chain to create proper linear history without branches - Updated c6d42a1091c0 to depend on 99be6ab1d477 for correct migration order
  • New improve audit events UI and fix N+1 query performance - 2025-10-24
    Enhanced the audit events list with clickable rows and optimized database queries: - Removed actions column and made entire table rows clickable for better UX - Added visual feedback with blue text and pointer cursor on hover - Fixed N+1 query problem by pre-fetching all users in a single batch query - Reduced database queries from 100+ to just 2 for improved page load performance
  • Fix improve tunnel edit page header visibility and remove test latency button - 2025-10-23
    - Removed gradient background from tunnel edit page header for better readability - Changed header text from white to default color for consistency with other pages - Moved menu include inside container for proper layout - Removed Test Latency button from sidebar (feature code is on separate branch)
  • New strip whitespace from all user form inputs across application - 2025-10-23
    - Authentication: Strip username during login and password reset lookup - User management: Strip username and email during registration and profile updates - Resource names: Strip whitespace from network, ASN, tunnel, node, node group, and interface names - Updated nullable_string() utility to automatically strip all string inputs - Prevents data inconsistencies and authentication issues from accidental spaces - Maintains 'fail loudly' principle - only strips if value exists and is a string
  • New enhance request confirmation messages with requested resource details - 2025-10-23
    - Network allocation requests now show name and prefix length in confirmation - Network requests (BYOIP) now show name and network in confirmation - ASN requests now show ASN number (if provided) or 'ASN allocation' with name - Users get clear feedback about exactly what they requested
  • New improve UI visibility for tabs and sidebar scrollbar - 2025-10-23
    - Enhanced tab navigation styling with darker backgrounds and better contrast - Made inactive tabs more visible with #f8f9fa background and #495057 text - Added hover effects with primary color highlighting - Implemented custom scrollbar styling for sidebar with darker, more visible thumb - Added smooth transitions and hover states for better user experience
  • Fix Clean up frontend imports and update dev tools to localhost - 2025-10-23
    - Remove broken ping.js import from common.js (file no longer exists) - Re-enable loading.js to provide page navigation feedback - Update development tools to use localhost instead of 44.33.7.8: - generate_dev_ssl.sh: SSL cert now for localhost - register_user.py: Default base URL changed to localhost - run_dev_https.sh: Flask now runs on localhost
  • New Add clipboard copy functionality for config snippets - 2025-10-23
    - Add clipboard.js module with copy-to-clipboard functionality - Add copy button support with visual feedback - Update common.js to include clipboard utilities - Enables easy copying of WireGuard configs, API keys, and other text snippets
  • New Reorganize sidebar navigation and improve template UI - 2025-10-23
    - Reorganize sidebar: Move 'My Resources' to top for all users - Add visual separator (light blue line) before admin sections - Reorder admin sections: Ticket Management first, then Infrastructure, then Administration - Add fa-fw class to all sidebar icons for consistent text alignment - Fix admin_exists naming conflict in setup (renamed to has_admin) - Move 'Initial Configuration' section to only show when no admin exists - Improve template consistency across all views - Update styles for better visual hierarchy
  • New Add MTU configuration support to models and controllers - 2025-10-23
    - Add MTU parameter handling in client.py config generation (9 instances) - Update interface, node, and network models for MTU support - Add MTU configuration to controllers for interfaces and nodes - Update interface add/edit template with rand_id parameter fix - Enhance configuration templates for proper MTU handling
  • New Add MTU configuration support across all platform configs - 2025-10-23
    - Add MTU parameter support to Docker, EdgeRouter, Linux, Linux Namespace, macOS, MikroTik, OpenWRT, pfSense, and wg-quick configurations - Ensures consistent MTU handling across all supported platforms - Improves network performance and compatibility
  • Fix Allow sessions for browser-based API calls in ping endpoint - 2025-10-16
    The CustomSessionInterface was disabling sessions for all API routes, which caused 500 errors on endpoints like /api/v1/nodes/ping-info that use @login_required. Browser-based API calls need session auth, while API key requests should disable sessions.
  • Fix Add missing AsnRequest export to models/__init__.py - 2025-10-15
    Added AsnRequest to the models module exports that was missing after merge.
  • Refactor Improve tunnel view template and add filter utilities - 2025-10-15
    Enhanced tunnel view with details_card macro and added filter utilities.
  • New Add CLI commands, topology views, developer tools, and reusable templates - 2025-10-15
    Added comprehensive new functionality including admin CLI, topology visualization, developer tools, and reusable template components.
  • Enhancement Update configuration and ignore files - 2025-10-15
    Updated development configuration and gitignore patterns.
  • New Enhance email verification and improve routing - 2025-10-15
    Improved email verification template, user management, and routing logic for better functionality and user experience.
  • New Add password strength indicator and improve account forms - 2025-10-15
    Enhanced password reset and account creation forms with real-time password strength validation and improved user experience.
  • New Add pending request visibility and simplify landing page - 2025-10-15
    Enhanced dashboard to show pending resource requests alongside existing resources, and streamlined the landing page for better user experience.
  • Refactor Simplify and improve model view templates - 2025-10-15
    Streamlined model view templates for better maintainability and consistency.
  • New Improve UI styling and sidebar navigation - 2025-10-15
    Enhanced sidebar navigation and overall UI styling for better user experience.
  • Performance Eliminate FOUC and improve page load performance - 2025-10-15
    Implemented comprehensive solution to prevent Flash of Unstyled Content (FOUC) and significantly improve perceived page load performance.
  • New Add features page with dynamic changelog support - 2025-10-08
    Add features showcase page: - Public features page at /features (no login required) - Comprehensive feature showcase across 6 categories - Dynamic changelog parser that reads from CHANGELOG_DATA.txt - Organized by month with expandable accordion - Color-coded badges for different change types (New, Fix, Enhancement, etc.) - Support for multi-line commit descriptions - Link from homepage to features page - Separated features logic into dedicated features.py module
  • New Add frontend utilities and enhancements - 2025-10-08
    Add JavaScript utilities: - Debounce function for input throttling - Loading state management - Table sorting functionality - Timezone display utilities - Tooltip utilities for improved UX - Debounce styling
  • New Add dashboard, help system, and UI navigation components - 2025-10-08
    Add new UI components: - Dashboard with user overview and quick actions - Tunnel and network summaries - Recent activity display - Help system with user guides and setup documentation - Universal header with user menu and notifications - Sidebar navigation for authenticated users - Universal search functionality across resources - Flash message system for user feedback - Layout templates for consistent design - Request list view improvements - Landing page base template for public pages
  • New Improve setup page and admin creation workflow - 2025-10-08
    Enhance administrator account creation: - Setup page accessible without login for initial admin creation - After first admin, requires admin login to create additional admins - Link in admin configuration page to create additional admins - Clear status indicators for database, admin, email, security - Next steps guide for new installations - Password confirmation validation - Card-based UI with icons and status badges - Integration with existing authentication system - Redirect flow based on admin existence
  • Refactor Convert relative imports to absolute and apply code formatting - 2025-10-08
    - Convert all relative imports to absolute imports throughout codebase - Apply Black code formatting (4-space indentation, double quotes) - Update all Python files in controllers, models, server, migrations - Update all Jinja2 templates with formatting improvements - No functional changes, only code style improvements
  • Enhancement Revert network allocation subnet display - 2025-10-08
    Reverted temporary change to show usable IPs in subnet dropdown
  • New Add user roles and timezone migrations - 2025-10-08
    - Add user and ticket_handler roles to User model - Add timezone column to users table for time display preferences
  • New Integrate configuration modules and add routing networks support - 2025-10-08
    Update WireGuardClient.config() to: - Use new modular configuration generators - Pass routing networks to all platform configs - Conditionally generate configs based on admin settings - Support all 9 platform configurations
  • New Add platform configuration toggles to admin settings - 2025-10-08
    Add enable/disable controls for WireGuard configuration platforms: - Toggles for EdgeRouter, MikroTik, OpenWrt, pfSense, Linux, macOS, Docker - Settings stored in config.ini under [wireguard_clients] - All platforms default to enabled - Allows testing/disabling individual platform configs
  • New Add WireGuard tunnel key regeneration feature - 2025-10-08
    Add ability to regenerate WireGuard keypairs for existing tunnels: - New 'Regenerate Keys' button on tunnel edit page - Generates new private/public key pair - Displays new private key with download options - Shows updated configurations (wg-quick, EdgeRouter, etc.) - Logs regeneration action in audit events - Enhanced template with download button for bash scripts
  • New Add multi-platform WireGuard configuration generators - 2025-10-08
    Add configuration modules for multiple router and OS platforms: - EdgeRouter: CLI config with routing, DHCP, firewall, MSS clamping - MikroTik: RouterOS commands with bridge, routing table, DHCP - OpenWrt: UCI commands with firewall and DHCP - pfSense/OPNsense: WebGUI step-by-step instructions - Linux: systemd-networkd configuration - Linux-Namespace: Self-installing script for namespace-based routing - macOS: WireGuard app configuration - Docker: docker-compose and docker run configurations - wg-quick: Moved to dedicated module for consistency

  • License License AGPL_V3 - 2025-09-08
  • Refactor Move handler handling to controllers - 2025-09-01
  • New Add commenting capabilities on requests - 2025-09-01
  • New Add admin commenting capabilities - 2025-09-01
  • New Add ticket handling indcators - 2025-09-01
  • New Models for request handling + discussion - 2025-09-01

  • Fix Resolve a typo in the new tunnel email - 2025-08-08
  • Fix Send emails on tunnel creation when requested (Resolves #28) - 2025-08-08

  • Fix Resolve issues when creating a single-stack interface - 2025-07-19
    Resolves an error that would occur when there are no IPv4 or IPv6 interface networks
  • New Add autoapproval for network allocation requests - 2025-07-19
    Resolves #19
  • New Add autoapproval support for private ASNs - 2025-07-19
    Resolves #18
  • Fix Sort available interfaces alphabetically on the request screen. - 2025-07-19
    Resolves #22
  • Fix Remove random kind output on interface add/edit screen - 2025-07-19
  • Fix Enforce unique Wireguard ports on a node - 2025-07-16
  • Fix Resolve issues with model blueprint generator when calling create/update functions - 2025-07-16
    Introduced by !18
  • Fix Resolve server error when an interface is out of IP allocations. - 2025-07-16
    Resolves #26
  • Fix Correctly pass the database session to the `delete_user` call - 2025-07-15
  • Fix Resolve exception when creating a new account - 2025-07-12
  • New Update APIv1 for updates related to auditing - 2025-07-12
  • New Add audit logs for delete events - 2025-07-12
  • New Implement audit event logging - 2025-07-10
    Will log events (add/update/delete) that take place within the system.
  • Fix Set button type for the generate PSK feature - 2025-07-10
    Reoslves an issue where pressing enter on the form results in a new PSK being generated

  • Enhancement Update default config file examples - 2025-05-30
  • Fix Resolve error on network add screen - 2025-05-30
  • Fix Ensure account-related routes are correct - 2025-05-29
    This includes registering the OIDC routes with the /account prefix
  • Fix Add CSRF token to request handling form - 2025-05-26
  • Fix Resolve error when loading a tunnel with static routing - 2025-05-22
  • Fix Do not quote extra gunicorn args - 2025-05-21
  • Enhancement Add pyproject.toml to avoid warning during build - 2025-05-21
  • New Switch to Gunicorn - 2025-05-21
  • New Add API keys - 2025-05-11
    Resolves #4
  • Fix Disable CSRF on all children API blueprints - 2025-05-11
  • New Add Preshared Key generation - 2025-05-11
    Resolves #7
  • New Show node ASN when BGP routing is enabled - 2025-05-11
    Resolves #5
  • Refactor Cleanup custom session interface - 2025-05-11
  • Fix Import correct package for CSRF - 2025-05-11
  • New Disable session authentication for API endpoints - 2025-05-11
    This will protect against CSRF attacks
  • New Add CSRF protection (#8) - 2025-05-11
  • Fix Ensure the migrate script is included in the build - 2025-05-09
  • New Add `migrate` command to the help script - 2025-05-09
  • Fix Resolve error on Python 3.11 (`in` not supported on StrEnum) - 2025-05-09
  • New Migrate user tunnel quotas - 2025-05-07
  • Fix Display the correct quotas on the user view screen - 2025-05-07
  • New Show and manage resource quotas - 2025-05-07
  • New Add resource quotas - 2025-05-07

  • Fix Properly validate altcha challenge on POST requests - 2025-04-21
    Also properly format 400 error pages
  • New Show selected networks and ASNs on tunnel screen - 2025-04-20
    Allows the user to edit their tunnel without removing admnin-selected ASN or networks
  • New Add /api/v1/admin/users endpoint - 2025-04-20
  • New List all available ASNs on administrative client routing screens - 2025-04-16
    This matches the behaviour of the routed network selection list.
  • Refactor Clean up code and ensure consistency between UI and API - 2025-04-14

  • Enhancement Update build process - 2025-03-02
    - Added new makefile functions - Generate the frontend assets during the build process

  • New Store migration ids in a separate field - 2025-02-11
  • Fix Resolve error when email has no attachments - 2025-02-26
  • New Improve client management - 2025-02-12
    - Improve user interface - Add support for sending email after tunnel creation - Allow admins to have the system generate a client's private key

  • New Add migration from legacy dashboard - 2025-01-19
  • Fix Show access_ips on node group view page - 2025-01-19
  • Fix Pre-select active routed networks when editing a client - 2025-01-19
  • Enhancement Admin UI fixes - 2025-01-19
  • New Admin UI improvements - 2025-01-19
  • New Ensure that an OIDC user's email is verified - 2025-01-18

  • New Add OIDC support - 2024-11-02

  • New Debian build + bug fixes - 2024-10-29
  • New Add node token generation - 2024-10-20
  • New Add password reset - 2024-10-20
  • New Allow users to delete their own networks and asns - 2024-10-20
  • New Load private ASN range from configuration - 2024-10-20
  • New Email notifications on request creation, approval and rejection - 2024-10-20
  • Fix Do not delete parent networks when requests are deleted - 2024-10-20
  • New User account management - 2024-10-20
  • New Email notifications - 2024-10-20
  • New Add configuration + sample client configuration - 2024-10-19
  • New Add Altcha validation - 2024-10-14
  • New Add user registration - 2024-10-14
  • New Add node inteconnection - 2024-10-11
    Implement interconnection between nodes.

  • New Support legacy status update API - 2024-09-27
  • Fix Fix page titles on client interface - 2024-09-02
  • New Add user interface for managing client routing - 2024-09-02
  • New Add client routing backend support - 2024-09-01

  • Fix Fix tunnel creation for non-admin - 2024-08-22
  • New Display SQL errors during approval - 2024-08-22
  • New Add user network and asn requesting - 2024-08-22
  • Fix Fix bugs - 2024-08-18

  • Fix Fix rendering with empty access_ips - 2024-05-12
  • New Tunnel management - 2024-05-12

  • New Work on client frontend - 2024-04-28
  • New Add interface for enabled field - 2024-04-21
  • New Add fields missing from legacy Dashboard and work on the legacy Node APIs - 2024-04-21
  • New Implement legacy node API - 2024-04-20
    Provide compatibility with the existing popd until a new architecture is decided.
  • New Do not delete an ASN still referenced by a node group - 2024-04-20
  • New Add ASN endpoint - 2024-04-20
  • New Add client delete - 2024-04-20
  • Refactor Move user controller functions into their own file - 2024-04-20
  • New Add API endpoints - 2024-04-20
  • Fix Hide access ips column on small screen on node list - 2024-04-17
  • New Update table styling - 2024-04-17
  • Fix Handle null node access ips on node group view - 2024-04-17
  • Fix Handle null node access ips on node list - 2024-04-17
  • Fix Handle null node access ips - 2024-04-17
  • Fix Typo on loopback interface settings - 2024-04-17
  • New Client resource management - 2024-04-16
  • New New resource buttons - 2024-04-14
    Apply consistent wording
  • New Select prefix sizes when creating interfaces - 2024-04-14
  • New Begin implementation of adding interfaces - 2024-04-14
  • New Interface updating/deleting - 2024-04-12
  • New Node management - 2024-04-11
  • New Work on node form components - 2024-04-10
  • New Add node group management - 2024-04-10
  • New Add subnetwork allocation - 2024-04-08
  • New Network management - 2024-04-08
  • New Add node group - 2024-04-07
  • New Route organization - 2024-04-07
  • New Being flask restructure - 2024-04-07
  • New Data structures and UI work - 2024-04-06
  • New Data structure implementation - 2024-04-05
  • New Work on data structures - 2024-04-05
  • New Initial commit - 2024-04-04

Ready to get started?