Announcement
· Jul 24

VSCode extension for IPM (InterSystems Package Manager) Now Available

Overview

The extension and source code are now available

After having some discussions at Global Summit and using a lot of package managers in my day to day development (npm,nuget,Chocolatey, etc) in addition to recently using the InterSystems Package Manager for some CICD process I'm building using Intersystems IRIS and IRIS 4 Health, I wanted an easy and integrated way to search/view/install packages related to the Intersystems tech stack.

I recently built a VSCode extension for IPM repositories that I will be open sourcing and publishing to the marketplace but wanted create this post to get some feedback from the community.

Download Information

You can download the extension within VSCode or at https://marketplace.visualstudio.com/items?itemName=extensionsbyjohn.ipm.... Just search for ipm.explorer


Github respository

Click here for the github repository

Video

https://www.youtube.com/embed/MutZ0PhBrw8
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

Initial Screen

Some features in the extension:

  • VSCode setting for defining multiple repositories
  • Activity Bar Icon/Explorer View
  • List of packages in custom view
  • List/Open github repository configured in package
  • Details for package in a custom view
  • Copy ZPM install command for use in IRIS terminal

Setup/Settings:

When you first start the extension, you will need to configure it. You can do this by accessing the settings.json file and adding something like the following.

"ipm.repositories": [
        {
            "name":"Public IPM",
            "url":"https://pm.community.intersystems.com"
        },
        {
            "name":"Internal Packages",
            "url":"https://[insert private repo here]"
        },
        {
            "name":"Test Packages",
            "url":"https://[insert private repo here]"
        }
    ]

Screenshots:

Ideas/Future

After building this and working with the API, I'd like to propose a couple updates that potentially could be added to the manifest/API for packages to make integrations like this a little easier

  • License field: (This will let the users know if the package license is compatable with their usage)
  • Logo: encoded image for the package. Allow the developer of the package to specify an image
  • Readme: Allow the developer of the package to include a readme markdown file in the package. This can then be displayed in the details section of the extension.
  • Author: Include the author of the package (can be displayed the details view)
  • Verified: Allow for an author to be verified. For example Intersystems could be a verified author

Open Source:

Click here for the github repository

Comments/Suggestions

Let me know what you think or if you have suggestions let me know. Would you be interested in using this?

Discussion (0)2
Log in or sign up to continue