Skip to content

Commit 6070561

Browse files
committed
feat: init project
1 parent 8f61eb0 commit 6070561

28 files changed

+12062
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
# project-docs-kit
2+
23
A collection of best-practice documentation templates for software projects. Ready to use with NestJS, NodeJS, Java, and more.

docs/.gitignore

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2+
3+
# dependencies
4+
/node_modules
5+
/.pnp
6+
.pnp.js
7+
.yarn/install-state.gz
8+
9+
# testing
10+
/coverage
11+
12+
# next.js
13+
/.next/
14+
/out/
15+
16+
# production
17+
/build
18+
19+
# misc
20+
.DS_Store
21+
*.pem
22+
23+
# debug
24+
npm-debug.log*
25+
yarn-debug.log*
26+
yarn-error.log*
27+
28+
# env files (can opt-in for commiting if needed)
29+
.env*
30+
31+
# vercel
32+
.vercel
33+
34+
# typescript
35+
*.tsbuildinfo
36+
next-env.d.ts
37+
38+
_pagefind/

docs/README.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/create-next-app).
2+
3+
## Getting Started
4+
5+
First, run the development server:
6+
7+
```bash
8+
npm run dev
9+
# or
10+
yarn dev
11+
# or
12+
pnpm dev
13+
# or
14+
bun dev
15+
```
16+
17+
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
18+
19+
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
20+
21+
This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load Inter, a custom Google Font.
22+
23+
## Learn More
24+
25+
To learn more about Next.js, take a look at the following resources:
26+
27+
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
28+
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
29+
30+
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
31+
32+
## Deploy on Vercel
33+
34+
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
35+
36+
Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.

docs/app/_meta.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
const meta = {
2+
index: {
3+
type: "page",
4+
title: "Home",
5+
display: "hidden",
6+
},
7+
docs: {
8+
type: "page",
9+
title: "Documentation",
10+
},
11+
};
12+
13+
export default meta;
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import { generateStaticParamsFor, importPage } from 'nextra/pages';
2+
import { useMDXComponents } from '@/mdx-components';
3+
4+
export const generateStaticParams = generateStaticParamsFor('mdxPath');
5+
6+
export async function generateMetadata(props) {
7+
const params = await props.params;
8+
const { metadata } = await importPage(params.mdxPath);
9+
return metadata;
10+
}
11+
12+
const Wrapper = useMDXComponents().wrapper;
13+
14+
export default async function Page(props) {
15+
const params = await props.params;
16+
const result = await importPage(params.mdxPath);
17+
const { default: MDXContent, toc, metadata } = result;
18+
return (
19+
<Wrapper toc={toc} metadata={metadata}>
20+
<MDXContent {...props} params={params} />
21+
</Wrapper>
22+
);
23+
}

docs/app/globals.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
@import 'tailwindcss';

docs/app/layout.tsx

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
import { Footer, Layout, Navbar } from "nextra-theme-docs";
2+
import { Head } from "nextra/components";
3+
import { getPageMap } from "nextra/page-map";
4+
import "nextra-theme-docs/style.css";
5+
import "./globals.css";
6+
7+
export const metadata = {
8+
metadataBase: new URL("https://nextra.site"),
9+
title: {
10+
template: "%s - Project Docs Kit",
11+
},
12+
description: "Project Docs Kit: The best way to build a Project Documentation",
13+
applicationName: "Project Docs Kit",
14+
generator: "Next.js",
15+
appleWebApp: {
16+
title: "Project Docs Kit",
17+
},
18+
other: {
19+
"msapplication-TileImage": "/ms-icon-144x144.png",
20+
"msapplication-TileColor": "#fff",
21+
},
22+
twitter: {
23+
site: "https://docs-kit.khuong.dev",
24+
},
25+
};
26+
27+
export default async function RootLayout({
28+
children,
29+
}: {
30+
children: React.ReactNode;
31+
}) {
32+
const navbar = (
33+
<Navbar
34+
logo={
35+
<div>
36+
<b>Project Docs Kit</b>{" "}
37+
<span style={{ opacity: "30%" }}>
38+
The best way to build a Project Documentation
39+
</span>
40+
</div>
41+
}
42+
projectLink="https://github.com/lamngockhuong/project-docs-kit"
43+
/>
44+
);
45+
const pageMap = await getPageMap();
46+
return (
47+
<html lang="en" dir="ltr" suppressHydrationWarning>
48+
<Head faviconGlyph="✦" />
49+
<body>
50+
<Layout
51+
navbar={navbar}
52+
footer={
53+
<Footer className="py-8">
54+
<div className="mx-auto px-4 sm:px-6">
55+
<div className="text-center">
56+
<p>
57+
Built with ❤️ {new Date().getFullYear()} by{" "}
58+
<a href="https://khuong.dev" target="_blank">
59+
Khuong Dev
60+
</a>
61+
</p>
62+
</div>
63+
</div>
64+
</Footer>
65+
}
66+
editLink="Edit this page on GitHub"
67+
docsRepositoryBase="https://github.com/lamngockhuong/project-docs-kit/tree/main/docs"
68+
sidebar={{ defaultMenuCollapseLevel: 1 }}
69+
pageMap={pageMap}
70+
>
71+
{children}
72+
</Layout>
73+
</body>
74+
</html>
75+
);
76+
}

docs/app/not-found.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { NotFoundPage as default } from "nextra-theme-docs";

docs/app/page.jsx

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
import Link from 'next/link';
2+
3+
export default function HomePage() {
4+
return (
5+
<div className="min-h-screen bg-gradient-to-b from-gray-50 to-white">
6+
{/* Hero Section */}
7+
<section className="py-20 px-4 sm:px-6 lg:px-8">
8+
<div className="max-w-7xl mx-auto text-center">
9+
<h1 className="text-4xl sm:text-5xl md:text-6xl font-bold text-gray-900 mb-6">
10+
Project Docs Kit
11+
</h1>
12+
<p className="text-xl text-gray-600 mb-8 max-w-3xl mx-auto">
13+
A collection of best-practice documentation templates for software projects. Ready to use with NestJS, NodeJS, Java, and more.
14+
</p>
15+
<div className="flex justify-center gap-4">
16+
<Link
17+
href="/docs/getting-started"
18+
className="bg-blue-600 text-white px-6 py-3 rounded-lg font-medium hover:bg-blue-700 transition-colors"
19+
>
20+
Get Started
21+
</Link>
22+
<Link
23+
href="/docs/architecture"
24+
className="bg-gray-200 text-gray-800 px-6 py-3 rounded-lg font-medium hover:bg-gray-300 transition-colors"
25+
>
26+
View Architecture
27+
</Link>
28+
</div>
29+
</div>
30+
</section>
31+
32+
{/* Features Section */}
33+
<section className="py-16 bg-white">
34+
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
35+
<h2 className="text-3xl font-bold text-center text-gray-900 mb-12">
36+
Key Features
37+
</h2>
38+
<div className="grid grid-cols-1 md:grid-cols-3 gap-8">
39+
<div className="p-6 bg-gray-50 rounded-xl">
40+
<h3 className="text-xl font-semibold mb-3">Ready to use</h3>
41+
<p className="text-gray-600">
42+
Built with Next.js, Tailwind CSS, and TypeScript, ready to use with NestJS, NodeJS, Java, and more.
43+
</p>
44+
</div>
45+
<div className="p-6 bg-gray-50 rounded-xl">
46+
<h3 className="text-xl font-semibold mb-3">Open Source</h3>
47+
<p className="text-gray-600">
48+
All templates are open source and free to use.
49+
</p>
50+
</div>
51+
<div className="p-6 bg-gray-50 rounded-xl">
52+
<h3 className="text-xl font-semibold mb-3">Customizable</h3>
53+
<p className="text-gray-600">
54+
All templates are customizable to fit your project needs.
55+
</p>
56+
</div>
57+
</div>
58+
</div>
59+
</section>
60+
61+
{/* Quick Start Section */}
62+
<section className="py-16 bg-gray-50">
63+
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
64+
<h2 className="text-3xl font-bold text-center text-gray-900 mb-12">
65+
Quick Start
66+
</h2>
67+
<div className="bg-gray-800 rounded-lg p-6 text-white font-mono">
68+
<pre className="overflow-x-auto">
69+
<code>
70+
{`# Clone the repository
71+
git clone https://github.com/lamngockhuong/project-docs-kit.git
72+
73+
# Install dependencies
74+
cd project-docs-kit
75+
pnpm install
76+
77+
# Start development
78+
pnpm dev`}
79+
</code>
80+
</pre>
81+
</div>
82+
</div>
83+
</section>
84+
</div>
85+
);
86+
}
87+

docs/content/_meta.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
export default {
2+
index: "",
3+
techstack: "",
4+
"style-guides": "",
5+
testing: "",
6+
};

0 commit comments

Comments
 (0)