Aller au contenu

Netlify

Node / BunVercel / Netlify
Configchaîne routesDirobjet ServerlessConfig
Découverte des routesloadRoutes() au démarrageManifest pré-compilé
Étape de buildOptionnelleRequise (lacis build)
my-app/
├── netlify/
│ └── functions/
│ └── api.ts ← point d'entrée de la fonction Netlify
├── routes/
│ ├── users/
│ │ └── index.ts
│ └── posts/
│ └── [id]/
│ └── index.ts
└── netlify.toml
// netlify/functions/api.ts
import { netlifyAdapter } from 'lacis/adapters'
import { routes, middlewares } from '../../routes/_manifest.js'
const handler = netlifyAdapter.createHandler({ routes, middlewares })
export { handler }
[build]
command = "lacis build"
publish = "public"
[[redirects]]
from = "/*"
to = "/.netlify/functions/api"
status = 200

Définir command = "lacis build" régénère le manifest de routes à chaque déploiement automatiquement.

  1. Installez les dépendances :

    Fenêtre de terminal
    npm install lacis @netlify/functions
  2. Committez votre fonction et la config :

    Fenêtre de terminal
    git add netlify/ netlify.toml
    git commit -m "add lacis netlify handler"
  3. Déployez :

    Fenêtre de terminal
    netlify deploy --prod

    Netlify récupère la commande de build depuis netlify.toml et régénère le manifest automatiquement.

const handler = netlifyAdapter.createHandler({
routes,
middlewares,
cors: { origin: 'https://monapp.com', credentials: true },
hooks: {
onNotFound: async (req, res) => {
res.status(404).json({ error: 'Non trouvé', path: req.url })
},
},
})