← Projects

Experiment

BareAPI

A schema-driven JSON API backend with Symfony and Doctrine.

Technologies
PHP · Symfony · Doctrine · JSON Schema · PostgreSQL · FrankenPHP
My contribution
My public project exploring a schema-driven backend.
Sources checked

The problem

APIs repeat descriptions of resources, validation and persistence. BareAPI explores defining data models through JSON Schema while keeping a familiar PHP backend.

Architecture and decisions

Schemas live in config/schemas; entities and repositories use Doctrine. Identifiers use UUIDv7 through Symfony Uid. FrankenPHP serves the application and Docker Compose describes the development services.

According to the README, adding a schema still requires implementing corresponding entities, controllers and services. This is not an unattended generator for arbitrary production APIs.

Status and tradeoffs

I present it as an experiment. Development CORS and error reporting are not a production security policy. Specific deployments and the next roadmap: TODO confirm.