apps/README.md
Rama main · réplica de lectura del repositorio original.
# Apps
Deployable applications that live in this repository but are not part of the PHP server. Each app has its own runtime, dependencies, Docker image, and release cadence.
| App | What it is | Image |
| ------------------ | ---------------------------------------------------------- | -------------- |
| [console](console) | The Appwrite Console and appwrite.io, Bun + TanStack Start | `appwrite/new` |
## Apps, packages, and app
| Directory | Holds | Ships as |
| ----------- | ------------------------------------------------------- | ---------------------------------------- |
| `app/` | The PHP server: entrypoints, config, controllers, views | `appwrite/appwrite` |
| `packages/` | Utopia PHP libraries, autoloaded by the server | Read-only mirrors at `utopia-php/<name>` |
| `apps/` | Standalone applications | Their own images |
`apps/console` is not `packages/console`: the latter is the `utopia-php/console` CLI library. Apps have no split mirror, no Composer autoload, and are excluded from the server's Docker build context.
## CI
The `changes` job in [.github/scripts/changes.sh](../.github/scripts/changes.sh) decides which suites a run needs. A pull request that only touches `apps/console` skips the server build and E2E suite, and a server-only pull request skips the console checks and E2E.
| Workflow | Runs |
| --------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| [console.yml](../.github/workflows/console.yml) | Lint, unit tests, and build on every console change; E2E on same-repository pull requests |
| [console-staging.yml](../.github/workflows/console-staging.yml) | Builds `appwrite/new:<sha>` and deploys it to staging on pushes to `main` |
| [console-production.yml](../.github/workflows/console-production.yml) | Builds `appwrite/new:<version>` and `<version>-self-hosted` and deploys to production |
Pull requests that change `apps/console` also get a preview deployment from the `new-console` Appwrite Site, whose Git settings are recorded in [apps/console/appwrite.config.json](console/appwrite.config.json). A pull request from a fork builds only after a team member authorizes it from the bot comment.
## Releasing the console
Push an `apps/console/<version>` tag:
```bash
git tag apps/console/1.2.44
git push origin apps/console/1.2.44
```
Console releases are tags only. GitHub releases on this repository belong to the server, and `console/<version>` is the release tag of `packages/console`.