Skip to content

chore: extract connect to an API plugin#1367

Merged
pujitm merged 99 commits intomainfrom
refactor/mothership
Jun 10, 2025
Merged

chore: extract connect to an API plugin#1367
pujitm merged 99 commits intomainfrom
refactor/mothership

Conversation

@pujitm
Copy link
Member

@pujitm pujitm commented Apr 23, 2025

Summary by CodeRabbit

  • New Features

    • Introduced a unified, JSON-schema-based settings system for API configuration and plugin settings, accessible via new GraphQL queries and mutations.
    • Added modular NestJS plugin architecture for Unraid Connect, including new modules for cloud, remote access, and system/network management.
    • Added granular connection and remote access state tracking, with new GraphQL types and resolvers for cloud and connection status.
    • Implemented event-driven and service-based management for SSO users, API keys, and dynamic remote access.
    • Enhanced UI components and queries to support unified settings and restart detection.
  • Improvements

    • Refactored configuration and state management to use service-based patterns, replacing direct store access and Redux logic.
    • Migrated legacy config files to new JSON formats with validation and persistence helpers.
    • Centralized global dependencies and shared services for plugins and CLI modules.
    • Improved logging, error handling, and lifecycle management for connections and background jobs.
    • Updated and expanded documentation for plugin development and settings management.
  • Bug Fixes

    • Improved handling of missing config files and ensured safe persistence.
    • Enhanced error reporting and validation in remote access and connection services.
  • Removals

    • Removed deprecated Redux slices, listeners, and legacy cloud/remote access logic.
    • Deleted obsolete test files, scripts, and unused code related to the old state/store approach.
  • Tests

    • Added new unit tests for settings merging, URL resolution, and cloud connectivity checks.
  • Style

    • Applied consistent formatting, import reorganization, and code style improvements across modules.
  • Chores

    • Updated build scripts, Dockerfiles, and development environment setup to support new dependencies and workflows.
    • Expanded .gitignore and configuration files for improved build artifact management.

Loading
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.

1 participant