Add PHP Media API scaffold and Docker configs

Initial project scaffold for a PHP Media API including routing, controllers, models and services under api/ (Router, Media/Cast/Image/Settings controllers, models, database/bootstrap files and automatic docs service). Adds Docker support (Dockerfile, docker-compose.yml, DOCKER_README.md, php-custom.ini), .htaccess for pretty URLs, API documentation and example payloads (API_EXAMPLES.md, api/README.md, api_examples/*.json), image handling service and logging, plus a comprehensive .gitignore. This commit provides a runnable development environment and example requests to get the API up and tested quickly.
This commit is contained in:
Lars Behrends
2026-04-12 00:46:30 +02:00
commit 66f69bc90d
54 changed files with 6035 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
{
"type": "Game",
"title": "1-2-Switch",
"sortingName": "1-02-Switch",
"description": "1-2-Switch is a party game for everyone! Throw an impromptu party anywhere with anyone thanks to a new play style in which players look at each other—not the screen!",
"notes": null,
"genres": ["Arcade"],
"categories": ["1-2-Switch"],
"tags": [],
"features": ["Multiplayer"],
"platforms": ["Nintendo Switch"],
"developers": ["Nintendo", "Nintendo Entertainment Planning & Development", "Nintendo EPD Production Group No. 4"],
"publishers": ["Nintendo"],
"series": ["1-2-Switch"],
"ageRatings": ["PEGI 7"],
"regions": [],
"source": "RomM",
"gameId": "!0ChIJR6bm+qTMQUsRjxmwJLs2yzQSUmh0dHA6Ly8xOTIuMTY4LjEuMTAyOjY2NTUvYXBpL3JvbXMvNDEzL2NvbnRlbnQvMS0yLVN3aXRjaFswMTAwMDMyMDAwMENDMDAwXVswXS5uc3AaIzEtMi1Td2l0Y2hbMDEwMDAzMjAwMDBDQzAwMF1bMF0ubnNw",
"pluginId": "9700aa21-447d-41b4-a989-acd38f407d9f",
"completionStatus": "Not Played",
"releaseDate": "2017-03-03",
"isInstalled": false,
"installDirectory": "E:\\Programme\\Emulators\\Games\\1-2-Switch[01000320000CC000][0]",
"installSize": 1481371442,
"hidden": false,
"favorite": false,
"playtime": 0,
"playCount": 0,
"lastActivity": null,
"added": "2026-04-09T17:05:10.9260000+02:00",
"modified": "2026-04-09T17:10:23.1760000+02:00",
"communityScore": 51,
"criticScore": 54,
"userScore": null,
"hasIcon": true,
"hasCover": true,
"hasBackground": true,
"version": null,
"links": [
{
"name": "Official Website",
"url": "http://1-2-switch.nintendo.com/"
},
{
"name": "Wikipedia",
"url": "https://en.wikipedia.org/wiki/1-2-Switch"
},
{
"name": "Community Wiki",
"url": "http://nintendo.wikia.com/wiki/1-2-Switch"
}
],
"achievements": [
{
"name": "First Victory",
"description": "Win your first game",
"icon": "https://example.com/achievement-icon.png",
"unlocked": true,
"unlocked_date": "2026-04-09T18:00:00"
},
{
"name": "Master Player",
"description": "Win 100 games",
"icon": "https://example.com/master-icon.png",
"unlocked": false,
"unlocked_date": null
}
]
}