adr / adr-manager

ADR-Manager
https://adr.github.io/adr-manager/
MIT License
101 stars 22 forks source link

Project Rewrite #163

Open Midnighter opened 1 month ago

Midnighter commented 1 month ago

@xJREB I was not able to create a project so I'm dumping everything into this issue for now.

@Efode-r2d2 I have pushed a branch https://github.com/adr/adr-manager/tree/vue3 which is an orphan branch. For now, I have copied most of the existing readme and the license into it. @xJREB I would like to add a line Copyright (c) 2024 Novo Nordisk A/S to the license file once we contribute something meaningful.

I also added a basic docker compose setup which makes it easier to run the frontend and pocketbase together for local development.

Apart from the upgrade to Vue 3, reorganizing the codebase and using TypeScript will be the biggest changes. I would like to change the project structure to something that is inspired by hexagonal architecture and a bit of domain-driven design (DDD). Please see the figure below for a first draft of what I mean. The use of interfaces and concrete implementations is will supported by TypeScript.

class-diagram

Since there is no project, I didn't see the point of making issues, but the below task list should be converted to individual issues.

Task List

Decisions

A number of decisions have already been taken just by setting up the project and should be converted to ADRs:

Midnighter commented 1 month ago

I talked with @hlyl earlier and he alerted me that my comment about copyright might be misunderstood. So I'd like to clarify here that we are in no way trying to appropriate open source software.

You can see from my GitHub profile that I've authored and contributed to many open source projects. To me the copyright notice is simply a form of acknowledging contributions. There are other forms to do so, this is the simplest format to me. The copyright line is not at all a requirement from us.