A full-stack Employee Management System built using React for the frontend and Flask for the backend. This system enables efficient management of employee data with secure authentication, dynamic user interfaces, and robust backend APIs.
-
Frontend:
- Dynamic and interactive user interface built with React.
- Input validation to ensure data accuracy and prevent injection attacks.
- Modular and reusable components for scalability.
-
Backend:
- RESTful APIs implemented using Flask for efficient data management.
- Secure password hashing and user authentication with JWT.
- File upload functionality with validation of allowed file types.
-
General:
- Clean and organized project structure for ease of navigation and collaboration.
- Cross-Origin Resource Sharing (CORS) enabled for seamless frontend-backend communication.
430_project-main
│
├── app.py # Main backend application file
├── requirements.txt # Python dependencies
│
├── public/ # Static files (e.g., index.html)
│
├── src/ # React frontend source code
│ ├── components/ # Reusable UI components
│ ├── contexts/ # Context providers for global state management
│ ├── pages/ # Pages of the application
│ ├── services/ # API services for backend interaction
│ ├── utils/ # Utility functions
│ ├── App.js # Main React application file
│ ├── index.js # Entry point for the React app
│ ├── App.css # Global CSS
│ ├── index.css # Global styles
│
├── uploads/ # Uploaded files directory
│
├── .gitignore # Ignored files for version control
├── README.md # Project documentation (you are here!)
├── package.json # NPM dependencies
├── package-lock.json # Dependency lock file
│
└── setupTests.js # Unit test setup for React
- Navigate to the backend directory.
- Create a virtual environment:
python3 -m venv venv source venv/bin/activate
- Install dependencies:
pip install -r requirements.txt
- Run the Flask server:
flask run
- Navigate to the
src/
directory. - Install dependencies:
npm install
- Start the development server:
npm start
- Start the backend Flask server.
- Start the React frontend development server.
- Access the application at
http://localhost:3000
.