PHPackages                             juannw/quarkphp-mini - 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. juannw/quarkphp-mini

ActiveProject[Framework](/categories/framework)

juannw/quarkphp-mini
====================

Mini-framework PHP ligero para proyectos simples

1.0.0(7mo ago)24MITPHPPHP ^8.1

Since Sep 25Pushed 7mo agoCompare

[ Source](https://github.com/Juan-Zuniga/QuarkPHP)[ Packagist](https://packagist.org/packages/juannw/quarkphp-mini)[ RSS](/packages/juannw-quarkphp-mini/feed)WikiDiscussions master Synced 1mo ago

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

QuarkPHP v1.0.0
===============

[](#quarkphp-v100)

QuarkPHP es un micro-framework PHP ligero para proyectos simples, construido con PHP 8.1+, `bramus/router` para enrutamiento, `medoo/medoo` para base de datos, y `phpmailer/phpmailer` para emails. Este README muestra cómo usar rutas, controladores, respuestas JSON, datos POST, consultas a base de datos, y cómo configurar la seguridad.

Requisitos
----------

[](#requisitos)

- PHP &gt;= 8.1
- Composer
- Servidor web (ej. Apache/XAMPP)
- MySQL/MariaDB
- Configuración SMTP

Instalación Básica
------------------

[](#instalación-básica)

1. Clona el repositorio y ejecuta: ```
    composer install
    ```
2. Copia `.env.example` a `.env` y configura (base de datos, SMTP, `BASE_URL`).
3. Asegura permisos: ```
    chmod -R 755 .
    chmod -R 777 writable/
    ```

Seguridad
---------

[](#seguridad)

- **Restringir Acceso**: Solo la carpeta `public/` debe ser accesible. Otras carpetas (`writable/`, `app/`, `config/`, `system/`) deben estar protegidas.
- **Configurar DocumentRoot**: Asegúrate de que el servidor web apunte a `public/`:
    - En XAMPP, edita `/opt/lampp/etc/httpd.conf`: ```
        DocumentRoot "/opt/lampp/htdocs/quarkphp/public"

            AllowOverride All
            Require all granted

        ```
    - En HostGator, configura el dominio/subdominio para apuntar a `public_html/quarkphp/public/`.
- **Proteger Carpetas**: Crea un archivo `.htaccess` en la raíz: ```

        RewriteEngine On
        RewriteCond %{REQUEST_URI} !^/public/ [NC]
        RewriteRule ^(.*)$ - [F,L]

        Order Allow,Deny
        Deny from all

    ```
- **Proteger `writable/`**: Agrega `writable/.htaccess`: ```
    Deny from all
    ```

Uso del Framework
-----------------

[](#uso-del-framework)

### Definir Rutas

[](#definir-rutas)

Las rutas se definen en `app/routes.php` usando `bramus/router`. Usa `@` para mapear a métodos de controladores.

```
