Page 1 of 1

Reviving a 30-Year-Old Clipper DOS Accounting System Still in Use

Posted: Sat Dec 06, 2025 8:16 pm
by Otto

Hello friends,
Today — with a bit of AI assistance — I lifted a 30-year-old DOS/Clipper FIBU accounting system (still running in DOSBox at a customer site!) into a clean modern web UI — without any frameworks, without Bootstrap.

The entire frontend is already in place:
Journal viewer
Booking screen
Account inquiry page
Balance list
Custom CSS/JS

Full API structure
Lightweight PHP proxy layer
PHP acts only as a thin JSON proxy, while the complete accounting logic continues to run unchanged inside our existing Microservice.

The Microservice handles:
all DBF operations (shared/exclusive, locking, record read/write)
full JSON processing (in/out)
HTTP and WebSocket routing
Harbour code embedded directly in C
robust error handling and unified logging
extremely low latency via local communication (127.0.0.1:9090)
1:1 reuse of all original business logic — no rewrite required

Because the Microservice already provides everything (DBF access, routing, JSON I/O, logging), the remaining Harbour work has become almost trivial — we only need to wrap the original PRG routines into clean handlers.

The full technical foundation is now in place — and all of this came together in under one hour.

Best regards,
Otto

Image


Re: Reviving a 30-Year-Old Clipper DOS Accounting System Still in Use

Posted: Sun Dec 07, 2025 3:09 am
by Antonio Linares

Dear Otto,

What AI prompts did you use ?


Re: Reviving a 30-Year-Old Clipper DOS Accounting System Still in Use

Posted: Sun Dec 07, 2025 8:27 am
by Otto

Long version:
https://clipper2web.com/docs/htpharbour ... ymodel.pdf

Dear Antonio,
The reason it went so fast is the HTP – Harbour Thin Proxy Model:

UI → Thin JSON Proxy (mod_harbour or PHP) → Harbour Microservice

  • The UI sends JSON
  • The Thin Proxy forwards it unchanged
  • The Microservice executes the original Clipper logic directly on the DBF files

No rewrite.
No duplication.
No frameworks.
No external libraries.

The Microservice is pure Harbour (plus a tiny embedded C bridge), handling:

  • DBF read/write
  • locking
  • routing
  • JSON encoding/decoding
  • logging
  • execution of the legacy PRGs 1:1

By feeding the full legacy source tree into the AI, the system was automatically:

  • analysed
  • structured
  • modularized
  • and rebuilt as a Web UI

Long version:
https://clipper2web.com/docs/htpharbour ... ymodel.pdf

Best regards,
Otto