Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mirryi/wikichan
A WebExtension and userscript that displays information from Wikipedia and other sources in a popup for the hovered text.
https://github.com/mirryi/wikichan
addon dictionary greasemonkey popup userscript webextension wikipedia
Last synced: 4 days ago
JSON representation
A WebExtension and userscript that displays information from Wikipedia and other sources in a popup for the hovered text.
- Host: GitHub
- URL: https://github.com/mirryi/wikichan
- Owner: mirryi
- License: gpl-3.0
- Created: 2020-12-04T14:40:48.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2023-02-05T03:33:00.000Z (almost 2 years ago)
- Last Synced: 2023-03-06T21:22:00.917Z (almost 2 years ago)
- Topics: addon, dictionary, greasemonkey, popup, userscript, webextension, wikipedia
- Language: TypeScript
- Homepage:
- Size: 2.65 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Wikichan
**Wikichan** is a WebExtensions addon and userscript that displays a popup with
information from Wikipedia and other sources.## Features
- Wikipedia article summary source
- English dictionary source via OwlBot
- Search bar to manually query providers
- Open links to source pagesSee [To-Do](#to-do) for upcoming features.
## Usage
While holding the `ctrl` key, click on a word in any webpage. A popup will
appear with information for that word and groups of words around it.## Installation
Automated release builds and addon store entries coming soon.
Clone and build from source for your platform.
git clone --recurse-submodules https://github.com/Dophin2009/wikichan
cd wikichan
yarn installIf you want to enable the OwlBot provider, [create an OwlBot API
key](https://owlbot.info/) and create a `.env` file:OWLBOT_TOKEN=
### Greasemonkey Userscript
The userscript has been tested on Tampermonkey. It **does not work on
Greasemonkey**.Build the script and copy:
yarn build:ujs # builds to dist/ujs/wikichan.user.js
#### For Qutebrowser
Until qutebrowser has better Greasemonkey support ([see
\#3238](https://github.com/qutebrowser/qutebrowser/issues/3238)), persistent
cross-domain storage is accomplished via a tiny server with an SQLite database.Build the script and copy files:
yarn build:qutebrowser # builds to dist/qutebrowser/
You will need to start the server when you start up qutebrowser.
### Firefox Addon
Build and sign the addon:
yarn build:firefox # builds to dist/firefox
cd dist/firefox
yarn web-ext sign --api-key --api-secret### Chrome Extension
Build the extension:
yarn build:chrome # builds to dist/chrome
### With Docker
Pass in the desired target value:
DOCKER_BUILDKIT=1 docker build --build-arg TARGET= --output dist .
## Contributing
### To-Do
Current work is being done on the `rearch` branch.
- [x] Manifest and build WebExtension
- [x] Cache results (per provider)
- [ ] More provider choices
- [x] English dictionary provider
- [ ] Any language Wikipedia
- [ ] Other language dictionary
- [ ] Settings menu
- [ ] Use library for certain cache/storage backends
- [x] Cross-domain cache and settings in qutebrowser
- [ ] Input API tokens instead of at compile-time
- [ ] Enable/disable providers
- [ ] Dark/light themes (migrate to styled components?)
- [ ] Option to select by character
- [ ] Per-domain settings
- [ ] Tabs to show results from individual providers
- [ ] Automated release builds
- [ ] Testing
- [ ] i18n
- [ ] Legacy extension support## Credits
This project was inspired heavily by the extension
[Yomichan](https://foosoft.net/projects/yomichan), a Japanese-learning tool.Created originally for Conestoga High School's 2018 CodeFest.
## License
This project is licensed under the GNU Public License v3. See [LICENSE](LICENSE)
for more details.