Hey there! This is a React dashboard I built for managing posts, users, and albums. It's got a clean interface and works great on both desktop and mobile devices.
-
Navigate to the project folder cd dashboard-project
-
Install the required packages npm install
-
Start the development server npm start
-
Open your browser The app should automatically open at
http://localhost:3000. If it doesn't, just type that URL into your browser.
Here's what I've built into this project:
- Dashboard Overview - See quick stats about posts, users, and albums all in one place
- Posts Management - Create, edit, delete, and search through blog posts
- Users Directory - Browse through user profiles with their contact info and company details
- Albums Gallery - View photo albums organized by users
- Responsive Design - Works smoothly on phones, tablets, and desktop computers
- Clean, modern interface that's easy on the eyes
- Smooth animations when you click around (nothing too flashy)
- Search functionality that actually works well
- Mobile-friendly sidebar that collapses when you need more screen space
- Notification system to keep you updated
- Built with React 18 for solid performance
- Uses Tailwind CSS for styling (makes it easy to customize)
- Axios for handling API requests
- Context API for managing app state
- Responsive design that adapts to any screen size
This project connects to JSONPlaceholder (a free testing API) to get realistic data. Here are all the endpoints I'm using:
GET /posts- Fetch all blog postsGET /posts/{id}- Get a specific postGET /posts?userId={userId}- Get posts by a specific userGET /posts?_page={page}&_limit={limit}- Get posts with paginationPOST /posts- Create a new postPUT /posts/{id}- Update an existing postDELETE /posts/{id}- Delete a post
GET /users- Get all usersGET /users/{id}- Get a specific user's detailsPOST /users- Add a new userPUT /users/{id}- Update user informationDELETE /users/{id}- Remove a user
GET /albums- Fetch all photo albumsGET /albums/{id}- Get a specific albumGET /albums?userId={userId}- Get albums by userPOST /albums- Create a new albumPUT /albums/{id}- Update album detailsDELETE /albums/{id}- Delete an album
GET /comments- Get all commentsGET /comments?postId={postId}- Get comments for a specific postPOST /comments- Add a new comment
GET /photos- Fetch all photosGET /photos?albumId={albumId}- Get photos from a specific album
By : Marwan Mokhtar ❤️