DocsCommandes et configuration
Configuration
La configuration est une classe dans nexyconfig.py à la racine du projet. Nexy le charge à partir du répertoire dans lequel il s'exécute ; un projet sans le fichier utilise les valeurs par défaut.
from nexy.core.models import NexyConfigModelfrom nexy.frontend import react class NexyConfig(NexyConfigModel): useFF = react() usePort = 3000 useTitle = "My App" useAliases = {"@": "src"}Serveur
| Champ | Par défaut | Signification |
|---|---|---|
usePort |
3000 |
port pour dev et start |
useHost |
"0.0.0.0" |
lier l'adresse |
useSslKeyfile, useSslCertfile |
None |
servir HTTPS directement |
useDevTools |
True |
la barre d'outils nexy dev ajoute à chaque page (informations sur la page, itinéraires, erreurs, configuration) ; False le supprime. Jamais présent en production |
useHealth |
False |
servir GET /health/live et GET /health/ready pour les équilibreurs de charge et les sondes Kubernetes ; voir Déployer |
useWorkers |
0 |
traite les exécutions de nx start ; 0 est un par processeur sous Linux et macOS, un sous Windows |
useCSR |
False |
mode de routage côté client ; .nexy les itinéraires sont désactivés |
Itinéraires
| Champ | Par défaut | Signification |
|---|---|---|
useRouter |
None |
une instance ou une classe APIRouter montée à côté des routes basées sur des fichiers ; None signifie basé sur un fichier uniquement |
excludeDirs |
["templates", "extension", "docs"] |
répertoires ignorés lors de l'analyse des itinéraires |
useAliases |
None |
importer des alias, par ex. {"@": "src"} (@/components/Counter.tsx signifie src/components/Counter.tsx) ; nx new écrit celui que vous avez choisi, et Vite et tsconfig.json le suivent |
Front-end
| Champ | Par défaut | Signification |
|---|---|---|
useFF |
None |
fabrique de framework client : react(), vue(), svelte(), solid(), preact() |
useVite |
True |
créer et servir des bundles clients avec Vite |
useMarkdownExtensions |
[] |
extensions supplémentaires pour le rendu .md/.mdx |
useWatchExtensions |
None |
extensions supplémentaires surveillées par le serveur de développement |
useWatchExcludePatterns |
None |
modèles globaux que le serveur de développement ignore |
Bon à savoir :
NexyConfigModeldéclareuseVite = False; la valeur par défaut du runtimeConfigestTrue.
Noms de fichiers réservés
Chaque champ ajoute des extensions à un rôle réservé. useLayoutExtensions = ["md"] rend layout.md réservé, exactement comme layout.nexy.
| Champ | Ajoute des extensions à |
|---|---|
useLayoutExtensions |
layout.* |
useNotFoundExtensions |
notfound.* |
useErrorsExtensions |
errors.* |
useForbiddenExtensions |
forbidden.* |
useUnauthorizedExtensions |
unauthorized.* |
useLoadingExtensions |
loading.* |
Documentation API
| Champ | Par défaut | Signification |
|---|---|---|
useDocs |
True |
servir la page de référence Scalar ; /openapi.json est servi dans les deux sens |
useDocsUrl |
"/docs" |
chemin de la page de référence de l'API |
useRedocsUrl |
"/redocs" |
déclaré mais aucune route n'est montée |
useTitle |
"Nexy App" |
Titre de OpenAPI et titre de la page ("Nexy" dans NexyConfigModel) |
/docs gratuit pour une page du projet
La référence de l'API répond à /docs avant toute route, donc src/routes/docs.nexy ou src/routes/docs/[[...slug]].nexy n'y sont jamais servis. nx dev et nx start nomment une telle page au démarrage. Déplacez la référence avec useDocsUrl :
from nexy.core.models import NexyConfigModel class NexyConfig(NexyConfigModel): useDocsUrl = "/api-reference"Ou désactivez-le avec useDocs = False. /openapi.json reste servi dans les deux cas : garder les itinéraires du projet hors de ce chemin.
Intergiciel
| Champ | Par défaut | Signification |
|---|---|---|
useMiddlewares |
[] |
Classes de middleware ASGI |
useCORS |
None |
kwargs pour CORSMiddleware |
useGZip |
None |
kwargs pour GZipMiddleware |
useTrustedHost |
None |
kwargs pour TrustedHostMiddleware |
useSession |
None |
kwargs pour SessionMiddleware |
useAuth |
None |
configuration du middleware d'authentification |
useHTTPSRedirect |
False |
rediriger HTTP vers HTTPS |
Markdown
| Champ | Par défaut | Signification |
|---|---|---|
useTocDepth |
"2-6" |
niveaux de titres inclus dans la table des matières |
useTocTitle |
"Table of Contents" |
Titre de la table des matières |
useTocAuto |
True |
générer la table des matières pour Markdown pages |
Itinéraires en dehors de l’arborescence des fichiers
Construisez un FastAPI APIRouter et montez-le avec useRouter. Il est servi à côté des routes basées sur des fichiers :
from fastapi import APIRouterfrom nexy.core.models import NexyConfigModel router = APIRouter() @router.get("/health")def health(): return {"status": "ok"} class NexyConfig(NexyConfigModel): useRouter = routerLes valeurs par défaut ci-dessus sont lues à partir de nexy/core/config.py.
Déclaré, pas encore lu
Ces champs existent dans NexyConfigModel mais aucun code ne les consomme. Leur définition n'a aucun effet :
useViteDevUrl, useRTL.