AtomaLive showcase
← All finished work

ParcelWise redevelopment feasibility workspace

Software2 deliveries8 min 33 s in total$0.19 in total

Step 1 of 2

The request

ParcelWise redevelopment feasibility workspace

Read the full request

Build ParcelWise, an interactive redevelopment feasibility workspace for a fictional property advisory firm. Provide six synthetic properties with parcel dimensions, current floor area, asking price and neighbourhood labels. Users browse property cards, select a parcel and compare a baseline scheme with a saved alternative. Let them edit purchase cost, renovation cost per square metre, rentable area, monthly rent, vacancy and operating-cost percentage; compute total project cost, annual net operating income, gross yield and unlevered yield on cost with formulas and units visible. Show a simple SVG parcel/floor-area diagram and a sensitivity heatmap for rent versus vacancy. Allow saving three named scenarios per property and comparing their assumptions side by side. Export the selected scenario as JSON and support a print-friendly investment brief. Use illustrative calculations only, no market forecasts or investment recommendations. A restrained architectural aesthetic should combine warm ivory, ink, terracotta and a strong editorial grid. Deliver a self-contained demo with synthetic data clearly labelled, English product copy, and no external APIs, credentials or remote assets. Use HTML/CSS/JavaScript with a directly previewable root index.html. Provide distinct, polished visual design, accessible labelled controls, visible keyboard focus and useful empty/error states. Persist user edits locally with a reset-demo action. Include a short README and executable Node built-in tests for the important domain calculations. Verify the actual main user journey in a browser at mobile and desktop widths before delivery. Express monthly rent per rentable square metre. Total project cost = purchase cost + renovation cost per square metre times rentable area. Annual gross rent = monthly rent times rentable area times 12. Effective rent = gross rent times (1 - vacancy). NOI = effective rent times (1 - operating-cost percentage). Gross yield uses purchase cost; yield on cost uses total project cost. Show N/A for a zero denominator. Before delivery, exercise each acceptance criterion with recorded, observable results. For persistence, save a distinctive value, reload the actual page and observe the restored UI. Keep domain calculations separate enough for tests to import the production functions.

The journey

  1. Read the requestTurned it into a list of things it would have to prove before calling the work done.
  2. Did the workPlanned the pieces, built them and checked the result as it went.
  3. Sent back by the final reviewThe last check did not accept the first result, and said what was missing.
  4. CorrectedThe missing parts were fixed and the work was checked again.
  5. Delivered7 files handed over.

The result

  • app.js7.7 KB
  • calculations.js1.2 KB
  • index.html3.8 KB
  • README.md994 B
  • server.js878 B
  • styles.css5.6 KB
  • tests/calculations.test.js798 B
Time5 min 45 s
Cost$0.12
Finished2026-10-07

Step 2 of 2

The request

Correct ParcelWise workspace with regression tests and browser evidence

Read the full request

Complete and deliver the corrected ParcelWise workspace, retaining current comparison clearing and invalid-save rejection. Add focused executable regressions that invoke the actual production scenario save/load validation functions, including recovery of a malformed persisted entry while retaining valid scenarios; do not duplicate those functions only for tests. Execute every domain regression after the last edit and report the actual output and exit code. In one complete final browser evidence set: select Atlas House and observe its diagram; save Atlas A; display its comparison; switch to Cinder Works and observe the Atlas comparison cleared; return to Atlas, set rent40 and vacancy10 and observe annual NOI £137,894; save a valid named scenario, attempt vacancy101 and confirm rejection without adding any entry or changing the valid saved library; perform an actual F5 reload and observe the valid named scenario still available and usable. Exercise recovery of an invalid persisted entry alongside a valid entry, and verify the valid library remains accessible after reload. Verify the main journey at desktop and mobile widths. Report all six original acceptance criteria together after the final changes, with observed results including actual reload and final passing production-function tests.

The journey

  1. Read the requestTurned it into a list of things it would have to prove before calling the work done.
  2. Did the workPlanned the pieces, built them and checked the result as it went.
  3. Delivered8 files handed over.

The result

  • app.js7.4 KB
  • calculations.js1.3 KB
  • index.html3.9 KB
  • README.md994 B
  • scenarioStore.js1.6 KB
  • server.js878 B
  • styles.css5.6 KB
  • tests/calculations.test.js2.1 KB
Time2 min 48 s
Cost$0.07
Finished2026-10-07

Have a request of your own?

Describe the outcome you want. Atoma works on it in a private project and gives you the same story: every step, every check, and the finished result.

Start your own