Migrate to manifest V3 for Chrome, update tech stack, major refactoring #40
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As I've noted here, Firefox barely supports manifest v3 (there are some issues with service workers), and there are many ways to handle the separation of manifests for different browsers - and this is one of them.
What was done:
I did a major refactoring, removed obsolete (in my opinion) libs like browserify and others.
Vite is chosen as the bundler to provide an easy and robust way to build the extension without having to manually copy files (except the license file).
Mocha is replaced by Vitest to eliminate the need to compile TypeScript-based tests before running - API is almost the same
vite-plugin-web-extension plugin is used to handle different manifest versions in the most optimal way (in my opinion).
Also, updated the code to use modern JS approaches (
const
andlet
instead ofvar
), applied code formatting, unified indent size across the codebase.Fixes #34