Skip to content

Division by features and hexagonal architecture #3372

@mcfdez

Description

@mcfdez

What problem will this feature address?

Improve code organization to make it more maintainable and scalable.

Describe the solution you'd like

The main motivation for this request is to discuss the suitability of applying feature slicing to the Dokploy app, in which each of these features is properly segmented by layers, applying the Hexagonal Architecture paradigm.

The idea is that a “page” simply has the routing function and immediately imports a “container” type component, which is where all the UI/business logic of a specific feature should be contained.

Once the feature takes control of the flow, the container will import all the components necessary to implement the relevant logic.

The purpose of dividing each feature into layers is to separate the presentation logic from the business logic, so that the UI layer contains only those elements that are strictly related to the user interface, as well as elements of the framework (React, Next, etc.), delegating to the application layer the use cases that are agnostic to the framework, data modeling in the domain layer, and connection with external elements in the infrastructure layer.

Attached is a PR as proof of concept.

#3373

Yes

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions