Download the PHP package gemvc/library without Composer

On this page you can find all versions of the php package gemvc/library. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package library

🚀 GEMVC

Transform your PHP development with GEMVC - a modern PHP framework where security meets simplicity! Build professional, secure APIs in minutes, not hours.

📋 Table of Contents

🔥 5-Second Installation

Initialize Your Project

After installing the library, initialize your project with:

This script will:

Note: If the above command doesn't work, check if the path exists. The script may be located at vendor/gemvc/library/init.php depending on your installation method.

Generate Complete API Services

GEMVC includes a powerful CLI command for generating complete API services with a single command:

This command automatically generates:

The generated code includes complete CRUD operations with proper validation, error handling, and documentation, following GEMVC's layered architecture pattern.

⚡ Performance Powerhouse

The Ultimate Performance Trio: OpenSwoole + DB Cache + Connection Pooling

GEMVC combines three powerful technologies to deliver exceptional performance:

Performance Benefits:

  1. OpenSwoole

    • Non-blocking I/O for concurrent requests
    • Coroutine support for efficient resource usage
    • Built-in HTTP/WebSocket server
    • Automatic worker process management
  2. Database Cache

    • Automatic caching of frequent queries
    • Configurable TTL for cache freshness
    • Memory-efficient cache size limits
    • Automatic cache invalidation
  3. Connection Pooling
    • Reuse database connections
    • Automatic connection health checks
    • Configurable pool sizes per worker
    • Efficient resource management

Real-World Impact:

Configuration Example:

This powerful combination makes GEMVC perfect for:

🚀 Quick Start

1. Configure Your Magic

Create an .env file in your app directory:

2. Start Building Your API

📘 Getting Started Guide

Create a complete API endpoint with authentication, validation, and error handling:

🧩 Key Components

Component Description Key Features
Database SQL query building & execution Type-safe queries, injection protection, table generation, ORM capabilities
HTTP Request/response handling Validation, auth, WebSockets
Security Security features Encryption, sanitization, protection
Helpers Utility classes File, image, type handling
WebSocket Real-time communication Redis scaling, heartbeat, channels

🏗️ Architecture Overview

Elegant Database Queries

Database Components Hierarchy

In this architecture:

This layered design allows each class to focus on a specific responsibility while building on the capabilities of its parent classes, resulting in a powerful and flexible database interaction system.

Enhanced QueryBuilder System

The QueryBuilder system has been improved with:

These improvements enhance error handling and provide more robust debugging capabilities. With the enhanced error handling, you can now easily identify and resolve database query issues:


🌟 Why GEMVC Stands Out

🛡️ Security Features

Use Case: Securely handle sensitive file uploads with minimal code and maximum protection.

🔄 Robust Error Handling

Use Case: Build APIs with consistent error responses that provide clear messages to clients.

🔑 Built-in JWT Authentication

Use Case: Implement secure, role-based API authentication with minimal boilerplate code.


🔀 Dual Server Support

Use Case: Start with traditional Apache/Nginx setup, then easily scale to high-performance OpenSwoole when needed without code changes.

OpenSwoole/Swoole Compatibility

GEMVC now provides seamless compatibility with both OpenSwoole and regular Swoole extensions:

This compatibility layer ensures your application works smoothly regardless of which extension is installed on your server.

Implementation details:

🔄 Real-Time Communication

Use Case: Build real-time chat applications, notifications, or live dashboards with automatic scaling across servers.

📚 Table Database Abstraction

Use Case: Work directly with database tables through a typed, fluent interface. The Table class provides database abstraction - a proper Model layer will be added in the future.

🏗️ Automatic Table Generator

Use Case: Automatically generate and maintain database tables from your Table classes with indexes, constraints, and validation, eliminating manual SQL schema creation and migration scripts.


👨‍💻 Developer Experience

⚡ Lightning-Fast Development

🤖 AI-Ready Framework

🎈 Lightweight & Flexible

Use Case: Rapidly prototype and build new features with minimal boilerplate code and maximum productivity.


💪 Core Features

🏗️ Modern Architecture

🔋 Efficient Resource Management

🖥️ Server Flexibility

🛡️ Security Features

📊 Database & ORM Features

📡 Real-Time Communication

🎯 Developer Tools

⚡ Performance

📊 Feature Comparison

Feature Traditional Approach GEMVC Approach
Database Queries Manual SQL strings, manual binding Type-safe QueryBuilder, automatic binding
Table Interaction Manual object mapping to database Typed Table class with automatic conversion
Schema Management Manual SQL CREATE TABLE statements Automatic table generation from PHP objects
Error Handling Inconsistent error responses Standardized responses with proper status codes
Authentication Manual token parsing, unclear errors Built-in JWT handling with specific error responses
WebSockets Manual implementation, no scaling Ready-to-use handler with Redis scaling
File Handling Manual validation, no encryption Built-in validation, one-line encryption
Server Support Either Apache OR Swoole Same code on BOTH platforms
Platform Selection Manual configuration Simple CLI command: gemvc setup [apache|swoole]

📋 Requirements

🎯 Perfect For

📚 Documentation

Want to dive deeper? Check out our Documentation.md

About

Author: Ali Khorsandfard [email protected]
GitHub: secure73/gemvc
License: MIT


Made with ❤️ for developers who love clean, secure, and efficient code.


All versions of library with dependencies

PHP Build Version
Package Version
Requires firebase/php-jwt Version ^6.8
phpmailer/phpmailer Version ^6.8
symfony/dotenv Version ^7.2
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package gemvc/library contains the following files

Loading the files please wait ....