Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/olavoparno/next-routes-readme
Next Routes Readme is a cool utility that helps generate short and brief markdown documentation for Next App Routes (Next 13+)
https://github.com/olavoparno/next-routes-readme
Last synced: 2 days ago
JSON representation
Next Routes Readme is a cool utility that helps generate short and brief markdown documentation for Next App Routes (Next 13+)
- Host: GitHub
- URL: https://github.com/olavoparno/next-routes-readme
- Owner: olavoparno
- License: mit
- Created: 2023-10-06T21:48:50.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-11T19:45:00.000Z (about 2 months ago)
- Last Synced: 2024-12-31T11:08:17.165Z (9 days ago)
- Language: TypeScript
- Homepage: https://npmjs.com/package/next-routes-readme
- Size: 762 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Next Routes Readme
Next Routes Readme is a cool utility that helps generate short and brief markdown documentation for Next App Routes (Next 13+). It automates the process of extracting information from your App Route files and creates well-structured markdown documentation.
## Features
- Automatically extracts information from API route files.
- Generates markdown documentation with details about each API route.
- Provides information on HTTP methods, route implementations, dependencies, and more.## Installation
```bash
npm install next-routes-readme
```## Usage
```bash
npx next-routes-readme --dir=
```> https://nextjs.org/docs/app
Replace `` with the path to the folder containing your API routes.
## Example Output. See file with more examples: [ROUTES.md](ROUTES.md)
Here is an example of the generated documentation for an API route:
```markdown
---
# Route 1: [examples/app/route.ts](examples/app/route.ts)**Implementation**: `async function POST(request: NextRequest)`
**HTTP Method**: `POST`**Variables**:
1.
- **Value**: `const {
severity,
message,
functionName,
gcpProject,
serviceAccountEmail,
serviceAccountKey,
env,
} = await request.json();`
- **Line**: [examples/app/route.ts#L5](examples/app/route.ts#L5)**Conditionals**:
1.
- **Value**: `if (
!severity ||
!message ||
!functionName ||
!gcpProject ||
!serviceAccountEmail ||
!serviceAccountKey ||
!env
) {
return NextResponse.json({ error: 'Invalid Request' }, { status: 500 });
}`
- **Line**: [examples/app/route.ts#L15](examples/app/route.ts#L15)**Comments**:
1.
- **Value**: `// eslint-disable-next-line @typescript-eslint/no-explicit-any`
- **Line**: [examples/app/route.ts#L27](examples/app/route.ts#L27)**Errors**:
1.
- **Value**: `NextResponse.json({ error: 'Invalid Request' }, { status: 500 })`
- **Line**: [examples/app/route.ts#L24](examples/app/route.ts#L24)2.
- **Value**: `catch (error) {
console.error('Error logging to GCP:', error);
return NextResponse.json({ error: 'Internal Server Error' }, { status: 500 });
}`
- **Line**: [examples/app/route.ts#L31](examples/app/route.ts#L31)3.
- **Value**: `NextResponse.json({ error: 'Internal Server Error' }, { status: 500 })`
- **Line**: [examples/app/route.ts#L33](examples/app/route.ts#L33)**Query Params**:
*None*
**Route Params**:
*None*
**Dependencies**:
1.
- **Value**: `import { NextRequest, NextResponse } from 'next/server';`
- **Line**: [examples/app/route.ts#L1](examples/app/route.ts#L1)```
## Contributing
If you'd like to contribute to this project, please follow these steps:
1. Fork the repository.
2. Create a new branch for your feature or bug fix.
3. Make your changes and commit them.
4. Push your changes to your fork.
5. Submit a pull request.## License
This project is licensed under the [MIT License](LICENSE).