License System
A complete license management and authentication system.
Authentication & Security
Discord OAuth2 Integration: Users sign in securely using their Discord accounts (no need to create separate passwords).
Role-Based Access Control (RBAC): Distinct permission levels separating regular users from Administrators.
Advanced Security Measures: Built-in defenses using Helmet for HTTP headers, Content Security Policies (CSP), and express-validator / sanitize-html to prevent XSS and injection attacks.
Rate Limiting: Protects your login, API, and verification endpoints from DDoS attacks, brute forcing, and spam.
License Management
Secure Key Generation: Automatically generates robust, randomized 16-character license keys.
IP Binding & Locking: Licenses are locked to the specific IP addresses of the user to prevent unauthorized sharing. You can configure a maximum IP limit per license.
License Expirations: Support for time-based license usage (setting expiration dates).
Status Controls: Licenses can be managed directly by admins (Active, Suspended, Expired).
IP Reset Request System: Users can submit requests to reset their linked IP addresses, which admins can then review, approve, or reject.
Verification API: A dedicated endpoint to verify licenses in real-time straight from your products/software, validating the license status, expiration, and the client's IP.
Product Management
Product Registry: Admins can effortlessly create, edit, and delete products from the dashboard.
Version & Changelog Tracking: You can define versions and specific changelogs for the software linked to each product.
License Association: Every license is directly assigned to one of your created products.
User Management (Admin Panel)
Global User Dashboard: A complete list showing user statistics, total licenses, and active licenses.
Advanced Filtering & Search: Find users quickly using search or filters like All, Banned, Admins, and With Licenses.
Detailed User Profiles: Dive deep into a specific user to view all their associated licenses, IP reset requests, and status.
Ban System: Admins can ban and unban users. When banning, you can specify a reason. Banned users have their active sessions destroyed and are locked out of the system.
Admin Notes: Admins can write internal, private notes on specific user profiles to keep track of user behavior or details.
Frontend & UI
Modern User Dashboard: A control panel for standard users to see only their own licenses, products, and IP reset requests.
Tailwind CSS: Fully responsive, modern UI built with utility-first CSS.
Theme Toggling: Supports Dark/Light mode switching.
Performance Optimized: Assets and JSON data payloads are optimized and cached to keep the panel fast.
Interested in License System?
Contact me to learn more about how it was built or discuss similar systems.