This is a simple task management application built with Vue.js, following clean architecture principles and test-driven development (TDD).
The project follows a clean architecture approach with the following structure:
src/modules: Contains the core business logic organized by domaindomain: Contains business entities and repository interfacesapplication: Contains use cases and application servicesinfrastructure: Contains implementations of repository interfaces
src/sections: Contains the UI components organized by domaintests/acceptance: Contains acceptance tests for the applicationtests: Contains unit tests for the core business logic
- Install dependencies:
npm install- Run development server:
npm run dev- Run tests:
npm run test- Clean Architecture: The application follows a ports and adapters architecture to maintain separation of concerns and make the code more maintainable and testable.
- TDD: Development follows the Test-Driven Development cycle (Red, Green, Refactor).
- Local Storage: Tasks are persisted in the browser's local storage for simplicity.
- TypeScript: Used throughout the project for better type safety and developer experience.
- TailwindCSS: Used for styling to maintain consistency and rapid development.
- Create new tasks with title, description, and due date
- List all tasks in a tabular format
- Delete tasks