Skip to content

Mini Mealie is a lightweight Chrome extension designed to enhance the experience of Mealie, an open-source recipe manager. With Mini Mealie, users can quickly import recipes from any website into their Mealie instance with a simple right-click.

License

Notifications You must be signed in to change notification settings

mrshappy0/mini-mealie

Repository files navigation

Mini Mealie

Release Contributors Stargazers Issues AGPL License Coverage Status Commitizen friendly Chrome Web Store Buy Me a Coffee

Mini Mealie is a Chrome extension built using WXT and React, designed to speed up recipe creation. This extension integrates with Mealie to scrape recipes and import into Mealie.


Features

  • Import recipes from any webpage using Mealie API
  • Toggle for Paywall ladder
  • Each website uses Mealie dry-run to detect a recipe on the active tab
  • Store Mealie API token securely using chrome.storage.sync.
  • Supports connecting to any Mealie server

Requirements and Dependencies

  • Node.js v22.x or later
  • pnpm (Package Manager)
  • Chrome (for testing and development)
  • Dependencies:
    • WXT (Web Extension Toolkit)
    • React v19.x
    • TypeScript 5.7.3

Installation and Setup

  1. Clone the repository:

  2. Install dependencies using pnpm:

    pnpm install
  3. Start the development server:

    pnpm dev
  4. Build the extension for production:

    pnpm build
  5. Load the extension in Chrome:

    • Go to chrome://extensions/
    • Enable Developer Mode
    • Click Load unpacked and select the dist folder

Configuration

  • To use the Mealie integration, you will need to generate an API token in your Mealie instance.
  • Save the token securely within the extension popup.
  • Obtain your local host URL or public Mealie instance URL for API calls.
  • Modify your Mealie infrastructure to allow CORS (Cross-Origin Resource Sharing) calls, as the Chrome extension will be making API requests:
    • This involves configuring your reverse proxies, authentication, or other related infrastructure.

Usage

  1. Right-click on any recipe webpage.
  2. Select "Recipe Detected - Add Recipe to Mealie" from the context menu. 2a. (Optional) Enable the paywall ladder feature to send the recipe URL to a paywall ladder before proceeding.
  3. The extension will send the recipe URL to the Mealie create recipe endpoint.

Development and Contribution

  • Open Source Invitation:
    • Contributions are welcome as Mini Mealie evolves. Enhance features or propose new ones!
  • Discussion and Issues:

Pull Request Process

  1. Branches:

    • main: Stable production build.
    • Develop new features or fixes in a feature branch.
    • Open a pull request (PR) pointing to main.
  2. Review:

    • Request a review from a repository admin.
  3. Release Management:

    • After a successful review and merge, a GitHub Action evaluates if a new release is necessary based on the PR commits.
    • This project follows Conventional Commits for release determination.
    • Approved releases are published to the Chrome Web Store via an upload workflow.

Code Reviews

  • All pull request reviews must be kept up-to-date with the main branch.
  • Branch protection rules are enforced to ensure:
    • Passing of ESLint tests.
    • Successful completion of unit tests.
    • Adequate test coverage is maintained.
  • All issues must be resolved prior to requesting a review.
  • Pull requests require approval from at least one reviewer.

📄 License

Distributed under the AGPL License. See the LICENSE file for more details.


☕ Support Me

If you find this project useful, consider buying me a coffee to show your support!


Contact

For questions or collaboration requests, contact:


About

Mini Mealie is a lightweight Chrome extension designed to enhance the experience of Mealie, an open-source recipe manager. With Mini Mealie, users can quickly import recipes from any website into their Mealie instance with a simple right-click.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors 2

  •  
  •