mirror of
https://github.com/jhd3197/ServerKit.git
synced 2026-11-09 21:43:05 +09:00
Plan 47 Phase 2. The FTP blueprint + service move out of core into builtin-extensions/serverkit-ftp/backend/ (entry_point ftp:ftp_bp, url_prefix unchanged). Core no longer registers /api/v1/ftp or imports ftp_service — a fresh panel that never touches FTP loads none of it. Already in CONVERTED_BUILTIN_SLUGS, so upgrades re-acquire the backend automatically. Acceptance (tests/test_ftp_extraction.py): uninstalled = no /api/v1/ftp routes + app.services.ftp_service gone; installed = blueprint hot-loads and /ftp/status responds; uninstall removes it. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
40 lines
1.5 KiB
JSON
40 lines
1.5 KiB
JSON
{
|
|
"name": "serverkit-ftp",
|
|
"display_name": "FTP Server",
|
|
"version": "1.0.0",
|
|
"description": "FTP server management (vsftpd/proftpd) with install, users, config and logs, as a tab in the Files group.",
|
|
"author": "ServerKit",
|
|
"license": "MIT",
|
|
"category": "utility",
|
|
"homepage": "https://github.com/jhd3197/ServerKit",
|
|
"permissions": ["shell", "filesystem"],
|
|
"entry_point": "ftp:ftp_bp",
|
|
"url_prefix": "/api/v1/ftp",
|
|
"icon": "<rect x=\"16\" y=\"16\" width=\"6\" height=\"6\" rx=\"1\"/><rect x=\"2\" y=\"16\" width=\"6\" height=\"6\" rx=\"1\"/><rect x=\"9\" y=\"2\" width=\"6\" height=\"6\" rx=\"1\"/><path d=\"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3\"/><path d=\"M12 12V8\"/>",
|
|
"contributions": {
|
|
"tabs": [
|
|
{
|
|
"group": "files",
|
|
"to": "/ftp",
|
|
"label": "FTP Server",
|
|
"icon": "<rect x=\"16\" y=\"16\" width=\"6\" height=\"6\" rx=\"1\"/><rect x=\"2\" y=\"16\" width=\"6\" height=\"6\" rx=\"1\"/><rect x=\"9\" y=\"2\" width=\"6\" height=\"6\" rx=\"1\"/><path d=\"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3\"/><path d=\"M12 12V8\"/>"
|
|
}
|
|
],
|
|
"routes": [
|
|
{ "path": "ftp", "component": "FtpServerPage", "group": "files" },
|
|
{ "path": "ftp/:tab", "component": "FtpServerPage", "group": "files" }
|
|
],
|
|
"page_titles": {
|
|
"/ftp": "FTP Server"
|
|
},
|
|
"command_palette": [
|
|
{
|
|
"label": "FTP Server",
|
|
"path": "/ftp",
|
|
"category": "Pages",
|
|
"keywords": "sftp upload vsftpd proftpd transfer"
|
|
}
|
|
]
|
|
}
|
|
}
|