feat: add admin panel with project and tag management

- Full CRUD interface for projects with GitHub integration and tagging
- Real-time event log with expandable metadata viewer
- Reusable component library (Badge, Button, Input, Modal, Table,
TagPicker)
- Server-side API client with Unix socket and HTTP support
- JWT-based authentication with Svelte 5 reactive stores
- Settings management for social links and site identity
- Remove /admin path from tarpit to allow legitimate access
This commit is contained in:
2026-01-06 10:07:30 -06:00
parent 045781f7a5
commit 16bf2b76f3
32 changed files with 3260 additions and 60 deletions
+2 -3
View File
@@ -125,8 +125,7 @@ pub fn is_malicious_path(path: &str) -> bool {
}
// Admin panels
if path_lower.starts_with("/admin")
|| path_lower.starts_with("/administrator")
if path_lower.starts_with("/administrator")
|| path_lower.contains("phpmyadmin")
{
return true;
@@ -473,7 +472,7 @@ mod tests {
#[test]
fn test_admin_panels() {
assert!(is_malicious_path("/admin"));
assert!(!is_malicious_path("/admin"));
assert!(is_malicious_path("/administrator"));
assert!(is_malicious_path("/phpmyadmin"));
assert!(is_malicious_path("/phpMyAdmin"));