A full-stack web application built with React, Express.js, Node.js, and MySQL featuring a modern dashboard interface with data visualization and management capabilities.
- Modern UI/UX: Built with Material UI components for a sleek and responsive design
- Data Visualization: Interactive charts and graphs using Recharts
- State Management: Efficient state handling with Redux Toolkit and RTK Query
- Data Grid: Advanced data table functionality with Material UI Data Grid
- Real-time Updates: Dynamic data updates and real-time monitoring
- Authentication: Secure user authentication and authorization
- Responsive Design: Fully responsive layout that works on all devices
- React.js
- Material UI
- Material UI Data Grid
- Recharts
- Redux Toolkit
- Redux Toolkit Query
- React Router
- Node.js
- Express.js
- MySQL
- JWT Authentication
- RESTful API
Before you begin, ensure you have the following installed:
- Node.js (v14 or higher)
- npm (v6 or higher)
- MySQL Server
-
Clone the repository
git clone https://github.com/yourusername/Dinkboard.git cd Dinkboard -
Install Dependencies
# Install server dependencies cd server npm install # Install client dependencies cd ../client npm install
-
Environment Setup
Create a
.envfile in the server directory with the following variables:PORT=5000 DB_HOST=localhost DB_USER=your_mysql_username DB_PASSWORD=your_mysql_password DB_NAME=your_database_name JWT_SECRET=your_jwt_secret -
Database Setup
CREATE DATABASE your_database_name; USE your_database_name; -- Import the provided SQL schema file
-
Running the Application
# Start the server (from server directory) npm start # Start the client (from client directory) npm start
The application will be available at:
- Frontend: http://localhost:3000/dashboard
- Backend API: http://localhost:5000
Dinkboard/
├── client/ # Frontend React application
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ ├── scenes/ # Page components
│ │ ├── state/ # Redux store and slices
│ │ └── theme.js # Material UI theme configuration
│ └── public/ # Static files
│
└── server/ # Backend Express application
├── controllers/ # Route controllers
├── models/ # Database models
├── routes/ # API routes
└── utils/ # Utility functions
[Add your dashboard screenshots here]
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License - see the LICENSE file for details.
For any questions or suggestions, please feel free to reach out:
- GitHub: [ajkeast]
- Email: [email protected]
This project is a work in progress. Feel free to contribute or provide feedback!