Skip to content

Commit ba0b382

Browse files
docs: add README.md with setup, usage, and project overview
- Add README.md describing features, quick start, env vars, and project structure - Add COMMIT_MESSAGE.txt containing this commit message (Also include small credit note for the "Chai aur NextJs" YouTube playlist in README.md)
1 parent 01f4b05 commit ba0b382

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+13556
-0
lines changed

.gitignore

Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2+
3+
# dependencies
4+
/node_modules
5+
/.pnp
6+
.pnp.*
7+
.yarn/*
8+
!.yarn/patches
9+
!.yarn/plugins
10+
!.yarn/releases
11+
!.yarn/versions
12+
13+
# testing
14+
/coverage
15+
16+
# next.js
17+
/.next/
18+
/out/
19+
20+
# production
21+
/build
22+
23+
# misc
24+
.DS_Store
25+
*.pem
26+
27+
# debug
28+
npm-debug.log*
29+
yarn-debug.log*
30+
yarn-error.log*
31+
.pnpm-debug.log*
32+
33+
# env files (can opt-in for committing if needed)
34+
.env*
35+
36+
# vercel
37+
.vercel
38+
39+
# typescript
40+
*.tsbuildinfo
41+
next-env.d.ts
42+
43+
### NextJS ###
44+
# dependencies
45+
/node_modules
46+
/.pnp
47+
.pnp.js
48+
49+
# testing
50+
/coverage
51+
52+
# next.js
53+
/.next/
54+
/out/
55+
56+
# production
57+
/build
58+
59+
# misc
60+
.DS_Store
61+
*.pem
62+
63+
# debug
64+
npm-debug.log*
65+
yarn-debug.log*
66+
yarn-error.log*
67+
.pnpm-debug.log*
68+
69+
# local env files
70+
.env*.local
71+
72+
# vercel
73+
.vercel
74+
75+
# typescript
76+
*.tsbuildinfo
77+
next-env.d.ts
78+
79+
### Node ###
80+
# Logs
81+
logs
82+
*.log
83+
lerna-debug.log*
84+
85+
# Diagnostic reports (https://nodejs.org/api/report.html)
86+
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
87+
88+
# Runtime data
89+
pids
90+
*.pid
91+
*.seed
92+
*.pid.lock
93+
94+
# Directory for instrumented libs generated by jscoverage/JSCover
95+
lib-cov
96+
97+
# Coverage directory used by tools like istanbul
98+
coverage
99+
*.lcov
100+
101+
# nyc test coverage
102+
.nyc_output
103+
104+
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
105+
.grunt
106+
107+
# Bower dependency directory (https://bower.io/)
108+
bower_components
109+
110+
# node-waf configuration
111+
.lock-wscript
112+
113+
# Compiled binary addons (https://nodejs.org/api/addons.html)
114+
build/Release
115+
116+
# Dependency directories
117+
node_modules/
118+
jspm_packages/
119+
120+
# Snowpack dependency directory (https://snowpack.dev/)
121+
web_modules/
122+
123+
# TypeScript cache
124+
125+
# Optional npm cache directory
126+
.npm
127+
128+
# Optional eslint cache
129+
.eslintcache
130+
131+
# Optional stylelint cache
132+
.stylelintcache
133+
134+
# Microbundle cache
135+
.rpt2_cache/
136+
.rts2_cache_cjs/
137+
.rts2_cache_es/
138+
.rts2_cache_umd/
139+
140+
141+
# dotenv environment variable files
142+
.env
143+
.env.development.local
144+
.env.test.local
145+
.env.production.local
146+
.env.local
147+
.next
148+
149+
http_status_codes.json

components.json

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"$schema": "https://ui.shadcn.com/schema.json",
3+
"style": "new-york",
4+
"rsc": true,
5+
"tsx": true,
6+
"tailwind": {
7+
"config": "",
8+
"css": "src/app/globals.css",
9+
"baseColor": "slate",
10+
"cssVariables": true,
11+
"prefix": ""
12+
},
13+
"iconLibrary": "lucide",
14+
"aliases": {
15+
"components": "@/components",
16+
"utils": "@/lib/utils",
17+
"ui": "@/components/ui",
18+
"lib": "@/lib",
19+
"hooks": "@/hooks"
20+
},
21+
"registries": {}
22+
}

emails/VerificationEmail.tsx

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
import {
2+
Html,
3+
Head,
4+
Font,
5+
Preview,
6+
Heading,
7+
Row,
8+
Section,
9+
Text,
10+
11+
// Button,
12+
} from "@react-email/components";
13+
14+
import * as React from "react";
15+
16+
interface VerificationEmailProps {
17+
username: string;
18+
otp: string;
19+
}
20+
21+
export default function VerificationEmail({
22+
username,
23+
otp,
24+
}: VerificationEmailProps) {
25+
return (
26+
<Html lang="en" dir="ltr">
27+
<Head>
28+
<title>Verification Code</title>
29+
<Font
30+
fontFamily="Roboto"
31+
fallbackFontFamily="Verdana"
32+
webFont={{
33+
url: "https://fonts.gstatic.com/s/roboto/v27/KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2",
34+
format: "woff2",
35+
}}
36+
fontWeight={400}
37+
fontStyle="normal"
38+
/>
39+
</Head>
40+
<Preview>Here&apos;s your verification code: {otp}</Preview>
41+
<Section>
42+
<Row>
43+
<Heading as="h2">Hello {username},</Heading>
44+
</Row>
45+
<Row>
46+
<Text>
47+
Thank you for registering. Please use the following verification
48+
code to complete your registration:
49+
</Text>
50+
</Row>
51+
<Row>
52+
<Text>{otp}</Text>
53+
</Row>
54+
<Row>
55+
<Text>
56+
If you did not request this code, please ignore this email.
57+
</Text>
58+
</Row>
59+
{/* <Row>
60+
<Button
61+
href={`http://localhost:3000/verify/${username}`}
62+
style={{ color: '#61dafb' }}
63+
>
64+
Verify here
65+
</Button>
66+
</Row> */}
67+
</Section>
68+
</Html>
69+
);
70+
}

eslint.config.mjs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import { dirname } from "path";
2+
import { fileURLToPath } from "url";
3+
import { FlatCompat } from "@eslint/eslintrc";
4+
5+
const __filename = fileURLToPath(import.meta.url);
6+
const __dirname = dirname(__filename);
7+
8+
const compat = new FlatCompat({
9+
baseDirectory: __dirname,
10+
});
11+
12+
const eslintConfig = [
13+
...compat.extends("next/core-web-vitals", "next/typescript"),
14+
{
15+
ignores: [
16+
"node_modules/**",
17+
".next/**",
18+
"out/**",
19+
"build/**",
20+
"next-env.d.ts",
21+
],
22+
},
23+
];
24+
25+
export default eslintConfig;

next.config.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import type { NextConfig } from "next";
2+
3+
const nextConfig: NextConfig = {
4+
/* config options here */
5+
};
6+
7+
export default nextConfig;

0 commit comments

Comments
 (0)