Project

Ferromader — Timber yard management

SectorLightweight ERP / commercial management
ClientCommercial / Ferromader timber yard (Bolivia)
RoleSolutions Architect & Tech Lead
Year2026
Ferromader — timber yard management — main view

Client and Idea

A lightweight sales and inventory ERP with automatic board-foot calculation

A bespoke internal web system for running a timber yard with a hardware line: sales, inventory in board feet, customers and suppliers, goods receipts, dashboard and reports. It automates the timber trade's own arithmetic and keeps inventory in sync sale by sale, with full traceability.

The Challenge

In the timber trade the unit of sale is not the piece but the board foot, which depends on thickness × width × length. That calculation had to be automated (along with finished products on a fixed equivalence), pricing errors eliminated, and stock kept in sync across sales, voids and goods receipts, with an audit trail of who did what.

What We Built

I built a standalone, zoneless Angular 21 SPA (signals) on Firebase, with mixed timber/product line items, automatic board-foot calculation, transactions (runTransaction) to decrement and restore stock alongside the sale sequence number, and writeBatch for denormalisation cascades. I added role-based security with granular permissions and hardened Firestore rules (anti-escalation, pre-registration, immutable audit log, default-deny).

  • Automatic board-foot calculation with an editable suggested price
  • Two catalogue lines: timber (by board foot) + hardware (by unit)
  • Sales with status and balance (partial payment/credit) and optional invoice
  • Transactional stock control (sale/void/receipt)
  • 18 granular permissions and 3 roles; immutable audit log
  • ~18,100 lines of TypeScript across 55 files; 11 Firestore collections
Let's build something great together

Let's collaborate!