Skip to content

Commit 6a07f18

Browse files
committed
Merge Next.js migration changes - Issue #3069
2 parents 7b3ec1b + 2bc76fb commit 6a07f18

104 files changed

Lines changed: 25682 additions & 102 deletions

File tree

Some content is hidden

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

.gitignore

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
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

README-NEXTJS.md

Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
# Keploy Writers Program - Next.js
2+
3+
> This repository has been migrated from static HTML/CSS/JS to Next.js 15 with TypeScript and Tailwind CSS
4+
5+
## 🚀 Getting Started
6+
7+
### Prerequisites
8+
9+
- Node.js 18.x or higher
10+
- npm 9.x or higher
11+
12+
### Installation
13+
14+
1. Clone the repository:
15+
```bash
16+
git clone https://github.com/keploy/writers-program.git
17+
cd writers-program
18+
```
19+
20+
2. Install dependencies:
21+
```bash
22+
npm install
23+
```
24+
25+
3. Run the development server:
26+
```bash
27+
npm run dev
28+
```
29+
30+
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
31+
32+
## 📦 Available Scripts
33+
34+
- `npm run dev` - Starts the development server on http://localhost:3000
35+
- `npm run build` - Creates an optimized production build
36+
- `npm start` - Starts the production server
37+
- `npm run lint` - Runs ESLint to check for code quality issues
38+
- `npm run type-check` - Runs TypeScript compiler to check for type errors
39+
40+
## 🏗️ Project Structure
41+
42+
```
43+
writers-program/
44+
├── app/ # Next.js App Router
45+
│ ├── layout.tsx # Root layout with Header/Footer
46+
│ ├── page.tsx # Home page
47+
│ └── globals.css # Global styles
48+
├── components/ # React components
49+
│ ├── sections/ # Page sections
50+
│ │ ├── HeroSection.tsx
51+
│ │ ├── AboutSection.tsx
52+
│ │ ├── ProgramSection.tsx
53+
│ │ ├── ProcessSection.tsx
54+
│ │ ├── CriteriaSection.tsx
55+
│ │ └── CommunitySection.tsx
56+
│ ├── ui/ # Reusable UI components
57+
│ │ └── button.tsx
58+
│ ├── Header.tsx # Header component
59+
│ └── Footer.tsx # Footer component
60+
├── lib/ # Utility functions
61+
│ └── utils.ts # Helper functions (cn, etc.)
62+
├── public/ # Static assets
63+
│ ├── images/ # Images and GIFs
64+
│ ├── fonts/ # Font files
65+
│ └── css-legacy/ # Legacy CSS (for reference)
66+
├── next.config.ts # Next.js configuration
67+
├── tailwind.config.ts # Tailwind CSS configuration
68+
├── tsconfig.json # TypeScript configuration
69+
└── package.json # Dependencies and scripts
70+
```
71+
72+
## 🎨 Tech Stack
73+
74+
- **Framework**: Next.js 15 (App Router)
75+
- **Language**: TypeScript
76+
- **Styling**: Tailwind CSS
77+
- **UI Components**: Radix UI primitives
78+
- **Icons**: Lucide React
79+
- **Fonts**: Google Fonts (Lato, Inconsolata, Montserrat)
80+
81+
## 🔧 Configuration
82+
83+
### Environment Variables
84+
85+
No environment variables are required for the basic setup. If you need to add any, create a `.env.local` file in the root directory.
86+
87+
### Tailwind CSS
88+
89+
The project uses Tailwind CSS v4 with custom configuration. See `tailwind.config.ts` for customization options.
90+
91+
### TypeScript
92+
93+
TypeScript is configured with strict mode. See `tsconfig.json` for compiler options.
94+
95+
## 📝 Migration Notes
96+
97+
This project was migrated from a static HTML/CSS/JS website to Next.js 15. Key changes include:
98+
99+
1. **Component-based architecture**: All sections are now React components
100+
2. **Server Components**: Leveraging Next.js 15 server components for better performance
101+
3. **Image Optimization**: Using Next.js Image component for optimized images
102+
4. **Type Safety**: Full TypeScript support for better developer experience
103+
5. **Modern Styling**: Tailwind CSS for utility-first styling
104+
6. **SEO Improvements**: Proper metadata and OpenGraph tags
105+
106+
### Legacy Files
107+
108+
Legacy CSS and JS files have been moved to `public/css-legacy` and are kept for reference only. They are not used in the new implementation.
109+
110+
## 🌐 Deployment
111+
112+
### Vercel (Recommended)
113+
114+
The easiest way to deploy this Next.js app is through [Vercel](https://vercel.com/):
115+
116+
1. Push your code to GitHub
117+
2. Import your repository on Vercel
118+
3. Vercel will automatically detect Next.js and configure the build settings
119+
4. Deploy!
120+
121+
### Other Platforms
122+
123+
You can also deploy to:
124+
- Netlify
125+
- AWS Amplify
126+
- Google Cloud Run
127+
- Docker containers
128+
129+
For production builds, always run:
130+
```bash
131+
npm run build
132+
npm start
133+
```
134+
135+
## 🤝 Contributing
136+
137+
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests.
138+
139+
## 📄 License
140+
141+
See [LICENSE](LICENSE) file for details.
142+
143+
## 🔗 Links
144+
145+
- [Writers Program Website](https://writers.keploy.io/)
146+
- [Keploy Main Website](https://keploy.io)
147+
- [Keploy Blog](https://keploy.io/blog)
148+
- [Join Our Slack](https://join.slack.com/t/keploy/shared_invite/zt-357qqm9b5-PbZRVu3Yt2rJIa6ofrwWNg)
149+
150+
## ⚡ Performance
151+
152+
This Next.js implementation includes:
153+
154+
- Server-side rendering for faster initial page loads
155+
- Automatic code splitting
156+
- Image optimization
157+
- Font optimization
158+
- CSS optimization through Tailwind
159+
160+
## 🐛 Known Issues
161+
162+
None at the moment. Please report any issues on the [GitHub Issues](https://github.com/keploy/writers-program/issues) page.
163+
164+
## 📞 Support
165+
166+
For support, join our [Slack community](https://join.slack.com/t/keploy/shared_invite/zt-357qqm9b5-PbZRVu3Yt2rJIa6ofrwWNg) or open an issue on GitHub.

README.md

Lines changed: 23 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -1,115 +1,36 @@
1+
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
12

2-
<p align="center">
3-
<img align="center" src="https://docs.keploy.io/img/keploy-logo-dark.svg?s=200&v=4" height="40%" width="40%" alt="keploy logo"/>
4-
</p>
3+
## Getting Started
54

6-
<h1 align="center">
7-
<b>
8-
Writers Program
9-
</b>
10-
</h1 >
5+
First, run the development server:
116

12-
At Keploy, we're always looking for new ways for our community to get involved in what we do. Keploy Writer's program is focused to acknowledge the creativity, skills, and talent of various writers in the technical ecosystem, and pay them for writing developer-centric content. Through this program, authors can now either **win swags or earn up to $100** for publishing content with Keploy🧡
7+
```bash
8+
npm run dev
9+
# or
10+
yarn dev
11+
# or
12+
pnpm dev
13+
# or
14+
bun dev
15+
```
1316

14-
<p style='font-size: 20px;'> We seek a broad range of technical content from experienced writers to produce content for software developers that provides rich detail about using popular tools. We’re looking for content that targets beginner to intermediate software developers. </p>
17+
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
1518

16-
Examples of some preferred topics might include:
19+
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
1720

18-
<ul style='font-size: 20px; margin-left:100px;'>
19-
<li> Software testing productivity hacks. </li>
20-
<li> Tips and tricks for popular software testing tools. </li>
21-
<li> A case study on testing and testing techniques. </li>
22-
<li> How to perform e2e testing with popular app frameworks like Node, Java, Django, and Flask. </li>
23-
</ul>
21+
This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
2422

25-
## How to submit?
23+
## Learn More
2624

27-
If you're a fit for this program, [Write for Us](https://forms.gle/ZP72SpWdNyjg4gbu8) and earn exciting rewards and compensation by Keploy🧡
25+
To learn more about Next.js, take a look at the following resources:
2826

29-
## About you
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.
3029

31-
We are seeking individuals who meet the following eligibility criteria:
30+
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
3231

33-
<ul style='font-size: 20px; margin-left:100px;'>
34-
<li> Experience in Technical Writing. </li>
35-
<li> Decent knowledge in the tech domain </li>
36-
<li> Skills in software testing is a bonus. </li>
37-
</ul>
32+
## Deploy on Vercel
3833

39-
## The Process
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.
4035

41-
1. **Register Yourself:** Fill out [this form](https://forms.gle/ZP72SpWdNyjg4gbu8) and register to the writers program. We'll be earger to have you along.
42-
2. **Onboarding Starts:** Get onboard with us, learn about Keploy's ecosystem, connect with the team & mentors.
43-
3. **Research your Idea** You'll start by choosing and researching about your write-up. Get access to mentorship & resources by the team.
44-
4. **Craft your Work:** Start crafting your ideas into words. This part includes you working on the approved ideas and topics.
45-
5. **Revision & Submissions:** This includes copy editing, hero image design, and revision of your article. Yes, we got to help you revise it before submitting.
46-
6. **Publication** Once the content meets all the guidlines, you're all set to publish your content with Keploy, earn and redeem your benefits.
47-
48-
## Technical Writing Guidelines
49-
50-
### Conditions
51-
52-
1. As stated in the publishing policy, we only accept 100% fresh write-ups(of any kind). We strictly do not encourage republishing any existing work or even a portion of it. Keploy doesn't accept agency work, promotional material, or sponsored posts of any kind.
53-
2. Minimum <u>700</u> word count.
54-
3. Chosen keywords must have a search volume greater than <u> 400 </u>. [know about search volume [here](https://www.google.com/search?q=what+is+search+volume+in+seo&sca_esv=a07f0383584960a3&ei=XuoxZ7ScHtfhseMPlY-1mAk&ved=0ahUKEwi0w8GzltSJAxXXcGwGHZVHDZMQ4dUDCA8&uact=5&oq=what+is+search+volume+in+seo&gs_lp=Egxnd3Mtd2l6LXNlcnAiHHdoYXQgaXMgc2VhcmNoIHZvbHVtZSBpbiBzZW8yCxAAGIAEGJECGIoFMgYQABgWGB4yCxAAGIAEGIYDGIoFMgsQABiABBiGAxiKBTIIEAAYgAQYogQyCBAAGIAEGKIESO40UKsHWKMxcAZ4AJABAJgBhQGgAcEZqgEFMTcuMTW4AQPIAQD4AQGYAiWgAusZwgIKEAAYsAMY1gQYR8ICERAuGIAEGJECGNEDGMcBGIoFwgILEAAYgAQYsQMYgwHCAggQABiABBixA8ICIBAuGIAEGJECGNEDGMcBGIoFGJcFGNwEGN4EGOAE2AEBwgIQEAAYgAQYsQMYQxiDARiKBcICBRAAGIAEwgIKEAAYgAQYQxiKBcICCxAAGIAEGLEDGIoFwgIIEC4YgAQYsQPCAg4QABiABBixAxiDARiKBcICDhAAGIAEGJECGLEDGIoFwgIFECEYoAHCAggQABgWGB4YD5gDAIgGAZAGCLoGBggBEAEYFJIHBTE2LjIxoAePvgE&sclient=gws-wiz-serp)]
55-
4. Adhere strictly to the plagiarism policy.
56-
5. Understand and comply with the Terms and Conditions of the Keploy Community Writing Program.
57-
58-
### Rewards
59-
60-
Our compensation amounts are measures in <u>USD</u> ($)
61-
62-
- $10 for 350 views on article.
63-
- $20 for 500 views on article.
64-
- $50 for 1000 views on article.
65-
- $100 for 2000 views on article.
66-
67-
Valid for 1 published submission per candidate, after 30-days of publishing date. The Submitted work must fulfill all the given criteria.
68-
(Compensations might be subject to any updates. Changes will be informed to all onboarded candidates on priority and updates will be made suitably in the guide.)
69-
70-
71-
## Terms and Conditions
72-
73-
Keploy Community Writing Program Standard Terms & Conditions:
74-
75-
- Submissions do not establish an employment relationship; you are an independent contractor.
76-
- You grant Keploy a perpetual, non-revocable license for your submitted content.
77-
- All content is licensed under Creative Commons Attribution-Noncommercial-ShareAlike 4.0 (CC BY-NC-SA 4.0).
78-
- You must comply with all applicable laws, including copyright laws, and Keploy's Terms of Service.
79-
- Keploy is not liable for any damages related to this agreement.
80-
- You warrant that your content does not infringe on third-party intellectual property rights.
81-
82-
83-
## Plagiarism Policy
84-
Keploy blog requires original content. Any copied or reproduced work will result in immediate cessation of collaboration, potentially without notice. This includes:
85-
86-
Rewording existing posts as your own.
87-
Copying and pasting external documentation without proper attribution.
88-
Modifying someone else's code without significant original contributions.
89-
Using copyrighted images without permission.
90-
If unsure about plagiarism concerns, consult with the Keploy content team before submission.
91-
92-
93-
## Screenshots
94-
Screenshots can enhance your article by visually representing instructions. Ensure all content in the images is your original work and does not include copyrighted material. For clarity:
95-
96-
- Increase font size for readability.
97-
- Crop to focus on relevant elements.
98-
- Remove unnecessary details.
99-
100-
101-
## FAQs
102-
103-
### How do I get involved?
104-
105-
Review our process for submitting ideas. When you submit a new idea, following details must be answered:
106-
107-
- Article title and content summary.
108-
- Outline of the article, and descriptions of what each section will cover.
109-
- Information about prerequisite knowledge the reader will need to have.
110-
- Link to previous writing sample that demonstrates your capabilities.
111-
Our editorial staff will reach out to let you know if we want to publish your content and will make recommendations for revisions. Once we’ve agreed that we’re happy with the idea, we’ll send you a contract that agrees on the scope of the article and the compensation. From there, it’s up to you to write the first draft and submit it for review!
112-
113-
### How do you evaluate content ideas?
114-
115-
Our team reviews every submission, and we look for technical content that comprehensively covers software development topics with clear explanations. Explain as much detail as possible and leave no concepts out.
36+
Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.

app/favicon.ico

25.3 KB
Binary file not shown.

app/globals.css

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
@tailwind base;
2+
@tailwind components;
3+
@tailwind utilities;
4+
5+
:root {
6+
--background: #ffffff;
7+
--foreground: #171717;
8+
--font-lato: 'Lato', sans-serif;
9+
--font-inconsolata: 'Inconsolata', monospace;
10+
--font-montserrat: 'Montserrat', sans-serif;
11+
}
12+
13+
* {
14+
margin: 0;
15+
padding: 0;
16+
box-sizing: border-box;
17+
}
18+
19+
body {
20+
background: var(--background);
21+
color: var(--foreground);
22+
font-family: var(--font-lato), Arial, Helvetica, sans-serif;
23+
overflow-x: hidden;
24+
}
25+
26+
html {
27+
scroll-behavior: smooth;
28+
}
29+
30+
/* Custom scrollbar */
31+
::-webkit-scrollbar {
32+
width: 12px;
33+
height: 8px;
34+
}
35+
36+
::-webkit-scrollbar-track {
37+
background-color: #FFFFFF;
38+
}
39+
40+
::-webkit-scrollbar-thumb {
41+
background-color: #00163D;
42+
}
43+
44+
@layer utilities {
45+
.text-balance {
46+
text-wrap: balance;
47+
}
48+
}

0 commit comments

Comments
 (0)