Skip to content

datumbrain/tdd-in-legacy-codebase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

Tasker App - TDD in Legacy Code Transformation

Pipeline Dashboard

Pipeline dashboard for sample app we will create to transform legacy codebase into testable one

Component Commit Stage UAT Release Stage Production Release Stage
Tasker UI Build & Publish UAT Production
Tasker API Build & Publish UAT Production

Context & Purpose

I found Valentina sharing her thoughts & process on how we can transform legacy codebase into a testable one. And eventually use TDD to gain confidence in software delivery

She is writing a series of articles at Optivem which will guide the readers through the entire process. The purpose is to learn that process.

Checkout Complete Series Outline to understand each stage and it's sub processes

Relevant Projects

  1. Tasker UI
  2. Tasker API
  3. Acceptance Tests

Todo Sample App Features

1. User Authentication

  • Sign up and log in with JWT-based authentication.
  • Auto-redirect logged-in users to the dashboard.
  • Password hashing and token management.
  • Logout

2. Task Management

  • Create, view, and delete personal todos.
  • Each user only sees their own tasks.

3. Data Storage

  • Uses PostgreSQL via Prisma ORM for database management.

4. Error Handling

  • Covers common edge cases (e.g., invalid input, authentication errors).
  • Clear user feedback for errors.
  • Built with Vue 3 and Pinia for state management.
  • Uses the Composition API and styled with Shadcn.
  • Axios automatically sets auth tokens for API requests.
  • Built with Express.js for API endpoints.
  • Prisma ORM for database operations.
  • Nodemon for auto-reloading in development.

Contributors

About

Learning TDD in Legacy Code

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published