Skip to content

A JSMastery.pro replica web application that incorporates powerful and popular libraries and practices. Developed using TypeScript with Next.js, TailwindCSS and Sanity as a CMS. πŸ¦„

License

Notifications You must be signed in to change notification settings

ladunjexa/nextjs13-jsmastery

Repository files navigation



madeby badge license badge contributors badge last commit badge forks badge stars badge open issues badge prs welcome badge

JSMastery.pro Clone

Dive into the world of Next.js, Incredible JSMastery.pro replica website built with Next.js using TypeScript & Tailwind CSS πŸͺ

Table of Contents

🌟 Introduction

This repository houses an amazing Next.js 13 Application which simulates the JSMastery.pro web application using Next.js, TypeScript, and TailwindCSS,combining powerful tools to deliver a responsive and user-friendly experience. The application is deployed on Vercel.

Folder Structure

JSMastery code folder structure is as follows:

nextjs13-jsmastery/
β”œβ”€β”€ .vscode/
β”œ   └── settings.json
β”œβ”€β”€ app/
β”œ   β”œβ”€β”€ (root)/
β”œ   β”œ   β”œβ”€β”€ (home)/
β”œ   β”œ   β”œ   └── page.tsx
β”œ   β”œ   β”œβ”€β”€ resources/
β”œ   β”œ   β”œ   β”œβ”€β”€ [id]/
β”œ   β”œ   β”œ   β”œ   └── page.tsx
β”œ   β”œ   β”œ   β”œβ”€β”€ loading.tsx
β”œ   β”œ   β”œ   └── page.tsx
β”œ   β”œ   β”œβ”€β”€ videos/
β”œ   β”œ   β”œ   β”œβ”€β”€ loading.tsx
β”œ   β”œ   β”œ   └── page.tsx
β”œ   β”œ   β”œβ”€β”€ newsletter/
β”œ   β”œ   β”œ   └── page.tsx
β”œ   β”œ   β”œβ”€β”€ privacy-policy/
β”œ   β”œ   β”œ   └── page.tsx
β”œ   β”œ   β”œβ”€β”€ terms-of-use/
β”œ   β”œ   β”œ   └── page.tsx
β”œ   β”œ   └── layout.tsx
β”œ   β”œβ”€β”€ studio/[[...index]]/
β”œ   β”œ   └── page.tsx
β”œ   β”œβ”€β”€ favicon.ico
β”œ   β”œβ”€β”€ globals.css
β”œ   β”œβ”€β”€ layout.tsx
β”œ   └── page.tsx
β”œβ”€β”€ components/
β”œ   β”œβ”€β”€ atoms/
β”œ   β”œ   β”œβ”€β”€ Arrow.tsx
β”œ   β”œ   β”œβ”€β”€ DownloadButton.tsx
β”œ   β”œ   β”œβ”€β”€ Header.tsx
β”œ   β”œ   └── NextJsLogo.tsx
β”œ   β”œβ”€β”€ home/
β”œ   β”œ   └── Testimonials.tsx
β”œ   β”œβ”€β”€ shared/
β”œ   β”œ   β”œβ”€β”€ Footer.tsx
β”œ   β”œ   β”œβ”€β”€ Navbar.tsx
β”œ   β”œ   └── Theme.tsx
β”œ   β”œβ”€β”€ newsletter/
β”œ   β”œ   └── Countdown.tsx
β”œ   β”œβ”€β”€ newsletter/
β”œ   β”œ   β”œβ”€β”€ ContentCard.tsx
β”œ   β”œ   β”œβ”€β”€ Document.tsx
β”œ   β”œ   β”œβ”€β”€ Dropdown.tsx
β”œ   β”œ   β”œβ”€β”€ Filters.tsx
β”œ   β”œ   └── SearchForm.tsx
β”œ   └── ui/
β”œ       β”œβ”€β”€ accordion.tsx
β”œ       β”œβ”€β”€ button.tsx
β”œ       β”œβ”€β”€ card.tsx
β”œ       β”œβ”€β”€ dropdown-menu.tsx
β”œ       β”œβ”€β”€ input.tsx
β”œ       └── skeleton.tsx
β”œβ”€β”€ constants/
β”œ   └── index.ts
β”œβ”€β”€ context/
β”œ   └── ThemeProvider.tsx
β”œβ”€β”€ lib/
β”œ   └── utils.ts
β”œβ”€β”€ public/
β”œ   └── assets/
β”œ   β”œ   β”œβ”€β”€ icons/
β”œ   β”œ   β”œ   └── [[...]].svg
β”œ   β”œ   └── images/
β”œ   β”œ       └── [[...]].{png,svg}
β”œ   β”œβ”€β”€ next.svg
β”œ   └── vercel.svg
β”œβ”€β”€ sanity/
β”œ   β”œβ”€β”€ lib/
β”œ   β”œ   β”œβ”€β”€ client.ts
β”œ   β”œ   └── image.ts
β”œ   β”œβ”€β”€ schemas/
β”œ   β”œ   β”œβ”€β”€ index.ts
β”œ   β”œ   β”œβ”€β”€ resource-playlist.schema.ts
β”œ   β”œ   β”œβ”€β”€ resource.schema.ts
β”œ   β”œ   β”œβ”€β”€ video-playlist.schema.ts
β”œ   β”œ   └── video.schema.ts
β”œ   β”œβ”€β”€ actions.ts
β”œ   β”œβ”€β”€ env.ts
β”œ   └── utils.ts
β”œβ”€β”€ types/
β”œ   └── index.d.ts
β”œβ”€β”€ .eslintrc.json
β”œβ”€β”€ components.json
β”œβ”€β”€ next.config.js
β”œβ”€β”€ package.json
β”œβ”€β”€ postcss.config.js
β”œβ”€β”€ tailwind.config.ts
β”œβ”€β”€ sanity.cli.ts
β”œβ”€β”€ sanity.config.ts
└── tsconfig.json

πŸ‘Ύ Technologies Used

Hilink web application is built using the following technologies:

  • React: React is an open-source, front end, JavaScript library for building user interfaces or UI components.
  • TypeScript: TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
  • Next.js: Next.js is an open-source React front-end development web framework created by Vercel that enables functionality such as server-side rendering and generating static websites for React based web applications.
  • Sanity: Sanity is the platform for structured content that lets you build better digital experiences and scale faster.
  • shadcn/ui: A collection of accessible, reusable, and composable React components for faster and easier web development.
  • Tailwind CSS: Tailwind CSS is a utility-first CSS framework for rapidly building custom user interfaces.
  • ESLint: ESLint is a static code analysis tool for identifying problematic patterns found in JavaScript code.
  • Prettier: Prettier is an opinionated code formatter.
  • Vercel: Vercel is a cloud platform for frontend developers, providing the frameworks, workflows, and infrastructure to build a faster, more personalized Web.

tech

(back to top)

🧰 Getting Started

βš™οΈ Installation and Run Locally

Step 1

Download or clone this repo by using the link below:

 https://github.com/ladunjexa/nextjs13-jsmastery.git

Step 2

JSMastery clone using NPM (Node Package Manager), therefore, make sure that Node.js is installed by execute the following command in consle

  node -v

Step 3

Go to root folder and execute the following command in console to get nodemon the required packages:

npm install

Step 4

Go to root folder and execute the following command in console to start the application locally:

npm run dev

This is a Next.js project bootstrapped with create-next-app.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.

(back to top)

πŸ“· Screenshots

Mockup

(back to top)

πŸ‘‹ Contributing

Contributions are always welcome!

See contributing.md for ways to get started.

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

⚠️ License

Hilink web application is open source and distributed under the MIT License.

(back to top)

🀝 Contact

If you want to contact me, you can reach me at @ladunjexa.

(back to top)

About

A JSMastery.pro replica web application that incorporates powerful and popular libraries and practices. Developed using TypeScript with Next.js, TailwindCSS and Sanity as a CMS. πŸ¦„

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published