Skip to content

RFC: Moving extensions to separate NPM packages #2550

@reesericci

Description

@reesericci

Proposal

Make each extension an independent NPM package that can be maintained independently.

Motivation

This allows for 3rd parties to write extensions independently of this repository that then can be installed with NPM.

Detailed Design

  • Modify service_map.js for each extension type to load package names from .env (SERVICE_VENDORS=twilio,bandwidth,fakeservice,nexmo), which are then dynamically imported with await import().

  • Add each extension as an NPM workspace with an independent package.json.

Project Plan Information

Sponsor Organization (will test alphas/betas)

Reese for Travis County

Developer allocated

Reese Armstrong (@reesericci)

Planned timeline

1 month

Files/File-sections touched

extensions/*

Schema changes and migrations

None

Any other links to details about the plan (maybe a Google Doc link, or other place where folks have commented)

None

Existing github issues that this RFC will address

TODO on Line 7 of src/extensions/service-vendors/service_map.js:

// TODO this should be built dynamically

Additional Context:

None

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions