PHPackages                             g3yuri/volt-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. g3yuri/volt-php

ActiveLibrary[Framework](/categories/framework)

g3yuri/volt-php
===============

Un ligero framework php

1.0.0(3y ago)05proprietaryPHPPHP &gt;=7.4.0

Since May 1Pushed 3y ago1 watchersCompare

[ Source](https://github.com/g3yuri/volt-php)[ Packagist](https://packagist.org/packages/g3yuri/volt-php)[ RSS](/packages/g3yuri-volt-php/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (16)Versions (2)Used By (0)

Slim Framework
==============

[](#slim-framework)

DB
--

[](#db)

### Testing con Php unit

[](#testing-con-php-unit)

PHPUnit esta con composer, se debe agregar a terminus los gieuiten:

```
    {
        "keys": ["super+t"],
        "command": "terminus_open",

        "args": {
            "shell_cmd": "ssh ene -t 'cd /www/wwwroot/slim.alpayana.gd.pe; ./vendor/bin/phpunit tests'",
            "working_dir": "$folder",
            "title": "Linea de Comandos",
            "auto_close": false,
        }
    },
```

Mas configuracion de terminus en:

PASO 1: Server - aapanel
------------------------

[](#paso-1-server---aapanel)

Para inciar en el servidor:

- Generar en github.com un Token Personal
- Mediante git realizar un clone del proyecto
- mover a la carpeta raiz
- La propiedad debe estar en ubuntu:www excepto vendor y storage
- Se tiene que instalar la extenxion fileinfo en php

```
cd /www/wwwroot/slim.gmi.gd.pe
sudo git clone https://github.com/g3yuri/slim.gmi.git
sudo mv slim.gmi/* .
sudo chown ubuntu:www -R .
```

PASO 2: ejecutar composer install
---------------------------------

[](#paso-2-ejecutar-composer-install)

El archivo php.ini debe estar en: `/www/server/php/74/etc/php.ini`, este archivo se copia y se busca en `disable_functions =` debe ser igual a un vacio, esto limita las funciones

Para la instalacion de los paquetes de composer use:

```
php -c ~/php.ini /usr/bin/composer install
```

si no funciona usa `/www/server/php/74/bin/php -c ~/php.ini /usr/bin/composer install` la carpeta 74 podria variar segun la version del php instalado de el aapanel

se tiene que asegurar que el usuario sea propietario de la carpeta vendor

PASO 3: Configurar Nginx para que lea el path en index.php
----------------------------------------------------------

[](#paso-3-configurar-nginx-para-que-lea-el-path-en-indexphp)

En la configuracion del servidor debe estar lo siguiente:

```
    index index.php;
    root /www/wwwroot/slim.gmi.gd.pe/public;
    location / {
          try_files $uri $uri/ /index.php?$args;
    }
```

Se debe comentar algunos items como:

```
    #location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    #{
    #    expires      30d;
    #    error_log /dev/null;
    #    access_log off;
    #}

    #location ~ .*\.(js|css)?$
    #{
    #    expires      12h;
    #    error_log /dev/null;
    #    access_log off;
    #}
```

PASO 4: Extenciones ext-info - Zona Horaria - la web en la carpeta /public
--------------------------------------------------------------------------

[](#paso-4-extenciones-ext-info---zona-horaria---la-web-en-la-carpeta-public)

- ext-info: Se necesita para phpoffice/phpspreadsheet, league/flysystem
- Mysql: Obtiene del sistema, se tiene que setear por comando

    1. se obtiene informacion de la hora y fecha con `timedatectl`
    2. listar las zonas horarias `timedatectl list-timezones`
    3. establecer una zona horaria `sudo timedatectl set-timezone America/Toronto`
- Php: Se tiene que modificar de su configuracion en apanel
- La carpeta public debe estar como inicio de la web

Para refrescar al mapeo de clases del autoload
----------------------------------------------

[](#para-refrescar-al-mapeo-de-clases-del-autoload)

- Ejecutar `composer dump-autoload`

Para instalar una extensión pear
--------------------------------

[](#para-instalar-una-extensión-pear)

- Paso 1: Instalar lo necesario `sudo apt install php-pear php-dev`, php-pear para usar el comando `pecl` y php-dev para user `php-config`
- Paso 2: Copiar la extension generada al directorio de extensiones de php, puede ser un directorio como `/usr/lib/php/20190902` y se debe copiar a un directorio como `/www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902` haciendo `sudo cp /usr/lib/php/20190902/dbase.so /www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902`, puede variar las rutas

Storage
-------

[](#storage)

Referencia :

Las url que de rutas en los parametros de las funciones son relativas:

Testing
-------

[](#testing)

Referencia:

Suponiendo que los archivos de prueba se encuentran en la carpeta `tests`

```
./vendor/bin/phpunit tests
```

Agregar un shorcut en el editor de codigo:

- En visual studio code: instalar la extensión: `multi-command` y luego en el archivo `keybondongs.json` agregar el siguiente codigo

```
{
    "key": "alt+cmd+b",
    "command": "extension.multiCommand.execute",
    "args": {
        "sequence": [
            "workbench.action.createTerminalEditor",
            {
                "command": "workbench.action.terminal.sendSequence",
                "args": {
                    "text": "ssh ene -t 'cd /www/wwwroot/slim.gmi.gd.pe;./vendor/bin/phpunit tests'\u000D"
                }
            }
        ]
    }
}
```

- En Sublime text: Instalar la extencion `terminus` y agregar el siguiente codigo en el mwnu Sublime Text &gt; Settings &gt; Key Bindings y agregar el siguiente codigo:

```
{
    "keys": ["super+g"],
    "command": "terminus_open",

    "args": {
        "shell_cmd": "ssh ene -t 'cd /www/wwwroot/slim.gmi.gd.pe; sudo su -c \"./vendor/bin/phpunit tests\"'",
        "working_dir": "$folder",
        "title": "Linea de Comandos",
        "auto_close": false,
    }
}
```

Tareas / CronJobs
-----------------

[](#tareas--cronjobs)

Referencia :

Pendiente
---------

[](#pendiente)

Esta pendiente que jale de una sola variable los siguientes datos:

- Conexion a la base de datos hay en config.php y db.php
- Dominio de la web, hay en archivos de la carpeta test y otros como session.php
- Modificar la linea `return self::path_join("https://slim.presto.gd.pe/storage/",$path);` en storage.php para que pueda leer la ruta raiz de storage, desde config.php
- Agregar a storage:

```
    public static function lastModified($path)  {
        return self::driver()->lastModified($path);
    }
```

- Agregar a app.php para obtener el origin:

```
        if (array_key_exists('HTTP_ORIGIN', $_SERVER)) {
            $origin = $_SERVER['HTTP_ORIGIN'];
        } else if (array_key_exists('HTTP_REFERER', $_SERVER)) {
            $origin = $_SERVER['HTTP_REFERER'];
        } else {
            $origin = $_SERVER['REMOTE_ADDR'];
        }
```

- Agregar a storage.php:

```
    public static function write($path, $content) {
        $fs = self::driver();
        $fs->write($path, $content);
    }
```

- Para realizar una actualización a PHP 8.2 Ahora: El router `Klein` esta botando mensajes de `deprecates`, por ello se esta colocando `error_reporting(E_ALL ^ E_DEPRECATED);` para evitar estos mensajes Se necesita: Realizar el cambio con otro router como `FastRouter` ()
- Tareas Debe estar agregado `composer require lavary/crunz`Mas info de Crunz esta en \[Crunz\] \[\] Crear el archivo de configuración

```
/project/vendor/bin/crunz publish:config
```

Agregar un cronjobs normal de la siguiente manera

```
* * * * * cd /project && vendor/bin/crunz schedule:run /path/to/tasks/directory
```

###  Health Score

20

—

LowBetter than 13% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1159d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/31edda55dd3ff39bcf6f42377fc11c2e4392b872fab510745ad79bbd377c1e78?d=identicon)[g3yuri](/maintainers/g3yuri)

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/g3yuri-volt-php/health.svg)

```
[![Health](https://phpackages.com/badges/g3yuri-volt-php/health.svg)](https://phpackages.com/packages/g3yuri-volt-php)
```

###  Alternatives

[pimcore/pimcore

Content &amp; Product Management Framework (CMS/PIM/E-Commerce)

3.8k3.8M508](/packages/pimcore-pimcore)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9421.6k61](/packages/open-dxp-opendxp)[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.9M388](/packages/easycorp-easyadmin-bundle)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M574](/packages/shopware-core)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[laravel/framework

The Laravel Framework.

34.8k543.8M20.1k](/packages/laravel-framework)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
