पाठ 17 / 32
autoload के साथ Project Structure
Fastify app को plugins और routes folders में व्यवस्थित करें और @fastify/autoload से उन्हें अपने-आप load करें।
Folders plugins के रूप में
साझा plugins plugins/ में और route modules routes/ में रखें, फिर autoload से उन्हें register करने दें।
// src/app.js
import AutoLoad from '@fastify/autoload';
import { join } from 'node:path';
export default async function app(fastify, opts) {
fastify.register(AutoLoad, { dir: join(import.meta.dirname, 'plugins') });
fastify.register(AutoLoad, { dir: join(import.meta.dirname, 'routes'), options: { prefix: '/api' } });
}app.js से build() export करें और listen केवल server.js में बुलाएँ। तब tests app import करके port खोले बिना inject उपयोग कर सकते हैं।