Welcome to the Project: Next! This repository contains the code for a project developed using Next.js, Tailwind, TypeScript, Plop, Jest, Storybook, and with an Atomic approach.
The project utilizes the following technologies and approach:
- Next.js - A powerful framework for building modern web applications.
- Tailwind - A utility-first CSS framework for rapid UI development and customization.
- TypeScript - A statically-typed superset of JavaScript that enhances development safety, productivity, and maintainability.
- Plop - A code generator that automates repetitive tasks and maintains code consistency.
- Jest - A testing framework for writing comprehensive unit tests to ensure code quality.
- Storybook - A tool for building and documenting components in isolation, streamlining the design and development workflow.
- Atomic Approach - A design methodology that organizes components into atoms, molecules, and organisms for better reusability and maintainability.
To run this project locally, please follow these steps:
- Clone the repository:
git clone https://github.com/paoloLigsay/projectnext.git
- Install dependencies:
yarn install
- Start the development server:
yarn dev
- Open your preferred browser and navigate to
http://localhost:3000
to see the project in action.
Additionally, you can also view the components via Storybook:
- Run Storybook:
yarn storybook
- View the components on Storybook by navigating to
http://localhost:6006
(Please note that this could change).
Please Note that:
- Not all components where modified to be viewed on storybook.
- Kindly add values inside the
args object
onstories.tsx
for the component to render. - View
interface.tsx
to check the required and available properties.
- Kindly add values inside the
To generate new components, follow these steps:
- Run the command:
yarn generate
- Choose one of the following options: Atoms, Molecules, Organisms
- Once selected, a sample folder structure will be generated for the chosen component type. For example, if you choose an Organism, the following folder structure will be created:
└── components
└── organisms
└── componentName
├── index.ts
├── componentName.stories.tsx
├── componentName.test.tsx
├── componentName.tsx
├── componentName.styles.tsx
└── componentName.interface.tsx
This structure provides a standardized setup for the new component, including necessary files for implementation, testing, styling, and interface definition.
This project is licensed under the MIT License. Please see the LICENSE.md
file for more details.
If you have any questions or suggestions regarding this project, please feel free to reach out to me at Paolo Ligsay. I would be happy to assist you!
Thank you for your interest in this project. Happy coding! 🎉