Files
workbloomerp-api/public/index.php
T

51 lines
1.4 KiB
PHP
Executable File

<?php
// Importa autoload do Composer
require_once realpath(path: __DIR__ . '/../vendor/autoload.php');
use Dotenv\Dotenv;
use KrothiumAPI\KrothiumAPI;
// Carrega variáveis de ambiente
$dotenv = Dotenv::createImmutable(paths: __DIR__ . '/..');
$dotenv->load();
// ======================================
// Inicializa KrothiumAPI com configs
// ======================================
KrothiumAPI::init(config: [
'app' => [
'mode' => $_ENV['APP_MODE'] ?? 'DEV', // DEV | PROD
],
'paths' => [
'root' => __DIR__ . '/..',
'src' => __DIR__ . '/../app',
'module' => __DIR__ . '/../app/Module',
'storage' => __DIR__ . '/var/www/workbloomerp-api/storage',
'component' => __DIR__ . '/../app/Common/Component',
],
'router' => [
'base_path' => $_ENV['ROUTER_BASE_PATH'] ?? '',
'allowed_origins' => ['*'],
],
'system' => [
'enable_session' => true,
'default_timezone' => 'America/Fortaleza',
],
'errors' => [
'error_log' => __DIR__ . '/../storage/Logs/php-error.log',
],
'logger' => [
'driver' => 'FILE',
'logDir' => __DIR__ . '/../storage/Logs'
],
'constants' => [
// Constantes extras específicas da aplicação, se precisar.
]
]);
// Importa rotas da API v0
// ============================
// Dispara o roteador
// ============================
KrothiumAPI::routerDispatch();