Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create scaffold for External Provider (NPM Package) #40

Closed
rsaz opened this issue Apr 7, 2024 · 0 comments · Fixed by #43
Closed

Create scaffold for External Provider (NPM Package) #40

rsaz opened this issue Apr 7, 2024 · 0 comments · Fixed by #43
Assignees
Labels
enhancement New feature or request

Comments

@rsaz
Copy link
Member

rsaz commented Apr 7, 2024

Description

The objective of this task is to create a scaffold for external providers in the form of an NPM package that can be easily integrated into the ExpressoTS framework. Developers should be able to implement the IProvider interface from ExpressoTS Core and register their custom class within the application’s provider manager. The scaffold must support the definition of class scope binding (such as singleton, request, or scope) to align with the plugin pattern of ExpressoTS.

The idea is to clone a specific repo that contains a project with a standard configuration for creating new NPM packages with the supporting types to be a ExpressoTS provider.

Command idea: expressots add <provider-name> [external] [library-version] [provider-version]

Goals

  • Ease of Implementation: Ensure that the scaffold simplifies the process of creating and integrating new providers into ExpressoTS.
  • Compliance with ExpressoTS Plugin Pattern: The scaffold should be fully compatible with the plugin system and enforce the implementation of the IProvider interface.
  • Scope Binding Support: Allow developers to define their provider’s lifecycle scope, such as singleton, request, or scoped.

Image

Deliverables

  • A complete scaffold for creating external providers as NPM packages, ready for use by developers.
  • Detailed documentation included within the scaffold for guiding developers through the creation and integration process.
  • A testing suite that can be run to validate the functionality of the scaffold and the created provider.

This task will facilitate the growth of the ExpressoTS ecosystem by enabling developers to contribute custom providers that can be shared and reused within the community, furthering the framework’s extensibility and functionality.

@rsaz rsaz added the enhancement New feature or request label Apr 7, 2024
@rsaz rsaz self-assigned this Apr 28, 2024
@rsaz rsaz linked a pull request Apr 28, 2024 that will close this issue
12 tasks
@rsaz rsaz closed this as completed in #43 Apr 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant