This project is a simple task list application built with React and TypeScript using Vite as the build tool. It provides a minimal setup for modern frontend development with a focus on a component-based architecture and a clean user interface.
- Frontend: React
- Styling: Styled-Components
- Package Manager: Yarn
- Bundler: Vite
- Testing: Jest, React Testing Library, Cypress
To run this project, ensure you have the following installed:
- Clone the repository:
git clone https://github.com/your-username/task-list-frontend.git cd task-list-frontend - Install dependencies:
yarn install
- Run the development server:
The application will be available at
yarn dev
http://localhost:5173.
To create a production-optimized build, run:
yarn buildThe build files will be generated in the dist/ directory.
To serve the production build locally and test it, run:
yarn previewThe application will be available at http://localhost:4173.
To test the project, run:
yarn testAll unit, integration and smoke test will be performed. In memory db is created on the fly, no need to have running database while testing.
This project can be run in a Docker container, providing a consistent and isolated environment.
The included Dockerfile uses a multi-stage build. The first stage uses a Node.js image to install dependencies and run the production build. The second stage uses a lightweight Nginx image and only copies the final, static build files, resulting in a minimal and production-ready image.
-
Build the Docker Image
Navigate to the project root and build the image.
docker build -t task-list-frontend . -
Run the Docker Container
Map a port on your local machine (e.g., 8080) to the container's port 80.
docker run -p 8080:80 task-list-frontend
The application will be available in your web browser at
http://localhost:8080.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
[Specify your project's license here, e.g., MIT, Apache, etc.]