diff --git a/docs/advanced/audio.md b/docs/advanced/audio.md index b40e610..2c05923 100644 --- a/docs/advanced/audio.md +++ b/docs/advanced/audio.md @@ -1,5 +1,3 @@ -# Audio - ## Default audio sources After looking up a term, you can click on the _speaker_ button to hear the term's pronunciation. When searching for audio, multiple audio sources are checked until the first source with audio for the term is found. If no audio is found, you will hear a short click instead. Right-clicking the button allows choosing the source manually. diff --git a/docs/advanced/keyboard-shortcuts.md b/docs/advanced/keyboard-shortcuts.md index bf12a84..c12e90d 100644 --- a/docs/advanced/keyboard-shortcuts.md +++ b/docs/advanced/keyboard-shortcuts.md @@ -1,5 +1,3 @@ -## Keyboard Shortcuts - The following shortcuts are globally available: | Shortcut | Action | diff --git a/docs/assets/btn/btn-add-duplicate-expression.png b/docs/assets/btn/btn-add-duplicate-expression.png new file mode 100644 index 0000000..05673cb Binary files /dev/null and b/docs/assets/btn/btn-add-duplicate-expression.png differ diff --git a/docs/assets/btn/btn-add-duplicate-reading.png b/docs/assets/btn/btn-add-duplicate-reading.png new file mode 100644 index 0000000..421d5ee Binary files /dev/null and b/docs/assets/btn/btn-add-duplicate-reading.png differ diff --git a/docs/assets/btn/btn-add-expression.png b/docs/assets/btn/btn-add-expression.png new file mode 100644 index 0000000..6332fef Binary files /dev/null and b/docs/assets/btn/btn-add-expression.png differ diff --git a/docs/assets/btn/btn-add-reading.png b/docs/assets/btn/btn-add-reading.png new file mode 100644 index 0000000..41ff833 Binary files /dev/null and b/docs/assets/btn/btn-add-reading.png differ diff --git a/docs/assets/chrome-web-store.png b/docs/assets/chrome-web-store.png new file mode 100644 index 0000000..4e48b8a Binary files /dev/null and b/docs/assets/chrome-web-store.png differ diff --git a/docs/assets/deinflection-example-chain.png b/docs/assets/deinflection-example-chain.png new file mode 100644 index 0000000..4f3d531 Binary files /dev/null and b/docs/assets/deinflection-example-chain.png differ diff --git a/docs/assets/deinflection-example-simple.png b/docs/assets/deinflection-example-simple.png new file mode 100644 index 0000000..a8f1b52 Binary files /dev/null and b/docs/assets/deinflection-example-simple.png differ diff --git a/docs/assets/firefox-marketplace.png b/docs/assets/firefox-marketplace.png new file mode 100644 index 0000000..f640023 Binary files /dev/null and b/docs/assets/firefox-marketplace.png differ diff --git a/docs/assets/icon/cog.svg b/docs/assets/icon/cog.svg new file mode 100644 index 0000000..7232d25 --- /dev/null +++ b/docs/assets/icon/cog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/assets/icon/magnifying-glass.svg b/docs/assets/icon/magnifying-glass.svg new file mode 100644 index 0000000..a8367d8 --- /dev/null +++ b/docs/assets/icon/magnifying-glass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/assets/icon/play-audio.svg b/docs/assets/icon/play-audio.svg new file mode 100644 index 0000000..1d5e2d9 --- /dev/null +++ b/docs/assets/icon/play-audio.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/assets/icon/profile.svg b/docs/assets/icon/profile.svg new file mode 100644 index 0000000..52a1363 --- /dev/null +++ b/docs/assets/icon/profile.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/assets/icon/question-mark-circle.svg b/docs/assets/icon/question-mark-circle.svg new file mode 100644 index 0000000..0076f7c --- /dev/null +++ b/docs/assets/icon/question-mark-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/assets/icon/yomitan-icon.svg b/docs/assets/icon/yomitan-icon.svg new file mode 100644 index 0000000..3756901 --- /dev/null +++ b/docs/assets/icon/yomitan-icon.svg @@ -0,0 +1 @@ + diff --git a/docs/assets/yomitan-icon128.png b/docs/assets/icon/yomitan-icon128.png similarity index 100% rename from docs/assets/yomitan-icon128.png rename to docs/assets/icon/yomitan-icon128.png diff --git a/docs/assets/yomitan-icon64.png b/docs/assets/icon/yomitan-icon64.png similarity index 100% rename from docs/assets/yomitan-icon64.png rename to docs/assets/icon/yomitan-icon64.png diff --git a/docs/assets/language-dropdown.png b/docs/assets/language-dropdown.png new file mode 100644 index 0000000..b813104 Binary files /dev/null and b/docs/assets/language-dropdown.png differ diff --git a/docs/assets/resources/browser-action-popup1.png b/docs/assets/resources/browser-action-popup1.png new file mode 100644 index 0000000..1c241ac Binary files /dev/null and b/docs/assets/resources/browser-action-popup1.png differ diff --git a/docs/assets/resources/browser-action-popup2.png b/docs/assets/resources/browser-action-popup2.png new file mode 100644 index 0000000..76c15b1 Binary files /dev/null and b/docs/assets/resources/browser-action-popup2.png differ diff --git a/docs/assets/resources/search-popup-kanji-thumb.png b/docs/assets/resources/search-popup-kanji-thumb.png new file mode 100644 index 0000000..8a80475 Binary files /dev/null and b/docs/assets/resources/search-popup-kanji-thumb.png differ diff --git a/docs/assets/resources/search-popup-kanji.png b/docs/assets/resources/search-popup-kanji.png new file mode 100644 index 0000000..2fe890b Binary files /dev/null and b/docs/assets/resources/search-popup-kanji.png differ diff --git a/docs/assets/resources/search-popup-terms-thumb.png b/docs/assets/resources/search-popup-terms-thumb.png new file mode 100644 index 0000000..c3a8081 Binary files /dev/null and b/docs/assets/resources/search-popup-terms-thumb.png differ diff --git a/docs/assets/resources/search-popup-terms.png b/docs/assets/resources/search-popup-terms.png new file mode 100644 index 0000000..3af29a6 Binary files /dev/null and b/docs/assets/resources/search-popup-terms.png differ diff --git a/docs/assets/resources/settings-dictionaries-popup-thumb.png b/docs/assets/resources/settings-dictionaries-popup-thumb.png new file mode 100644 index 0000000..5f85904 Binary files /dev/null and b/docs/assets/resources/settings-dictionaries-popup-thumb.png differ diff --git a/docs/assets/resources/settings-dictionaries-popup.png b/docs/assets/resources/settings-dictionaries-popup.png new file mode 100644 index 0000000..e37d8a2 Binary files /dev/null and b/docs/assets/resources/settings-dictionaries-popup.png differ diff --git a/docs/assets/ss/anki.png b/docs/assets/ss/anki.png new file mode 100644 index 0000000..3c926ca Binary files /dev/null and b/docs/assets/ss/anki.png differ diff --git a/docs/assets/ss/dictionaries.png b/docs/assets/ss/dictionaries.png new file mode 100644 index 0000000..49852ca Binary files /dev/null and b/docs/assets/ss/dictionaries.png differ diff --git a/docs/assets/ss/kanji.png b/docs/assets/ss/kanji.png new file mode 100644 index 0000000..6ed520a Binary files /dev/null and b/docs/assets/ss/kanji.png differ diff --git a/docs/assets/ss/terms.png b/docs/assets/ss/terms.png new file mode 100644 index 0000000..58bce53 Binary files /dev/null and b/docs/assets/ss/terms.png differ diff --git a/docs/change-log.md b/docs/change-log.md new file mode 100644 index 0000000..e009e60 --- /dev/null +++ b/docs/change-log.md @@ -0,0 +1,17 @@ +> While we have made some substantial changes, the majority of the extension's functionality is thanks to hard work of [FooSoft](https://foosoft.net/) and many other incredible open source contributors from 2016-2023. + +## Major changes: + +- ๐ŸŒ Added multi-language support! +- ๐Ÿ’ช Completed the Manifest V2 โ†’ V3 transition, [read why here](https://developer.chrome.com/blog/resuming-the-transition-to-mv3/). +- โšก Switched to using ECMAScript modules and npm-sourced dependencies. +- ๐Ÿ”ง Implemented an end-to-end CI/CD pipeline. +- ๐Ÿงช Switched to standard testing frameworks, vitest and playwrights. + +### In addition, we have made important bug fixes and minor enhancements: + +- โšก Improved dictionary import speeds by 2x~10x. +- ๐Ÿ“š Added functionality to import/export multiple dictionaries, enabling portability across devices. +- โœจ And [more](https://github.com/themoeway/yomitan/pulls?q=is%3Apr+is%3Amerged+-label%3Aarea%2Fdependencies+-label%3Akind%2Fmeta). + +Since the owner requested forks be uniquely named, we have chosen a new name, _Yomitan_ (_-tan_ is an honorific used for anthropomorphic moe characters). diff --git a/docs/contributing.md b/docs/contributing.md new file mode 100644 index 0000000..0e0262c --- /dev/null +++ b/docs/contributing.md @@ -0,0 +1,43 @@ +## Contributing + +๐Ÿš€ **Dip your toes into contributing by looking at issues with the label [good-first-issue](https://github.com/themoeway/yomitan/issues?q=is%3Aopen+is%3Aissue+label%3Agood-first-issue).** + +Since this is a distributed effort, we **highly welcome new contributors**! Feel free to browse the [issue tracker](https://github.com/themoeway/yomitan/issues), and read our [contributing guidelines](./CONTRIBUTING.md). + +Here are some ways anyone can help: + +- Try using the Yomitan dev build. Not only do you get cutting edge features, but you can help uncover bugs and give feedback to developers early on. +- Document any UI/UX friction in Github Issues. We're looking to make Yomitan more accessible to non-technical users. +- All the issues in `area/bug` older than 2 months need help reproducing. If anything interests you, please try to reproduce it and report your results. We can't easily tell if these issues are one-off, have since been resolved, or are no longer relevant. + +> The current active maintainers of Yomitan spend a lot of their time debugging and triaging issues. When someone files a bug report, we need to assess the frequency and severity of the bug. It is extremely helpful if we get multiple reports of people who experience a bug or people who can contribute additional detail to an existing bug report. + +If you're looking to code, please let us know what you plan on working on before submitting a Pull Request. This gives the core maintainers an opportunity to provide feedback early on before you dive too deep. You can do this by opening a Github Issue with the proposal. + +Some contributions we always appreciate: + +- Well-written tests covering different functionalities. This includes [playwright tests](https://github.com/themoeway/yomitan/tree/master/test/playwright), [benchmark tests](https://github.com/themoeway/yomitan/tree/master/benches), and unit tests. +- Increasing our type coverage. +- More and better documentation! + +Information on how to setup and build the codebase can be found [here](./CONTRIBUTING.md#setup). + +If you want to add or improve support for a language, read the documentation on [language features](./docs/development/language-features.md). + +Feel free to join us on [TheMoeWay Discord ๐Ÿ‡](https://discord.gg/UGNPMDE7zC) at [#yomitan-development](https://discord.com/channels/617136488840429598/1081538711742844980). + +## Third-Party Libraries + +Yomitan uses several third-party libraries to function. + + + +| Name | Installed version | License type | Link | +| :------------------ | :---------------- | :----------- | :----------------------------------------------- | +| @zip.js/zip.js | 2.7.32 | BSD-3-Clause | git+https://github.com/gildas-lormeau/zip.js.git | +| dexie | 3.2.4 | Apache-2.0 | git+https://github.com/dfahlander/Dexie.js.git | +| dexie-export-import | 4.0.7 | Apache-2.0 | git+https://github.com/dexie/Dexie.js.git | +| yomitan-handlebars | 1.0.0 | MIT | n/a | +| parse5 | 7.1.2 | MIT | git://github.com/inikulin/parse5.git | +| wanakana | 5.3.1 | MIT | git+ssh://git@github.com/WaniKani/WanaKana.git | +| hangul.js | 0.2.6 | MIT | git+https://github.com/e-/Hangul.js.git | diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md new file mode 100644 index 0000000..7d5a14b --- /dev/null +++ b/docs/getting-started/index.md @@ -0,0 +1,70 @@ +This introduction will help you quickly familiarize yourself with the basics and set you up for a smooth language learning experience. + +Whether you're new to Yomitan or just need a refresher, here you'll find all the essential information you need to begin your journey. + +Let's dive in and get started! + +--- + +## Installation + +##### Yomitan comes in two flavors: _stable_ and _testing_. + +!!! info "Stable and Testing" + - New changes are initially introduced into the _testing_ version, and after some time spent ensuring that they are relatively bug free, they will be promoted to the _stable_ version. + + - If you are technically savvy and don't mind [submitting issues](https://github.com/themoeway/yomitan/issues/new/choose) on GitHub, try the _testing_ version; otherwise, the _stable_ version will be your best bet. Check [contributing](#contributing) for more information on how to help. + +=== "Google Chrome" + === "Stable" + [:fontawesome-brands-chrome: Get Yomitan Stable](https://chrome.google.com/webstore/detail/yomitan/likgccmbimhjbgkjambclfkhldnlhbnn){ .md-button .md-button--primary } + === "Testing" + [:fontawesome-brands-chrome: Get Yomitan Testing](https://chrome.google.com/webstore/detail/yomitan-development-build/glnaenfapkkecknnmginabpmgkenenml){ .md-button .md-button--primary } +=== "Mozilla Firefox" + === "Stable" + [:fontawesome-brands-firefox-browser: Get Yomitan Stable](https://addons.mozilla.org/en-US/firefox/addon/yomitan/){ .md-button .md-button--primary } + === "Testing" + [:fontawesome-brands-firefox-browser: Go To Github Releases](https://github.com/themoeway/yomitan/releases){ .md-button .md-button--primary } + + โ€ป Unlike Chrome, Firefox does not allow extensions meant for testing to be hosted in the marketplace. You will to download the desired version and side-load it yourself. You only need to do this once, and you will get updautomatically. + +--- + +## Basic Usage + +Now that you have installed Yomitan, let's explore how you can utilize her features in your language learning journey. + +### Quick-actions + +Click the yomitan icon _Yomitan_ button in the browser bar to open the quick-actions popup. + +yomitan main popup + +- The cog _cog_ button will open the Settings page. +- The magnifying glass _magnifying glass_ button willopen the Search page. +- The question mark symbol _question mark_ buttonwill open the Information page. +- The profile icon _profile_ button will appear when multipleprofiles exist, allowing the current profile to be quickly changed. + +### Installing Dictionaries + +Import the dictionaries you wish to use for term and kanji searches; head over to the [dictionary docs](./docs/dictionaries.md) to get set up! If you do not have any dictionaries installed or enabled, Yomitan will warn you that it is not ready for use by displaying an orange exclamation mark over its icon. This exclamation mark will disappear once you have installed and enabled at least one dictionary. + +custom dictionaries list + +### Scanning Text + +Webpage text can be scanned by moving the cursor while holding a modifier key, which is Shift by default. If definitions are found for the text at the cursor position, a popup window containing term definitions will open. This window can be dismissed by clicking anywhere outside of it. + +popup with search terms + +### Audio + +Click on the loudspeaker icon _speaker_ button to hear the term pronounced by a native speaker. If an audio sample is not available, you will hear a short click instead. For more options, see [Audio Configuration](./docs/audio.md). + +### Kanji + +Click on individual kanji in the term definition results to view additional information about those characters, including stroke order diagrams, readings, meanings, and other useful data. + +popup with kanji details + +To further enhance your Yomitan experience, it's worth [integrating with Anki](./docs/anki-integration.md), a spaced-repetition flashcard program to help solidify the words you encounter. diff --git a/docs/index.md b/docs/index.md index d767a7c..c75b63a 100644 --- a/docs/index.md +++ b/docs/index.md @@ -5,153 +5,45 @@ [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/themoeway/yomitan/badge)](https://securityscorecards.dev/viewer/?uri=github.com/themoeway/yomitan) [![Discord](https://dcbadge.vercel.app/api/server/UGNPMDE7zC?style=flat)](https://discord.gg/UGNPMDE7zC) -๐Ÿ‘‹ **Yomitan is [the successor](https://foosoft.net/posts/passing-the-torch-to-yomitan/) to Yomichan** ([migration guide](./docs/yomichan-migration.md#migrating-from-yomichan)) which was [sunset](https://foosoft.net/posts/sunsetting-the-yomichan-project/) by its owner on Feb 26, 2023. We have made a number of [foundational changes](#changes) to ensure **the project stays alive, works on latest browser versions, and is easy to contribute to**. +:wave: **Yomitan is [the successor](https://foosoft.net/posts/passing-the-torch-to-yomitan/) to Yomichan** ([migration guide](./docs/yomichan-migration.md#migrating-from-yomichan)) which was [sunset](https://foosoft.net/posts/sunsetting-the-yomichan-project/) by her owner on Feb 26, 2023. We have made a number of [foundational changes](#changes) to ensure **the project stays alive, works on latest browser versions, and is easy to contribute to**. -๐Ÿ“ข **New contributors [welcome](#contributing)!** +:loudspeaker: **New contributors [welcome](#contributing)!** -๐Ÿ“ข **Interested in adding a new language to Yomitan? See [here](./docs/development/language-features.md) for thorough documentation!** +:loudspeaker: **Interested in adding a new language to Yomitan? See [here](./docs/development/language-features.md) for thorough documentation!** + +--- ## What is Yomitan? Yomitan turns your web browser into a tool for building language literacy by helping you **read** texts that would otherwise be too difficult to tackle in [a variety of supported languages](./docs/supported-languages.md). -Yomitan provides powerful features not available in other browser-based dictionaries: - -- ๐Ÿ’ฌ Interactive popup definition window for displaying search results. -- ๐Ÿ”Š Built-in native pronunciation audio with the ability to add your own [custom audio sources](./docs/audio.md). -- โœ๏ธ Kanji stroke order diagrams are just a click away. -- ๐Ÿ“ [Automatic flashcard creation](./docs/anki-integration.md#anki-integration) for the [Anki](https://apps.ankiweb.net/) flashcard program via the [AnkiConnect](https://foosoft.net/projects/anki-connect) plugin. -- ๐Ÿ” Custom search page for easily executing custom search queries. -- ๐Ÿ“– Support for multiple dictionary formats including [EPWING](https://ja.wikipedia.org/wiki/EPWING) via the [Yomitan Import](https://github.com/themoeway/yomitan-import) tool. -- โœจ Clean, modern code makes it easy for developers to [contribute](#contributing) new features and languages. - -[![Term definitions](img/ss-terms-thumb.png)](img/ss-terms.png) -[![Kanji information](img/ss-kanji-thumb.png)](img/ss-kanji.png) -[![Dictionary options](img/ss-dictionaries-thumb.png)](img/ss-dictionaries.png) -[![Anki options](img/ss-anki-thumb.png)](img/ss-anki.png) - -## Helpful information - -- โœจ [Migrating from Yomichan (legacy)](./docs/yomichan-migration.md) -- Dictionaries - - ๐Ÿ“š [Recommended Dictionaries](./docs/dictionaries.md#recommended-dictionaries) - - ๐Ÿ—‚๏ธ [Importing and exporting dictionaries](./docs/dictionaries.md#importing-a-dictionary-collection) - - ๐Ÿ› ๏ธ [Making Yomitan Dictionaries](./docs/making-yomitan-dictionaries.md) -- Anki Integration - - ๐Ÿ“‡ [Anki integration and flashcard creation guide](./docs/anki-integration.md) - - ๐Ÿ”ง [Anki handlebar templates](./docs/templates.md) -- Advanced Features - - โŒจ๏ธ [Keyboard shortcuts](./docs/keyboard-shortcuts.md) - - ๐Ÿ” [Advanced options, including MeCab](./docs/advanced-options.md) - - ๐Ÿ”Š [Adding custom audio sources](./docs/audio.md) -- Troubleshooting - - ๐Ÿ•ท๏ธ [Known browser bugs](./docs/browser-bugs.md) - - โ“ [Frequently asked questions](./docs/faq.md) -- ๐Ÿ”’ [Browser Permissions](./docs/permissions.md) -- ๐ŸŒŽ [Supported Languages](./docs/supported-languages.md) - -## Installation - -Yomitan comes in two flavors: _stable_ and _testing_. New changes are initially introduced into the _testing_ version, and after some time spent ensuring that they are relatively bug free, they will be promoted to the _stable_ version. If you are technically savvy and don't mind [submitting issues](https://github.com/themoeway/yomitan/issues/new/choose) on GitHub, try the _testing_ version; otherwise, the _stable_ version will be your best bet. Check [contributing](#contributing) for more information on how to help. - -- **Google Chrome** - - - [stable](https://chrome.google.com/webstore/detail/yomitan/likgccmbimhjbgkjambclfkhldnlhbnn) - - [testing](https://chrome.google.com/webstore/detail/yomitan-development-build/glnaenfapkkecknnmginabpmgkenenml) - -- **Mozilla Firefox** - - [stable](https://addons.mozilla.org/en-US/firefox/addon/yomitan/) - - [testing](https://github.com/themoeway/yomitan/releases) โ€ป - -โ€ป Unlike Chrome, Firefox does not allow extensions meant for testing to be hosted in the marketplace. You will have to download the desired version and side-load it yourself. You only need to do this once, and you will get updates automatically. - -## Basic Usage - -1. Click the yomitan icon _Yomitan_ button in the browser bar to open the quick-actions popup. - - yomitan main popup - - - The cog _cog_ button will open the Settings page. - - The magnifying glass _magnifying glass_ button will open the Search page. - - The question mark symbol _question mark_ button will open the Information page. - - The profile icon _profile_ button will appear when multiple profiles exist, allowing the current profile to be quickly changed. - -2. Import the dictionaries you wish to use for term and kanji searches; head over to the [dictionary docs](./docs/dictionaries.md) to get set up! If you do not have any dictionaries installed or enabled, Yomitan will warn you that it is not ready for use by displaying an orange exclamation mark over its icon. This exclamation mark will disappear once you have installed and enabled at least one dictionary. - - custom dictionaries list - -3. Webpage text can be scanned by moving the cursor while holding a modifier key, which is Shift by default. If definitions are found for the text at the cursor position, a popup window containing term definitions will open. This window can be dismissed by clicking anywhere outside of it. - - popup with search terms - -4. Click on the loudspeaker icon _speaker_ button to hear the term pronounced by a native speaker. If an audio sample is not available, you will hear a short click instead. For more options, see [Audio Configuration](./docs/audio.md). - -5. Click on individual kanji in the term definition results to view additional information about those characters, including stroke order diagrams, readings, meanings, and other useful data. - - popup with kanji details - -To further enhance your Yomitan experience, it's worth [integrating with Anki](./docs/anki-integration.md), a spaced-repetition flashcard program to help solidify the words you encounter. - -## Changes - -> While we have made some substantial changes, the majority of the extension's functionality is thanks to hard work of [FooSoft](https://foosoft.net/) and many other incredible open source contributors from 2016-2023. - -Major changes: - -- ๐ŸŒ Added multi-language support! -- ๐Ÿ’ช Completed the Manifest V2 โ†’ V3 transition, [read why here](https://developer.chrome.com/blog/resuming-the-transition-to-mv3/). -- โšก Switched to using ECMAScript modules and npm-sourced dependencies. -- ๐Ÿ”ง Implemented an end-to-end CI/CD pipeline. -- ๐Ÿงช Switched to standard testing frameworks, vitest and playwrights. - -In addition, we have made important bug fixes and minor enhancements: - -- โšก Improved dictionary import speeds by 2x~10x. -- ๐Ÿ“š Added functionality to import/export multiple dictionaries, enabling portability across devices. -- โœจ And [more](https://github.com/themoeway/yomitan/pulls?q=is%3Apr+is%3Amerged+-label%3Aarea%2Fdependencies+-label%3Akind%2Fmeta). - -Since the owner requested forks be uniquely named, we have chosen a new name, _Yomitan_ (_-tan_ is an honorific used for anthropomorphic moe characters). - -## Contributing - -๐Ÿš€ **Dip your toes into contributing by looking at issues with the label [good-first-issue](https://github.com/themoeway/yomitan/issues?q=is%3Aopen+is%3Aissue+label%3Agood-first-issue).** - -Since this is a distributed effort, we **highly welcome new contributors**! Feel free to browse the [issue tracker](https://github.com/themoeway/yomitan/issues), and read our [contributing guidelines](./CONTRIBUTING.md). - -Here are some ways anyone can help: - -- Try using the Yomitan dev build. Not only do you get cutting edge features, but you can help uncover bugs and give feedback to developers early on. -- Document any UI/UX friction in Github Issues. We're looking to make Yomitan more accessible to non-technical users. -- All the issues in `area/bug` older than 2 months need help reproducing. If anything interests you, please try to reproduce it and report your results. We can't easily tell if these issues are one-off, have since been resolved, or are no longer relevant. - -> The current active maintainers of Yomitan spend a lot of their time debugging and triaging issues. When someone files a bug report, we need to assess the frequency and severity of the bug. It is extremely helpful if we get multiple reports of people who experience a bug or people who can contribute additional detail to an existing bug report. - -If you're looking to code, please let us know what you plan on working on before submitting a Pull Request. This gives the core maintainers an opportunity to provide feedback early on before you dive too deep. You can do this by opening a Github Issue with the proposal. - -Some contributions we always appreciate: - -- Well-written tests covering different functionalities. This includes [playwright tests](https://github.com/themoeway/yomitan/tree/master/test/playwright), [benchmark tests](https://github.com/themoeway/yomitan/tree/master/benches), and unit tests. -- Increasing our type coverage. -- More and better documentation! - -Information on how to setup and build the codebase can be found [here](./CONTRIBUTING.md#setup). - -If you want to add or improve support for a language, read the documentation on [language features](./docs/development/language-features.md). - -Feel free to join us on [TheMoeWay Discord ๐Ÿ‡](https://discord.gg/UGNPMDE7zC) at [#yomitan-development](https://discord.com/channels/617136488840429598/1081538711742844980). - -## Third-Party Libraries - -Yomitan uses several third-party libraries to function. - - - -| Name | Installed version | License type | Link | -| :------------------ | :---------------- | :----------- | :----------------------------------------------- | -| @zip.js/zip.js | 2.7.32 | BSD-3-Clause | git+https://github.com/gildas-lormeau/zip.js.git | -| dexie | 3.2.4 | Apache-2.0 | git+https://github.com/dfahlander/Dexie.js.git | -| dexie-export-import | 4.0.7 | Apache-2.0 | git+https://github.com/dexie/Dexie.js.git | -| yomitan-handlebars | 1.0.0 | MIT | n/a | -| parse5 | 7.1.2 | MIT | git://github.com/inikulin/parse5.git | -| wanakana | 5.3.1 | MIT | git+ssh://git@github.com/WaniKani/WanaKana.git | -| hangul.js | 0.2.6 | MIT | git+https://github.com/e-/Hangul.js.git | +!!! note "Yomitan Features" + Yomitan provides `powerful features` not available in other browser-based dictionaries: + + === "Popup" + - :speech_balloon: Interactive popup definition window for displaying search results. + === "Audio" + - :loud_sound: Built-in native pronunciation audio with the ability to add your own [custom audio sources](./docs/audio.md). + === "Stroke Order" + - :writing_hand: Kanji stroke order diagrams are just a click away. + === "Anki" + - :pencil: [Automatic flashcard creation](./docs/anki-integration.md#anki-integration) for the [Anki](https://apps.ankiweb.net/) flashcard program via the [AnkiConnect](https://foosoft.net/projects/anki-connect) plugin. + === "Search" + - :mag: Custom search page for easily executing custom search queries. + === "Dictionaries" + - :book: Support for multiple dictionary formats including [EPWING](https://ja.wikipedia.org/wiki/EPWING) via the [Yomitan Import](https://github.com/themoeway/yomitan-import) tool. + === "Contribute" + - :sparkles: Clean, modern code makes it easy for developers to [contribute](#contributing) new features and languages. + +=== "Yomitan Popup" + === "Term" + ![Term definitions](assets/ss/terms.png) + === "Kanji" + ![Kanji information](assets/ss/kanji.png) +=== "Yomitan Settings" + === "Dictionary" + ![Dictionary options](assets/ss/dictionaries.png) + === "Anki" + ![Anki options](assets/ss/anki.png) + +[Get started](getting-started/index.md){ .md-button .md-button } \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 0875d99..7a5bb34 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,11 +1,15 @@ site_name: Yomitan -site_url: https://themoeway.github.io/yomitan-wiki/ +site_url: https://yomitan.wiki/ site_description: Japanese pop-up dictionary browser extension site_author: Yomitan Authors repo_url: https://github.com/themoeway/yomitan repo_name: Yomitan nav: - - Home: 'index.md' + - Home: + - Introduction: 'index.md' + - Changes: 'change-log.md' + - Contributing: 'contributing.md' + - Getting started: 'getting-started/index.md' - Dictionaries: - Using dictionaries: 'dictionaries/index.md' - Making yomitan dictionaries: 'dictionaries/making-yomitan-dictionaries.md' @@ -27,8 +31,8 @@ nav: - NPM Scripts: 'contributing/npm-scripts.md' theme: name: material - favicon: assets/yomitan-icon64.png - logo: assets/yomitan-icon128.png + favicon: assets/icon/yomitan-icon64.png + logo: assets/icon/yomitan-icon128.png icon: repo: fontawesome/brands/github features: @@ -60,17 +64,40 @@ theme: accent: indigo extra: - homepage: https://themoeway.github.io/yomitan-wiki/ + social: + - icon: fontawesome/brands/github + link: https://github.com/themoeway/yomitan + - icon: fontawesome/brands/discord + link: https://discord.gg/tmw + homepage: https://yomitan.wiki/ generator: false markdown_extensions: + - admonition + - attr_list + - def_list + - footnotes + - md_in_html + - pymdownx.arithmatex: + generic: true + - pymdownx.caret + - pymdownx.critic + - pymdownx.details - pymdownx.highlight: anchor_linenums: true line_spans: __span pygments_lang_class: true - pymdownx.inlinehilite + - pymdownx.keys + - pymdownx.mark - pymdownx.snippets - pymdownx.superfences + - pymdownx.tabbed: + alternate_style: true + - pymdownx.tilde + - pymdownx.emoji: + emoji_index: !!python/name:material.extensions.emoji.twemoji + emoji_generator: !!python/name:material.extensions.emoji.to_svg plugins: - git-revision-date-localized