- Added plugin base and loader for backend extensibility - Implemented application settings management with config persistence - Created Svelte-based frontend with Dashboard and Settings pages - Added API routes for plugins, tasks, and settings - Updated documentation and specifications - Improved project structure and developer tools
47 lines
1.0 KiB
Markdown
Executable File
47 lines
1.0 KiB
Markdown
Executable File
# Quickstart: Plugin Architecture & Svelte Web UI
|
|
|
|
## Prerequisites
|
|
- Python 3.9+
|
|
- Node.js 18+
|
|
- npm or pnpm
|
|
|
|
## Setup
|
|
|
|
1. **Install Backend Dependencies**:
|
|
```bash
|
|
cd backend
|
|
python -m venv venv
|
|
source venv/bin/activate # or venv\Scripts\activate on Windows
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
2. **Install Frontend Dependencies**:
|
|
```bash
|
|
cd frontend
|
|
npm install
|
|
```
|
|
|
|
## Running the Application
|
|
|
|
1. **Start Backend Server**:
|
|
```bash
|
|
# From backend/ directory
|
|
uvicorn src.app:app --reload --port 8000
|
|
```
|
|
|
|
2. **Start Frontend Dev Server**:
|
|
```bash
|
|
# From frontend/ directory
|
|
npm run dev
|
|
```
|
|
|
|
3. **Access the UI**:
|
|
Open `http://localhost:5173` in your browser.
|
|
|
|
## Adding a Plugin
|
|
|
|
1. Create a new Python file in `backend/src/plugins/` (e.g., `my_plugin.py`).
|
|
2. Define your plugin class inheriting from `PluginBase`.
|
|
3. Implement `execute` and `get_schema` methods.
|
|
4. Restart the backend (or rely on auto-reload).
|
|
5. Your plugin should appear in the Web UI. |