A comprehensive disaster management system built with React and Vite for managing disaster events, donations, and assistance coordination.
- Event Management: Create and manage disaster events
- User Authentication: Role-based access control (admin, recipient, donator)
- Donation System: Track and manage donations and pledges
- Real-time Updates: Live updates for disaster events and donations
- Frontend: React 19, Vite
- Backend: Node.js, Express
- Database: MySQL
- Authentication: JWT
- Testing: Jest, React Testing Library
- Node.js (v16 or higher)
- MySQL database
- npm or yarn
- Clone the repository:
git clone <repository-url>
cd DAMS- Install dependencies:
npm install- Set up environment variables:
cp .env.example .envEdit the .env file with your database credentials and JWT secret.
- Start the development server:
npm run devnpm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLint
Run tests with:
npm testsrc/
├── components/ # Reusable UI components
├── controllers/ # Backend controllers
├── hooks/ # Custom React hooks
├── pages/ # Page components
├── utils/ # Utility functions
├── App.jsx # Main app component
├── main.jsx # Application entry point
└── router.jsx # Routing configuration
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests
- Submit a pull request
This project is licensed under the MIT License.