Introducing NearForm’s Optic Release Automation Toolkit
Optic is a toolkit that allows you to seamlessly automate your release process
This is an exciting announcement for us and for you.
It’s exciting for us because we have talked about Optic in a previous blog post , and in the past year we have worked to turn it into a real Open Source project that anybody can use.
Our Optic toolkit is now publicly available for you to use to seamlessly automate the release process of your npm packages, apps and actions.
Why is this exciting for you? Because Optic boosts your productivity, enhances your security and enables you to deliver high-quality code faster than ever before.
Optic’s capabilities
Optic is actually a collection of several tools, working together with the objective of achieving full release automation.
Among its current capabilities, Optic allows:
- Building and publishing of packages to the npm registry
- Releasing GitHub actions, complying with the versioning scheme recommended by GitHub
- Creating GitHub releases of any other software artefact types, such as mobile, web or server-side applications
To achieve this, Optic builds on top of:
- A GitHub action used to trigger the release process
- A mobile application used as a generator of One Time Passwords (OTP), to automate secure publishing of npm packages
- Supporting backend services
Optic isn’t NearForm’s first Open Source project — we’ve created and released numerous ones
NearForm has been involved in Open Source for a long time, and over time we have created and released dozens of Open Source projects . Some have reached maturity, some have been abandoned, while others are still experimental or actively being developed.
The common denominator is that all of them eventually needed to be released, and kept up to date as time passed.
Because we work primarily in the JavaScript space and use GitHub for both Open Source and internal development, our project artefacts often come in the form of npm packages, GitHub actions or applications running in the cloud.
The numbers
To give an idea of the numbers, we currently own and maintain:
- ~100 npm packages
- 13 GitHub actions
- 1 Open Source mobile application built in React Native
- A dozen or so Web applications running on AWS or Google Cloud
“This excludes any application built for our customers, whose numbers largely exceed the numbers above>”
The problem
All these software artefacts need to be released over time as bug fixes are made, new features implemented, or dependencies updated. We also rely on GitHub’s Dependabot for dependency management, and we have automated that part too .
We realized that the larger the number of artefacts, the higher the effort and time taken to release them. This is why we built and released Optic .
Visit the official Optic website to learn more about our Open Source release automation toolkit
With the objective of lowering the entry barrier and increasing adoption, we’ve launched Optic’s official website, where all the information, documentation and recipes are gathered in a single place.
You can check out the new website at https://optic.nearform.com/ Because it was born as an internal tool, it may still have some rough edges, so we’d be delighted to hear your feedback on how we can turn Optic into an even better tool.
We have been using Optic at NearForm for a few years now. It has helped us greatly to reduce the effort spent on release automation, and we hope it can help you achieve the same result.
Insight, imagination and expertly engineered solutions to accelerate and sustain progress.
Contact