Skip to content

Conversation

@google-labs-jules
Copy link

This pull request migrates the Github Omnibox extension to the Plasmo framework, converts the entire codebase to TypeScript, replaces Lodash with vanilla JavaScript, and sets up a CI/CD workflow for publishing to the Chrome Web Store.

This commit represents a complete migration and modernization of the Github Omnibox extension.

The key changes include:

- **Migration to Plasmo:** The extension has been migrated from a legacy, non-packaged format to the Plasmo framework. This provides a modern, maintainable, and Manifest V3-compliant structure.

- **Dependency Management:** The project now uses Yarn for dependency management. Manually included libraries like jQuery and Underscore have been replaced with npm packages.

- **TypeScript Conversion:** The entire codebase has been converted from JavaScript to TypeScript, improving code quality and maintainability.

- **Vanilla JS Refactoring:** The Lodash dependency has been completely removed and replaced with native JavaScript equivalents (`Array.prototype.forEach`, `Array.prototype.find`, `Object.entries`, etc.).

- **CI/CD Workflow:** A GitHub Actions workflow has been added to automate the building and publishing of the extension to the Chrome Web Store.

- **UI Page Migration:** The AngularJS-based options page has been migrated to a modern React component using `react-bootstrap`. The manual OAuth flow has also been modernized into a single React page.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant