Skip to content
VetheonGames edited this page Oct 12, 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.7 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.7+)
  • 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