JAVASCRIPT · ZERO TO HERO
Learn JavaScript by building one real product.
Eight hands-on modules. One evolving Smart Ledger. You will start with values and finish with a persistent accounting cockpit you can explain, extend, and ship.
Every module adds a working capability to the same product.
Money is stored safely as integer agorot, not fragile decimal floats.
The final app validates input, persists locally, filters data, and exports JSON.
The build sequence
- 01
Values, types, and the console
Read and create JavaScript values while building the first business snapshot.
20 min Concepts: const · string · number - 02
Functions and money-safe calculations
Turn repeated calculations into functions and calculate VAT without floating-point surprises.
25 min Concepts: function · return · parameters - 03
Objects, arrays, and transactions
Model income and expenses as real structured data and derive totals from them.
30 min Concepts: object · array · map - 04
The DOM and an interactive transaction form
Connect JavaScript to the page so a user can add transactions without editing code.
35 min Concepts: querySelector · addEventListener · submit - 05
Validation and error handling
Reject incomplete or unsafe input and explain errors without crashing the app.
30 min Concepts: if · Number.isFinite · throw - 06
Persistence with localStorage
Keep the ledger after refresh with serialization, recovery, and a safe empty state.
30 min Concepts: localStorage · JSON.stringify · JSON.parse - 07
Filtering and live reports
Turn transaction data into category filters, cash-flow KPIs, and an audit-friendly table.
35 min Concepts: derived state · filter · reduce - 08
Capstone: ship Smart Ledger
Assemble a complete local-first accounting cockpit with import/export and resilient UX.
50 min Concepts: architecture · CRUD · persistence