Créer une app Encore
Instructions
Suivez les étapes dans l'ordre.
1. Vérifier avant de créer
- CLI :
encore versiondoit afficher une version. Si ce n'est pas le cas, voirencore-install. - Login : si l'app doit être déployée sur Encore Cloud,
encore auth whoamidoit afficherlogged in as <email>. Si ce n'est pas le cas, voirencore-login. Ignorer le login uniquement si l'utilisateur veut une app locale uniquement. Si vous ne pouvez pas déterminer, demandez. - Auth key uniquement (
logged in as app <app-id>): ne pas exécuterencore app create, ça échoue. Demandez à l'utilisateur de créer l'app dans le Cloud Dashboard, puis suivez Récupérer une app existante. - Déjà dans une app : si le répertoire courant ou un parent contient un fichier
encore.app, l'app existe. Ne créez pas une autre app.
2. Choisir un template
| L'utilisateur veut | Encore.ts | Encore.go |
|---|---|---|
| Une petite app fonctionnelle (par défaut) | ts/hello-world |
hello-world |
| Une app vide, sans services | ts/empty |
empty |
| Une REST API avec une base de données SQL | ts/url-shortener |
url-shortener |
| Plusieurs services, bases de données SQL, Pub/Sub, cron jobs | ts/uptime |
uptime |
| Une API GraphQL avec une base de données SQL | graphql |
--example accepte aussi n'importe quel répertoire dans https://github.com/encoredev/examples, ou une URL GitHub : https://github.com/<owner>/<repo>/tree/<branch>/<path>.
3. La créer
encore app create my-app --example=ts/hello-world # Encore.ts
encore app create my-app --example=ts/empty # Encore.ts, vide
encore app create my-app --example=hello-world # Encore.go
encore app create my-app --example=empty # Encore.go, vide
- Toujours passer
--example. Dans un terminal, la CLI demande un langage et un template quand c'est manquant. Sans terminal, ce qui est le cas des agents, elle ne peut pas demander, et crée une app Go vide, même pour un projet TypeScript. - Nom : lettres minuscules, chiffres, et tirets simples, au maximum 50 caractères, ne commençant ni finissant par un tiret. Il devient le répertoire, qui ne doit pas exister encore.
- Ça prend du temps : ça télécharge le template et exécute
npm installougo get. Attendez que ce soit terminé.
Flags optionnels :
--llm-rules=<tool>: ajoute les instructions de codage Encore pour un outil IA et configure le serveur MCP Encore local pour celui-ci. Un parmicursor,claudecode,vscode,agentsmd, ouzed.--org=<id-or-slug>: crée l'app dans une org au lieu du compte personnel de l'utilisateur.--platform=false: crée une app locale uniquement même quand logged in.
4. Vérifier le résultat
La sortie se termine par Successfully created app <name>!.
- Logged in : ça affiche aussi
App ID: <app-id>etWeb URL: https://app.encore.dev/<app-id>. L'app ID peut différer du nom. L'app a un commit initial et une remoteencore, donc elle est prête à être déployée. - Logged out :
encore.appa un"id"vide, et il n'y a pas de remoteencore. Pour la lier à Encore Cloud plus tard, voirencore-link-app.
Ensuite cd <name> et exécutez l'app (voir encore-run).
Récupérer une app existante
-
Sur Encore Cloud :
encore app clone <app-id> [directory]. Ça ajoute la remoteencore. L'app ID se trouve dans l'URL du Cloud Dashboard,app.encore.dev/<app-id>. Si l'app est liée à GitHub,git clonele repository GitHub à la place. -
Code avec un fichier
encore.app: c'est déjà une app. Exécutez-la (voirencore-run). -
Code Encore sans fichier
encore.app: enregistrez-le sur place, depuis son répertoire racine. Passez toujours--lang, sinon l'app est traitée comme Go.encore app init my-app --lang ts # --lang go pour Encore.go
Erreurs
directory <name> already exists: choisissez un autre nom, ou demandez avant de supprimer le répertoire.this directory already contains Encore code but isn't initialized as an app: utilisezencore app init(voir ci-dessus) à la place de créer une nouvelle app.specify an app name: passez le nom en premier argument.name must only contain lowercase letters, digits, or dashes, ou une autre erreur de nom : corrigez le nom.--org requires being logged in and --platform: loggez-vous, ou supprimez--org.creating app on encore.dev: ...: exécutezencore auth whoami. Si ça affichelogged in as app <app-id>, une auth key ne peut pas créer d'apps : une personne doit se logger (voirencore-login).npm installéchoue : l'app est quand même créée, sans dépendances. Installez Node.js (voirencore-install), puis exécuteznpm installdans l'app.
Directives
- Ne pas exécuter
encore app createpour déployer ou lier une app existante. Ça crée une nouvelle app, séparée. - Ensuite : exécutez l'app (
encore-run), développez-la (encore-serviceetencore-api, ouencore-go-serviceetencore-go-api), et déployez-la (encore-deploy). - Docs : https://encore.dev/docs/quick-start et https://encore.dev/docs/cli/cli-reference