To use this project you should have the following on your machine:
Node.js
yarn
To install the project you have to:
-
Clone the repository:
git clone git@github.com:FoushWare/profilePage.git
or thessh url
. -
Install packages:
yarn
-
Run the project:
yarn dev
-
Open storybook:
yarn storybook
-
Run test runner tests for the storybook components to run the integration tests for the:
yarn test-storybook
The project is built next.js
mainly, Tailwind
for styling and Storybook
for component development and testing and documentation.
The main folder structure of the code is structured like the following:
├── modules
│ └── shared
│ ├── api
│ │ └── example1.api.ts
│ ├── components
│ │ └── atoms
│ │ | └── NotificationMenu
| | | ├── NotificationMenu.tsx
| | | └── types
| | ├── molecules
| | ├── organisms
| | └── icons
│ ├── logic
│ └── configuration
| └── axiosConfig.ts
│ └── hooks
| └── useDropdown.ts
| └── useCategories.ts
│ └── types
├── pages
│ ├── api
│ ├── _app.js
│ ├── _document.js
│ └── index.js
├── public
│ └── favicon.ico
├── README.md
├── styles
│ └── globals.css
├── next.config.js
├── tailwind.config.js
-
The structure is modular, this means that the project is encapsulated into modules, each of them will be handling a single page.
-
Every module will have a separated folder that contains its own
components
,api
for api calls,logic
for business logic of the module,tests
,pages
which contains the pages that belongs to the module andindex.js
file which is the entry point of the module. -
Also there's the
shared
module which contains the components, api calls and logic that's shared across all the modules e.g:Layout
component.
you can access this part locally by going to the following path: http://localhost:3000/categorysubcat
and you can access it on the deployed version by going to the following path: https://profile-page-woad-pi.vercel.app/categorysubcat
you can access this part locally by going to the following path: http://localhost:3000/
and you can access it on the deployed version by going to the following path: https://profile-page-woad-pi.vercel.app/