Skip to content

Conversation

@Jordonh18
Copy link
Owner

@Jordonh18 Jordonh18 commented Jan 23, 2026

Overview

This PR represents a significant evolution of the project, including a complete rebrand from "Printer Proxy" to "Continuum" along with major feature additions and architectural improvements.

Breaking Changes

  • Project Rename: All references changed from "Printer Proxy" to "Continuum"
    • Updated service names, paths (/opt/continuum), systemd services
    • Updated package naming (continuum_*.deb)
    • Migrated data directory to app/data/

New Features

Workflow Automation

  • Visual workflow builder with drag-and-drop interface
  • APScheduler-based workflow scheduler for automated task execution
  • Variable system for dynamic workflow configuration
  • Node-based workflow engine with support for:
    • Schedule-based triggers
    • Printer operations, redirects, notifications
    • HTTP requests and email actions
    • Conditional branching
  • VariablePicker component for easy variable insertion
  • Complete workflow CRUD operations via API

Security & Authentication

  • API token management system
  • Rate limiting for API endpoints
  • Enhanced JWT authentication
  • API token support via query string for SSE endpoints
  • Improved authentication error handling and audit logging

User Experience

  • Backend availability monitoring with BackendStatusContext
  • Notification preferences per user
  • Document title management for better browser tab identification
  • Improved printer discovery and editing UI
  • Enhanced users page with icon-based actions
  • Setup wizard for initial admin account creation

Developer Experience

  • Database initialization script with example workflows
  • Consolidated updater module
  • Better authentication utility separation
  • Improved configuration with flask-compress
  • Network diagnostic enhancements (ARP, routing info, traffic analysis)

Technical Improvements

  • Workflow IDs migrated from number to string type
  • Enhanced network helper script with diagnostic commands
  • Improved printer detail and settings pages
  • Better state management across components
  • Enhanced type definitions for workflows and API tokens

Documentation

  • Updated README with comprehensive feature list and installation guide
  • Added workflow variables documentation
  • Created GitHub issue templates (bug report, feature request)
  • Added PR checks workflow for build/test automation

Version

  • Updated to 1.1.0-alpha1 reflecting the major feature additions

Testing

  • Added PR checks workflow that runs build and installation tests
  • Verified package building and installation process
  • Confirmed backend API compatibility

…ponents architecture. Multiple backend changes to acommodate a new frontend layout. Some functionality temporarily removed.
…efinition

- Updated UsersPage to replace text buttons with icon buttons for editing and deleting users.
- Added optional fields to the User interface in api.ts for enhanced user data management.
- Included new printer status properties and dashboard analytics interface in api.ts.
- Added pyotp dependency to requirements.txt for improved OTP functionality.
…ken types

- Removed unused StatusBadge import and refactored status handling in PrinterDetailPage.
- Updated SettingsPage to use authApi for notification preferences and removed SMTP settings management.
- Introduced SetupPage for initial admin account creation with a multi-step form.
- Added new API token types to api.ts for better type safety and clarity.
…n handling, and set document titles for various pages
…a query string for SSE and update notification stream URL
- Implemented WorkflowNode component for visual representation of workflow nodes.
- Added WorkflowEditorPage for creating and editing workflows with drag-and-drop functionality.
- Created WorkflowsPage for listing and managing workflows, including a dialog for creating new workflows.
- Introduced workflow API methods for CRUD operations on workflows.
- Enhanced styling for workflow components and scrollbar.
- Defined new types for workflow-related data structures in the API.
- Added WorkflowScheduler class to manage scheduled workflow executions.
- Implemented methods to schedule, unschedule, and execute workflows.
- Integrated database loading for existing workflows.
- Added global scheduler instance and utility functions for access.

refactor: Update API types to use string IDs for workflows

- Changed workflow ID type from number to string in API types.
- Updated API methods to accept string IDs for workflow operations.

fix: Update WorkflowEditorPage to handle string workflow IDs

- Modified workflow ID handling to support string type.
- Enhanced error handling for workflow loading and autosave functionality.

feat: Enhance WorkflowsPage with delete confirmation dialog

- Added delete confirmation dialog for workflows.
- Implemented toggle functionality for activating/deactivating workflows.
- Improved loading states and user feedback for workflow operations.

chore: Add database initialization script with example workflows

- Created init_database.py script to set up the database and seed example workflows.
- Included example workflows for testing and demonstration purposes.

deps: Update requirements.txt to include APScheduler and requests

- Added APScheduler for scheduling tasks.
- Included requests library for potential future API interactions.
- Created a new documentation file for Workflow Variables detailing the key-based variable system, variable syntax, node outputs, and example workflows.
- Implemented VariablePicker component to allow users to select and insert variables from upstream nodes in the workflow editor.
- Enhanced WorkflowEditorPage to integrate VariablePicker for fields that support dynamic variables.
- Updated CSS for improved edge styling and connection line appearance during drag.
- Modified API types to include support for dynamic variables in workflow fields and output schemas.
…torPage for better accessibility and uniqueness
- Enhance JWT claims handling in api_auth_required decorator.
- Improve logging for workflow updates and authentication errors.
- Add audit logging for workflow activation/deactivation.
- Modify workflow retrieval to include enabled status check.
- Update version to 1.5.0-alpha1 with new features and improvements.
- Refactor SMTP settings API endpoints for better organization.
- Enhance VariablePicker component to support variable type filtering.
- Improve PrintersPage and WorkflowEditorPage for better state management and UI responsiveness.
- Introduce validation options in WorkflowConfigField for enhanced field management.
- Add flask-compress to requirements for improved response compression.
- Updated the title font weight on WorkflowsPage for better visibility.
- Introduced new network-related types in api.ts, including NetworkInterface, ClaimedIP, RoutingInfo, TrafficFlow, NetworkWarning, NetworkOverview, ArpEntry, PortInfo, SafetyInfo, and DiagnosticResult.
- Expanded network_helper.sh with new commands for detailed interface information, ARP table retrieval, routing information, connection statistics, ping tests, ARP probing, TCP connection tests, and re-announcing ARP.
… files and configurations. Adjusted service scripts, documentation, and frontend components to reflect the new name and paths. Updated package management scripts and repository references accordingly.
- Removed the updater.py module, consolidating update management logic.
- Introduced utility modules for authentication, rate limiting, and API token management.
- Added BackendStatusContext for managing backend availability checks in the frontend.
- Enhanced the DashboardLayout and App components to handle backend status.
- Updated the NetworkingPage to improve user experience during authentication prompts.
- Adjusted data directory structure in the configuration for better organization.
…n workflows, documentation, and issue templates
@coderabbitai
Copy link

coderabbitai bot commented Jan 23, 2026

Important

Review skipped

Too many files!

23 files out of 173 files are above the max files limit of 150.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

@Jordonh18 Jordonh18 changed the title @coderabbit feat: Major refactor - Rename to Continuum, add workflow automation, enhance security, and improve UX Jan 23, 2026
@github-actions
Copy link

❌ Build & Test Failed

Version: 1.1.0-alpha1
Package: continuum_1.1.0-alpha1_all.deb

Some checks failed. Please review the logs.

@github-actions
Copy link

❌ Build & Test Failed

Version: 1.1.0-alpha1
Package: continuum_1.1.0-alpha1_all.deb

Some checks failed. Please review the logs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants