0.0.1 • Published 11 months ago

react-generate-pages v0.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
11 months ago

šŸ“¦ Installation

npm install react-generate-pages -D

šŸ¦„ Usage

Configuration Vite

import react from '@vitejs/plugin-react'
import { defineConfig } from 'vite'
import pages from 'react-generate-pages'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [react(), pages()],
})

Overview

By default a page is a React Router lazy component exported from a .tsx, .jsx, .ts, .js file in the src/pages directory.

You can access the generated routes by importing the ~pages module in your application.

import ReactDOM from 'react-dom/client'
import { RouterProvider, createBrowserRouter } from 'react-router-dom'

import routes from '~pages'

ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render(
  <RouterProvider router={createBrowserRouter(routes)} />
)

Type

// vite-env.d.ts
/// <reference types="react-generate-pages/client" />

Route Style

Example:

exmaple

# folder structure
src/pages/
ā”œā”€ā”€ (dashboard)
│   ā”œā”€ā”€ [...slug]
│   │   └── page.tsx
│   ā”œā”€ā”€ posts
│   │   ā”œā”€ā”€ [id]
│   │   │   └── page.tsx
│   │   └── page.tsx
│   ā”œā”€ā”€ layout.tsx
│   └── page.tsx
ā”œā”€ā”€ about
│   └── [[lang]]
│       └── page.tsx
ā”œā”€ā”€ 404.tsx
ā”œā”€ā”€ layout.tsx
└── page.tsx