Welcome to @fromDev2Dev!
#marcellothiry #fromdev2dev #typescript #registry #publish
This video is the part 3 of the Implementing Feature Flags Totally from Scratch series. I will show you how to mock timers with Vitest, so we can implement the test cases for our client class. We are going to add a utility method to check if a flag is enabled and implement multivariate flags. In the last segment, we will use Lerna to publish our packages in our local registry (Verdaccio), tagging and pushing to our remote git repo.
Our goal in this series is to develop a complete TypeScript solution (minus the front-end, at least for now) to manage and use Feature Flags (also known as Feature Toggles) without using any existing frameworks or tools to handle them (no third-party libs). When finished, we will have functions for checking flag’s status based on the flag's name and user's group, caching and auto-refreshing, loaders for different data sources, and easy support for switching between new and legacy features. We are using Lerna (monorepo tool), Verdaccio (private NPM proxy registry), Vitest (Unit Test Framework), Fastify (Web Framework, so we can create our back-end REST feature flag service) and MongoDB (NoSQL) as our database.
🚩If you want to write any comments, you can do it in English or Portuguese. I'll keep the replies in Portuguese and translate them to English.
★ Implementing Feature Flags From Scratch Series - Part 1: • Implementing Feature Flags from Scratch - ...
★ Implementing Feature Flags From Scratch Series - Part 2: • Implementing Feature Flags from Scratch - ...
★ Installing NPM packages in you computer with Verdaccio NPM Proxy Registry: • Create a NPM Package and publish it locall...
► Our code repo: github.com/marcellothiry/feature-flags
► Lerna (Monorepo Tool): lerna.js.org/
► Verdaccio (NPM Proxy Registry): verdaccio.org/
► Vitest (Unit Test Framework): vitest.dev/
► Fastify (Web Framework): www.fastify.io/
► MongoDB (NoSQL database): www.mongodb.com/
► LinkedIn: www.linkedin.com/in/marcello-thiry-b29216a/
► Timestamps:
0:00 Testing the client class developed in our last video (mocking timers)
7:24 Adding a new utility method in our client class
9:27 Adding multivariate flags
11:51 Publishing our packages in a local registry with Verdacci
コメント