A simple web application to track equipment, built with React and Node.js.
- Node.js (v14 or higher)
- npm
/
server/ # Backend (Node.js + Express)
client/ # Frontend (React)
README.md # This file
- Navigate to the server directory:
cd server - Install dependencies:
npm install
- Start the server:
The backend will run on
npm start
http://localhost:5000.
- Open a new terminal and navigate to the client directory:
cd client - Install dependencies:
npm install
- Start the application:
The application will open at
npm start
http://localhost:3000.
- Data Storage: Using a local JSON file (
server/data/equipment.json) instead of a database for simplicity and portability. - Concurrency: File locking is not implemented, so high concurrency might overwrite data (acceptable for this scope).
- Validation: Basic frontend validation exists; backend validation checks for existence of required fields.
- IDs: Simple timestamp-based ID generation.
- Database: Migrate to SQLite or PostgreSQL for robust data management.
- Validation: Add a library like Joi or Zod for stricter backend validation.
- Testing: Add Unit and Integration tests (Jest/React Testing Library).
- UI library: Use Material UI or Tailwind CSS for better responsiveness and accessibility.
- Docker: Add Docker support for easier deployment.