This repository has been archived on 2025-08-04. You can view files and clone it, but cannot push or open issues or pull requests.
Files
tasklist-backend/public/index.php

30 lines
865 B
PHP

<?php declare(strict_types=1);
use Controllers\TaskController;
use DI\Bridge\Slim\Bridge;
use DI\Container;
use Controllers\HomeFrontController;
use Slim\Handlers\Strategies\RequestResponseArgs;
require_once __DIR__ . '/../vendor/autoload.php';
$container = new Container();
$app = Bridge::create($container);
$app->addBodyParsingMiddleware();
// this strategy is preferable because we aren't using a lot of named placeholders
$routeCollector = $app->getRouteCollector();
$routeCollector->setDefaultInvocationStrategy(new RequestResponseArgs());
$app->get('/', [HomeFrontController::class, 'home']);
$app->get('/tasks/{id}', [TaskController::class, 'getTask']);
$app->delete('/tasks/{id}', [TaskController::class, 'delete']);
$app->get('/tasks', [TaskController::class, 'getTasks']);
$app->post('/tasks', [TaskController::class, 'addTask']);
$app->run();