• Stars
    star
    895
  • Rank 51,027 (Top 2 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 7 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

📘Super fast browser dictionary

Mouse Dictionary logo

Test Code Climate codecov

Mouse Dictionary is a super fast browser dictionary.

Features:

  • ⚡ Super quick response time (1/60 second)
  • 💡 Smart phrase detection
  • 🔍 Automatic word separation (e.g. camelCase -> camel case)
  • 📝 Option to add your own data
  • 🎨 Customizable view

Available for various documents:

Install

See also Getting started

Screenshots

English-Japanese

ss02.gif

Japanese-English

ss03.gif

German

Want to use for the German language? Take a look these great articles!

How to develop

Preparation

Use Node.js 16+.

npm install

Generate static resources.

npm run res

Build

For Chrome:

npm run build-chrome   # Debug build
npm run release-chrome # Release build

For Firefox:

npm run build-firefox   # Debug build
npm run release-firefox # Release build

For Safari:

npm run build-safari   # Debug build
npm run release-safari # Release build

see package.json for other commands.

Contribution

For the moment, Mouse Dictionary project doesn't have any strict rule about contribution. Feel free to create any issues and pull requests.

Some guides:

  • Editor: the main developer uses VSCode
  • Before you commit: try running npm run test and npm run lint

Cross-extension messaging

Mouse Dictionary supports receiving cross-extension messages. Mouse Dictionary iframe support is a good example that implements message sending to this extension.

Here is a code example for sending a message to Mouse Dictionary. You can make Mouse Dictionary look up words/expressions from other extensions.

const MD_EXTENSION_ID = "dnclbikcihnpjohihfcmmldgkjnebgnj";

chrome.runtime.sendMessage(MD_EXTENSION_ID, {
  type: "text",
  text: "rained cats and dogs",
});

Parameters:

name type value
type string must be "text"
text string text you want to look up

License

Mouse Dictionary is published under the MIT license.

Third-party data

This project includes some third-party data:

Dictionary data

Images

Built-in PDF viewer

Great JavaScript libraries

See also

Chrome 拡張の高速な英語辞書ツールをつくりました(a Japanese tutorial)