feat: implement user authentication and license management system

- Added schema for users, licenses, and license hostnames in the database.
- Created storage utility for reading and writing JSON files.
- Developed user service for user registration, authentication, and retrieval.
- Implemented authentication middleware to protect routes.
- Built LicenseCard component to display license details.
- Created SiteNav component for navigation with user authentication status.
- Established AuthContext for managing authentication state and actions.
- Developed Home page to display available plugins.
- Created LicenseManager page for managing licenses with forms for creation and verification.
- Implemented PluginDetail page to show detailed information about a specific plugin.
- Added utility functions for date formatting.
This commit is contained in:
2026-02-01 02:20:28 +00:00
parent f4411ffd88
commit 7b0ca40c4f
27 changed files with 2344 additions and 428 deletions

11
server/lib/db.js Normal file
View File

@@ -0,0 +1,11 @@
import mysql from "mysql2/promise";
import { DB_CONFIG } from "./config.js";
const pool = mysql.createPool({
...DB_CONFIG,
waitForConnections: true,
connectionLimit: Number(process.env.DB_POOL_SIZE || 10),
namedPlaceholders: false
});
export default pool;