Project Technologies

Web Framework

68747470733a2f2f6d69726f2e6d656469756d2e636f6d2f76322f726573697a653a6669743a313030302f312a4b444d783159737053724263464a472d4e445a6744672e706e67.png

Next.js is the most popular React framework because it implements built-in routing, server-side rendering, and SEO optimization. This project was created with Next.js because this framework simplifies the development process and allows for the creation of a scalable and user-friendly web application.

Architectural pattern

68747470733a2f2f666f726d6975782e636f6d2f77702d636f6e74656e742f75706c6f6164732f323032322f30312f5175652d65732d41746f6d69632d44657369676e2d506f72746164612e6a7067.jpg

Atomic Design is an architecture that organizes components and their logic in a hierarchical structure. It has five levels: atoms, molecules, organisms, templates, and pages. This project is based on Atomic Design because it allows for creating scalable, maintainable, and reusable components.

Components Library

68747470733a2f2f6d69726f2e6d656469756d2e636f6d2f76322f726573697a653a6669743a313230302f312a664579654553732d48785652375a6c722d66646c76772e706e67.png

Material-UI (MUI) is a React component library based on Google's design principles. This project implements MUI because it provides pre-designed and customizable components that help create visually appealing and consistent user interfaces.

State Management Solution

bear.jpg

Zustand is a simple state management library for React. This project implements Zustand because it allows for managing application states, making it easy to share states across components and views.

Key Features

Project Source Structure

<aside> 💡

├───app // Next App Router files │ ├───admin // Admin view and it logic

│ ├───api // Next-Backend connection │ ├───dashboard // Dashboard view and it logic │ ├───login // Login view and it logic │ ├───myList // Coders selected view │ ├───register // Register view and it logic ├───global-states // States used in the web application ├───routes // Public and private routes guardians ├───services // Endpoint connections ├───UI // User interfaces elements │ ├───components // Components structured by Atomic Design │ │ ├───atoms // Atomic Design level │ │ ├───molecules // Atomic Design level │ │ └───organisms // Atomic Design level │ └───interfaces // Components TypeScript Interfaces └───utilities // Reusable functions

</aside>

Project Installation

System requirements

Installation