Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

#523 - Extract plan vertical slice to controller/service/repository boundary

Open
#525 0 comments 0 reactions 1 assignee View on GitHub

@brijesh-amin is already working on this.

Since Jul 17, 2026.

Assessment

This issue has not been assessed yet.

Description

Parent: #523

Objective

Create a modern boundary for one high-value plan flow by separating transport concerns from business logic and data access.

In scope

  • Select one plan workflow currently implemented in PlanController
  • Introduce service module(s) under src/services/plan/ for orchestration/business rules
  • Introduce repository abstraction(s) over db2 access for the selected flow
  • Keep controller as thin request/response adapter
  • Add/adjust tests to protect behavior

Acceptance criteria

  • Controller delegates core logic to service
  • Service does not depend on Express req/res
  • Repository encapsulates query implementation for the selected flow
  • Existing endpoint behavior remains compatible
  • Regression tests cover service behavior and endpoint contract

Notes

Use this as the reference pattern for later controller decompositions.

Dominant language
TypeScript
Stars
1
Forks
7
PR merge metrics
No merged PRs in 30d

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • No pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from bcgov/range-api

All issues in bcgov/range-api

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.