Skip to content

👀 Extension Architecture / API #76

Open
@jasonplatts

Description

@jasonplatts

Overview

Support for extensions is planned for a future release of CodeEdit. The extension system will provide similar capabilities to that of other editors.

Contributing

If you wish to contribute to building the CodeEdit extension architecture, please see the tasks below and review the relevant parts of the API documentation repository. This documentation should be used as the guide for development.

PLEASE NOTE THE DOCUMENTATION IS STILL WORK IN PROGRESS. TASKS AND THEIR RELATED GITHUB ISSUES WILL BE UPDATED AS THE RELEVANT DOCUMENTATION IS COMPLETED.

Each API feature functionality first needs to be built into CodeEdit so that it can be used internally by the application and then later exposed to extensions through the API.

Tasks

References

Activity

jaydenseric

jaydenseric commented on Mar 21, 2022

@jaydenseric

If extensions have a JS API, it would be great if they can be standard ESM instead of CJS like Nova requires for its extensions:

https://docs.nova.app/extensions/#javascript-modules

CJS makes it tricky (but not impossible) to author extensions using Deno or other standards-aligned tooling without introducing a build step.

jaydenseric

jaydenseric commented on Mar 21, 2022

@jaydenseric
jasonplatts

jasonplatts commented on Mar 21, 2022

@jasonplatts
CollaboratorAuthor

Hi @jaydenseric.

Thanks for joining the discussion. @austincondiff and I talked about this and it has been brought up in our Discord too.

Since it is early in the development, no decisions have been made in relation to the extension architecture. JavaScript Core (https://developer.apple.com/documentation/javascriptcore) has been mentioned as a possible option for implementing extensions. Unfortunately, as far as I am aware, it does not support ESM.

Having developed some extensions for Nova, I know this has been a frustration shared by other devs too. And, hopefully we can find a final solution that supports ESM. We also have an extensions channel in our Discord if you would like to get involved in the conversation.

changed the title [-]Add Extension API[/-] [+][FEAT] - Add Extension API[/+] on Mar 21, 2022
added
extensionsIssues related to the extension architecture in CodeEdit
on Mar 22, 2022
changed the title [-][FEAT] - Add Extension API[/-] [+][FEAT] Extension API[/+] on Mar 22, 2022
changed the title [-][FEAT] Extension API[/-] [+]✨ Extension API[/+] on Mar 31, 2022

19 remaining items

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    PRIORITYThis issue has priority over other issues.clarification neededFurther information is requestedenhancementNew feature or requestextensionsIssues related to the extension architecture in CodeEdithelp wantedExtra attention is needed

    Type

    No type

    Projects

    Status

    📋 Todo

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @austincondiff@Bart-Jan@jaydenseric@chriskrycho@lukepistrol

        Issue actions

          👀 Extension Architecture / API · Issue #76 · CodeEditApp/CodeEdit