Skip to content
VetheonGames edited this page Sep 20, 2025 · 4 revisions

Source-License Wiki

Welcome to the comprehensive documentation for Source-License, an enterprise-grade FOSS software licensing and distribution platform built with Ruby and Sinatra.

Source License

πŸ“š Documentation Overview

This wiki provides complete documentation for installation, configuration, development, and administration of Source-License.

Quick Navigation

πŸš€ Getting Started

πŸ—οΈ Architecture & Development

πŸ‘¨β€πŸ’Ό Administration

πŸ”§ Operations

🎨 Customization

🌟 Key Features

Source-License is a complete solution for software vendors who need to:

  • Sell Software: Full e-commerce platform with cart, checkout, and payment processing
  • Manage Licenses: Generate, track, and validate software licenses with activation controls
  • Process Payments: Integrated Stripe and PayPal support with webhook handling
  • Validate Activations: REST API for real-time license verification in your software
  • Track Usage: Comprehensive analytics and reporting for sales and license usage
  • Customize Experience: Flexible template system with admin-configurable branding

πŸ›οΈ Architecture Overview

Source-License follows a modular Ruby/Sinatra architecture:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Public Web    β”‚    β”‚  Admin Panel    β”‚    β”‚   REST API      β”‚
β”‚   Interface     β”‚    β”‚   Interface     β”‚    β”‚   Endpoints     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚                       β”‚                       β”‚
         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                 β”‚
         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
         β”‚           Application Controllers             β”‚
         β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
         β”‚  β”‚         Core Business Logic             β”‚  β”‚
         β”‚  β”‚  β€’ License Management                   β”‚  β”‚
         β”‚  β”‚  β€’ Payment Processing                   β”‚  β”‚
         β”‚  β”‚  β€’ User Authentication                  β”‚  β”‚
         β”‚  β”‚  β€’ Security & Validation               β”‚  β”‚
         β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                 β”‚
         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
         β”‚              Database Layer                   β”‚
         β”‚  β€’ Users & Admins    β€’ Orders & Payments     β”‚
         β”‚  β€’ Products          β€’ License Activations   β”‚
         β”‚  β€’ Licenses          β€’ Subscription Billing  β”‚
         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

🎯 Use Cases

Software Vendors

  • Sell desktop applications with comprehensive license management
  • Distribute plugins and extensions with flexible activation limits
  • Manage trial periods and automatic subscription renewals
  • Track detailed usage analytics and ensure license compliance

SaaS Applications

  • Implement license validation for client-side applications
  • Control machine-based activation for offline software
  • Automate subscription management with recurring billing
  • Support multi-tier licensing with different activation limits

Educational Institutions

  • Manage student and teacher license allocations
  • Implement institution-wide licensing programs
  • Control temporary access and trial periods
  • Generate bulk licenses for educational programs

πŸ›‘οΈ Security Features

  • JWT Authentication: Secure token-based API access
  • Admin Role Management: Granular permissions and multi-admin support
  • Security Middleware: CSRF protection, rate limiting, and security headers
  • Audit Logging: Comprehensive logging of all license operations
  • Database Security: Sequel ORM with prepared statements prevents SQL injection
  • Encrypted Storage: Secure storage of sensitive data and credentials

πŸ“Š System Requirements

Minimum Requirements

  • Ruby: 3.4.4 or higher
  • Database: MySQL 5.7+, PostgreSQL 9.6+, or SQLite 3.8+ (development only)
  • Memory: 512MB RAM minimum, 1GB+ recommended
  • Storage: 1GB available disk space
  • Network: HTTPS capability for production deployments

Recommended Production Environment

  • Ruby: Latest stable version (3.4.4+)
  • Database: MySQL 8.0+ or PostgreSQL 12+ with connection pooling
  • Memory: 2GB+ RAM for optimal performance
  • Storage: SSD storage with regular backups
  • Load Balancer: Nginx or Apache for SSL termination and static files
  • Monitoring: Application and infrastructure monitoring tools

πŸš€ Quick Start

  1. Clone the repository:

    git clone https://github.com/PixelRidgeSoftworks/Source-License.git
    cd Source-License
  2. Run the installer:

    # Windows
    .\install.ps1
    
    # Linux/macOS  
    ./install.sh
  3. Deploy the application:

    # Windows
    .\deploy.ps1
    
    # Linux/macOS
    ./deploy.sh
  4. Access the application:

πŸ“ˆ Version Information

Current Version: v1.0-ALPHA

Note: Source-License is currently in Alpha. While feature-complete for most use cases, you may encounter issues or missing functionality. Please report any issues via GitHub Issues.

🀝 Community & Support

πŸ“„ License

Source-License is released under the GNU General Public License v2.0. See the LICENSE file for details.


Built with ❀️ by PixelRidge Softworks

Empowering software vendors with professional licensing solutions

Clone this wiki locally