This is a React Application with TypeScript based E-commerce app and configured with:
- Linters: ESLint and Prettier.
- Folders:
app
,map
,users
,posts
,assets
,components
,lib
andfeatures
(Folder Structure). - Tailwind CSS: configured Tailwind CSS for better styling.
- Redux-toolkit: for state management.
The app has the following structure:
app
, map
, users
, posts
, assets
, icons
, components
, lib
and features
components
: Components that can be used accross the app.map
: Contains mapbox map page.users
: Contains users page.posts
: Contains posts page and indevidual post page.store
: Redux store which Contains single object with holind entire data of application.icons
: Static SVG Icons.lib
: Contains redux toolkit including reducers and store.features
: Contains reducers that calls the APIs.
- Create NextJS Application based blogs app.
- Used Tailwind CSS for design.
- Used my own ideas for design.
- App perform like below step:
- Home Screen:
- Display a list of user cards.
- Click on a user card to navigate to the User's Posts screen.
- User's Posts Screen:
- Show a list of posts associated with the selected user.
- Click on any post to go to the Post Detail Page.
- Post Detail Page:
- Display detailed information about the selected post.
- All comments are listed below after the Post.
- There is a comment form if you wish to comment on any post.
- Map Page:
- Can open map page by clicking 'map' from header
- Integrate mapbox GL for map.
- Added a marker, line and a polygon using geoJSON
- Home Screen:
- Made app reponsive whenever i could.
- Divide components to keep it simple. It can be improvised more.
- Setup ESLint for Code standardization.
- Setup Prettier for Code format.
- WriteTechnical documentation on README.md file for better understading.
To set up the codebase and the required dependencies, simply run the following command.
$ npm i
# development
$ npm run start
# production
$ npm run build && npm run start
- Used fetch for API call. we can also use Axios.
- Structure of the code: both in terms of the actual code and the organization of files/folders.
- Next patterns: efficient and well-structure code.
- Documentation: clear and well commented your code.
- Git processes: clear and well-structured your commits and commit messages are.