Skip to content

Add TypeScript porting analysis report with framework alternatives and migration strategy#6

Open
Copilot wants to merge 2 commits intomasterfrom
copilot/outline-porting-eee-to-typescript
Open

Add TypeScript porting analysis report with framework alternatives and migration strategy#6
Copilot wants to merge 2 commits intomasterfrom
copilot/outline-porting-eee-to-typescript

Conversation

Copy link
Copy Markdown

Copilot AI commented Dec 21, 2025

Created comprehensive analysis for porting the Java-based EEE project to TypeScript using the Ehrtslib openEHR library.

Report Contents

TYPESCRIPT_PORTING_REPORT.md (1,797 lines):

  • Current Architecture: Analyzed 103 Java files across REST API (Quarkus), database (BaseX/eXist XML), openEHR (Archie), AQL parsing (JavaCC), and STOMP messaging layers

  • Framework Alternatives: Detailed comparison of TypeScript/JavaScript options for each component:

    • REST: Express, NestJS, Fastify, Koa
    • Database: PostgreSQL (JSONB), MongoDB, BaseX client
    • Parsers: ANTLR4, Peggy, Nearley
    • Messaging: RabbitMQ/STOMP, MQTT, Redis
  • Recommended Stack: NestJS + PostgreSQL + Ehrtslib + ANTLR4

    • Includes complete package.json with dependencies
    • Project structure following NestJS modular architecture
  • Migration Strategy: 8-phase roadmap (20-27 weeks) using Strangler Fig pattern

    • Incremental migration with parallel Java/TypeScript systems
    • XML-to-JSON data migration approach
    • Phase-by-phase deliverables
  • Ehrtslib Integration: Code examples showing openEHR RM class usage, validation patterns, and fallback options

  • Code Comparisons: Side-by-side Java vs TypeScript examples for REST endpoints, database access, and validation

Key Architectural Mapping

Java TypeScript
Quarkus JAX-RS NestJS decorators
Archie openEHR Ehrtslib
BaseX XQuery PostgreSQL JSONB + SQL
JavaCC parser ANTLR4
Freemarker Handlebars/React
Original prompt

I am in my repository Ehrtslib implementing an openEHR library in typescript. This repository (EEE) is based on Java and so-called restlets for REST architecture and some other framework and architectures. Make a report in a markdown file outlining how EEE could be ported to type script using above-mentioned library. Suggest several alternative library options for REST etc in typescript or JavaScript for replacing functions found in this project's Java code.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: ErikSundvall <1034001+ErikSundvall@users.noreply.github.com>
Copilot AI changed the title [WIP] Create report for porting EEE to TypeScript Add TypeScript porting analysis report with framework alternatives and migration strategy Dec 21, 2025
Copilot AI requested a review from ErikSundvall December 21, 2025 08:06
@ErikSundvall ErikSundvall marked this pull request as ready for review December 21, 2025 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants