maikschneider / typo3-petstore
TYPO3 petstore demo extension — showcases all TCA field types and relation patterns via the classic Swagger Petstore domain model.
Package info
github.com/maikschneider/typo3-petstore
Type:typo3-cms-extension
pkg:composer/maikschneider/typo3-petstore
Requires
- php: ^8.2
- maikschneider/tca-api: dev-api-platform-admin
- typo3/cms-core: ^13.4 || ^14.3
Requires (Dev)
- armin/editorconfig-cli: ^2.1
- ergebnis/composer-normalize: ^2.45
- friendsofphp/php-cs-fixer: ^3.12
- helhum/typo3-console: ^9.0
- phpstan/extension-installer: ^1.3
- saschaegerer/phpstan-typo3: ^3.0
- typo3/cms-install: ^13.4 || ^14.0
- typo3/cms-lowlevel: ^13.4 || ^14.0
- typo3/cms-setup: ^13.4 || ^14.0
- typo3/minimal: ^13.4 || ^14.0
- typo3/theme-camino: ^14.3
This package is auto-updated.
Last update: 2026-05-21 15:34:07 UTC
README
A demo TYPO3 extension and showcase dataset for maikschneider/tca-api. Install it, run
ddev init-typo3, and a fully wired Petstore API with an API Platform Admin frontend is ready in
seconds.
API endpoints
Five resources, full CRUD, all public. API prefix: /_api/ (configurable via the TCA API site set).
| Endpoint | GET |
POST |
PUT |
DELETE |
|---|---|---|---|---|
/_api/pets |
list | create | — | — |
/_api/pets/{id} |
show | — | update | delete |
/_api/categories |
list | create | — | — |
/_api/categories/{id} |
show | — | update | delete |
/_api/tags |
list | create | — | — |
/_api/tags/{id} |
show | — | update | delete |
/_api/orders |
list | create | — | — |
/_api/orders/{id} |
show | — | update | delete |
/_api/customers |
list | create | — | — |
/_api/customers/{id} |
show | — | update | delete |
All responses are Hydra JSON-LD. Interactive docs: /_api/swagger-ui
Demo setup
Clone this repository and install dependencies:
ddev start ddev composer install ddev init-typo3
init-typo3 sets up a fresh TYPO3 installation and imports all demo fixtures. After that the API and the Admin UI are immediately usable.
Credentials: admin / Passw0rd!
License
GPL-2.0-or-later

