https://github.com/aula-app/aula-backend
aula app - PHP Backend that provides API consumed by the Frontend and Mobile Apps
https://github.com/aula-app/aula-backend
democracy gemensam gestalten school schule youth
Last synced: 3 months ago
JSON representation
aula app - PHP Backend that provides API consumed by the Frontend and Mobile Apps
- Host: GitHub
- URL: https://github.com/aula-app/aula-backend
- Owner: aula-app
- License: other
- Created: 2023-05-16T07:51:08.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2026-03-05T21:36:11.000Z (3 months ago)
- Last Synced: 2026-03-06T01:16:38.547Z (3 months ago)
- Topics: democracy, gemensam, gestalten, school, schule, youth
- Language: PHP
- Homepage:
- Size: 3.07 MB
- Stars: 4
- Watchers: 3
- Forks: 1
- Open Issues: 42
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
- Security: SECURITY.md
Awesome Lists containing this project
README
# aula API
Backend API for serving aula. Visit the [aula documentation](https://docs.aula.de/) for more information about the project.
## Self-Hosting
See [SELF_HOSTING.md](https://github.com/aula-app/aula-backend/blob/main/SELF_HOSTING.md) for up-to-date information. At the moment, running aula-backend and aula-frontend docker images is NOT enough.
## License
See [`LICENSE.txt`](https://github.com/aula-app/aula-backend/blob/main/LICENSE.txt). Licensed under the EUPL-1.2 or later.
You may obtain a copy of the license at https://interoperable-europe.ec.europa.eu/collection/eupl/eupl-text-eupl-12.
## Contribution
Thank you for your interest. See contribution guidelines at [`CONTRIBUTION.md`](https://github.com/aula-app/aula-backend/blob/main/CONTRIBUTION.md).
## Development
### Running
First time setup:
```bash
# Copy example configs for legacy
make prepare-legacy-local
# Generate keypair for oauth
php artisan passport:keys -q
```
Then, to start aula-backend(s), run:
```bash
# Run both legacy aula-backend:v1 (:8080) and current Laravel-based aula-backend:v2 (:8000)
docker compose up --build -d
```
And initialize your first Tenant Instance from within the v2 container with `php artisan tenant:create`.
## Legacy aula-backend code
We're currently rewriting the API to use Laravel and be RESTful. New feature development using code in the `./legacy/` folder is stopped since 2025-11-15. Security patches and bugs are welcome. As parts of the system get refactored, and API clients updated, we will remove the related code from the legacy codebase.
### Legacy part of API
- `./legacy/src` contains all PHP source files that are served by Apache2.
- `./legacy/config` has templates for configuration. You can manually edit them.
- `./legacy/init` has SQL scripts to init the legacy DB structure, for local development use only.
- `./legacy/docker-local` is local-only folder bound to Docker volumes storing database and uploaded files.
### Running the legacy code locally through Docker Compose
You can use one of the two following:
```bash
# Run the latest published release locally
make run-legacy-release
```
```bash
# Run locally live development environment (files you edit get updated immediately)
make run-legacy-local
```