10 / 25Industrial / Timber
Ferromader
Visit the siteTimber yard management

A lightweight sales and inventory ERP with automatic board-foot calculation
The project
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
We 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. We 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
Project overview
System features
Every module was built around how a timber yard actually works — from the storage yard to the monthly executive report. No intermediate steps, no duplicated data.
Inventory with Smart Alerts
The system tracks stock for each wood type in board feet and shows its status in real time: Optimal, Normal or Low. When a type drops below its configured minimum, an alert is raised automatically — with nobody having to check manually.
The dashboard shows total stock, valuation in bolivianos and how many alerts are active — at a glance. Operational decisions without opening a single spreadsheet.
Stock Ledger and Deliveries
Every movement of timber in and out is recorded in the ledger with date, type, quantity and the person responsible. Traceability is complete: the manager can see exactly when each batch arrived, at what price and who logged it.
Deliveries record purchases and restocking linked directly to the supplier, updating stock and inventory valuation instantly.
Visual Reporting and Analytics
The reporting module turns operational data into business intelligence: daily sales in bolivianos, board feet sold per day, breakdown by wood type and the top 10 customers by purchase volume.
The manager can spot the strong days, the most profitable products and the customers who drive the business — with no analyst needed and no waiting for month-end close.
Users with Pre-registration and Google OAuth
The administrator can register a user's email before they ever open the system. When that person signs in with their Google account, the system recognises the address and assigns the configured role automatically — with no manual steps.
No passwords to manage, no reset requests. Authentication is delegated to Google and access control is handled by the administrator from the settings panel.
Design Process
UX/UI Design
Ferromader is used in two very different contexts: the manager's desk, with a large screen and time to analyse, and the yard supervisor's phone, checking stock between loads. The design had to work equally well in both.
A dashboard built like a control room
The main screen concentrates everything that matters: total stock, valuation, active types and alerts. Four numbers answering the four questions a timber manager asks every morning. You don't have to navigate to know whether the business is healthy — the dashboard says so in three seconds.
Stock states with no ambiguity
Optimal, Normal and Low combine colour, label and position in the list so the supervisor can make restocking calls without reading a single number. The design separates urgency from routine information — anything critical stays visible, anything normal recedes.
Genuinely responsive, not just resized
The mobile version is not the desktop one shrunk down. The sidebar collapses into a hamburger menu, tables turn into cards and charts resize to stay readable on a small screen. Each breakpoint was designed around its own usage flow.
Charts that tell a story
The visual reports are not decoration — for the manager they are the main product. Each chart was chosen for the decision it enables: bars to spot sales peaks, the pie to see over-reliance on one wood type, the ranking to identify strategic customers.
Visual Identity
Typography
Ferromader's typography prioritises reading numbers and states quickly — the user doesn't read paragraphs, they scan data. Every size, weight and spacing was calibrated for that context.
Inter
Aa
Inter is the primary typeface — designed specifically for digital interfaces, with metrics optimised for on-screen reading at any size and resolution.
Geist Mono
Aa
Geist Mono is used for numeric data, quantities and stock values: its fixed-width characters align columns with typographic precision — with no visual ambiguity.
Visual Identity
Colour Palette
Ferromader's colours are those of timber itself. The amber and brown evoke the material the system manages. Stock states use green, amber and red — universal signage that needs no legend.
Timber Amber. The primary brand colour. Accent for buttons, icons and active elements.
Deep Brown. Secondary tone for section backgrounds and emphasis states.
Light Cream. The light-mode background. Evokes the inner grain of wood — warm without distracting.
Warm Black. The dark-mode background. Warmer than pure black — consistent with the timber identity.
Architecture
System Structure
The sidebar organises the system into nine clearly separated modules. The natural flow is operational: inventory → deliveries → sales → reports. The settings modules stand apart and are reachable by administrators only.

Conclusion
Ferromader turned a spreadsheet-run operation into a digital system that tracks stock in real time, raises alerts before inventory runs out, and surfaces the analytics the manager needs to decide. Timber-specific, built for the field.

Services
Stack
App screens
11 · scroll sideways

















Have something similar in mind?
Tell us what you need: we look at it together and propose a way forward in writing, in English or Spanish.
[email protected]