Work explorer

Projects

Real business work and personal learning. Choose a project to explore.

Personal project · Learning by building

Frappe contract tracker

Web Development · Product & Process · Testing & validation

Source codeNot deployed yet

Problem

A freelancer needs to know which quotes are approved, what has been paid, and who still owes money.

My work

  • A Frappe 15 app with Client, Contract, Contract Item, and Payment doctypes. Totals, paid amount, and balance are calculated on save.
  • Draft, Approved, and Done workflow. Only the Freelance Owner can approve, and only when the total is above zero.
  • Payment checks: a payment needs an approved contract and cannot be more than the balance. Submitting it updates the contract balance.
  • Owner and assistant roles, an Unpaid Contracts report, a sample data loader, and 11 unit tests for the business logic.

Result

The Unpaid Contracts report lists only approved or done contracts that still have a balance. Draft quotes and paid contracts stay off it.

  • Python
  • Frappe
  • JavaScript
  • MariaDB

I use AI-assisted tools to learn and improve my work, and review and check the results.