====================================================================================
THIS PROJECT IS NO LONGER MAINTAINED. THIS REPOSITORY IS AN ARCHIVE FOR EDUCATIONAL PURPOSES ONLY.
====================================================================================
Jiffy Reader
A Browser Extension for Faster Reading on ANY website!
![Jiffy Reader - Read anything on the internet faster and more clearly | Product Hunt](https://api.producthunt.com/widgets/embed-image/v1/top-post-badge.svg?post_id=347823&theme=light&period=daily)
![Jiffy Reader - Read anything on the internet faster and more clearly! | Product Hunt](https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=347823&theme=light)
![Buy Me A Coffee](https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png)
How it works
Below is a screenshot demonstrating how the extension works by bolding out the initial parts of all text on any page when clicked. There are toggles and sliders to customize it to your preference so you can enjoy your time reading. You must agree this is awesome right?
![Screenshot from 2022-05-29 19-13-02](https://user-images.githubusercontent.com/20851930/170895288-992e802f-4f64-4134-97cc-5144685ecb9e.png)
The best way to install this extension is to follow the instructions below.
Table of Contents
Installation Instructions
Chrome
Download via Chrome Store or follow the instructions below
- Click here to download the latest
jiffyReader-chrome.zip
release
- Extract the file
- Open Chrome
- Enter
chrome://extensions
in the address bar
- Enable
developer mode
with the toggle on the top right side of the page if it is not enabled already
- Click
load unpacked
on the left side of the page
- Find and select the extracted folder, this extension should now be installed
- To pin the extension, click the
puzzle icon
on the top right of Chrome, then pin the extension
.
- The extensions default reading mode is set to off when installed
- See the faq section on how to use the extension, customize it (global and per site settings) and excluding sites from
always on
The Chrome version includes support for mellowtel.dev, an open-source library to support the development of free browser extensions.
Firefox
Download via the Mozilla Firefox Plugin/Add-on Store or follow the instructions below
- Download
jiffyReader-firefox.xpi
by right clicking here and choose Save link as
to download the latest jiffyReader-firefox.xpi
release
- Open Firefox
- Enter
about:debugging#/runtime/this-firefox
in the address bar
- Click
Load Temporary Add-on...
and navigate to the path of the downloaded jiffyReader-firefox.xpi
and select it to install it
- The extensions default reading mode is set to off when installed
- See the faq section on how to use the extension, customize it (global and per site settings) and excluding sites from
always on
Firefox will remove the extension when the browser is closed if the extension is not downloaded from the store.
Safari
Download via the App Store here or TestFlight here. This works for both macOS and iOS. We are working on getting it approved to download directly via the App Store. If you want to build the app yourself, follow the instructions below
- We will be converting the web extension for Safari usage. This will require a macOS computer and the latest version of XCode installed.
- Use
git clone
to clone the Jiffy Reader repo locally.
- Run
pnpm build:xcode
or pnpm build:xcode:all
to convert the extension.
- Open the Safari app on your Mac and make sure to click
Develop
->
Allow Unsigned Extensions
in the top menu bar.
- Open the project in XCode and click run!
Firefox Nightly / Fennec F-droid / Mull (Android)
- Go to settings
- Scroll to the bottom and select
About {browser name}
- Tap the browser logo five times
- Go back to settings and in the Advanced section, select
Custom Add-on collection
- Type
17432789
as the collection owner (user ID)
- Type
jiffyreader
as the collection name. The browser will close to apply the settings.
- Go to Add-ons/Add-ons manager to install the add-on.
For convenience you may want to enable the extension by default by clicking on the Turn On Always
button in the add-on's menu.
Opera
- Download: Click here to download the latest
jiffyReader-opera.crx
release
- Extract the file
- Open Opera
- Enter
opera://extensions
in the address bar
- Enable
developer mode
with the toggle on the top right side of the page if it is not enabled already
- Click
load unpacked
on the left side of the page
- Find and select the extracted folder, this extension should now be installed and listed on the screen
- To pin the extension, click the
cube icon
on the top right of Chrome, then pin the extension
.
- The extensions default reading mode is set to off when installed
- See the faq section on how to use the extension, customize it (global and per site settings) and excluding sites from
always on
Edge
- Please follow the steps for chrome above
Android (kiwi Browser)
- Download the kiwi browser if you do not already have it installed
- Open kiwi browser
- Navigate to the extension listing on Chrome Store and
- Click the
Add to Chrome
button to install the extension
- The extensions default reading mode is set to off when installed
- See the faq section on how to use the extension, customize it (global and per site settings) and excluding sites from
always on
Bookmarklet
(Note: Bookmarklet is not in active support and may break when new updates are released)
- To install the bookmarklet, head over to this link
First Installation Welcome
- Thank you for installing JiffyReader.
- Read the 8 points below which will help you the most in getting you started with JiffyReader
Notes on the extension
- Why did the browser open this page? because this is the first time you installed JiffyReader.
- The extension is on the default settings and optimal for most websites.
- Changes to settings are saved instantly and can be restored to the default optimal settings by clicking the
Reset Settings
button at the bottom of the extension.
- If confused on how to use the buttons and sliders check out the section on what are the functions of the buttons and sliders.
Notes on this page
- You can find important resources such as the FAQ section, how to contribute and how to report issues on this page.
- You can always get to this page by clicking the FAQ link in the footer of the extension popup.
- For further help, check the table of contents or open an issue ticket using the links at the very top of this page.
- You can close this page and return at anytime to find more help or clarification.
FAQ
How to access the extension settings/popup ui
Desktop
- Click on the (on chrome:
puzzle icon
| on edge puzzle icon
| on opera cube icon
| on brave puzzle icon
)
- Note: Firefox will auto pin the extension
- Click on the pin icon next to jiffy reader to pin it next the address bar
- Click on the pinned icon to access the settings/popup menu
Android (kiwi browser)
- Click on the
more (3 vertical dots)
button and scroll down
- Click on
Jiffy Reader
to open the settings/popup ui
What are the functions of the buttons and sliders
Global preferences button
- clicking this button enters global mode where your preferences are saved and applied to all other sites when you open them afterwards
Site preferences button
- Clicking this buttons activates and saves preferences only for the site you are presently on.
- Any changes you make with the other buttons and sliders persist for only this site.
Enable reading mode button
- Click this button to turn on/off the emphasis (bionification) of the text on the page.
- Press
ALT + B
on chrome and ALT + W
on firefox to achieve the same effect as clicking this button on chrome. see the shortcut-section for more info.
Saccades interval slider
- Use this slider to set how many words are left untouched/unbolded or un-emphasized after the first emphasized word or the first word.
- 0 means there will not be a single or any untouched words, all words are emphasized.
- 1 means exactly 1 word is left untouched before the next successive emphasized word.
- 2 means 2 words are left untouched so does 3 and 4.
Fixation strength slider
- Use this to control how much or how little of each word is emphasized you your liking .
Fixation edge opacity
- Use this to control how faint(weakly visible) or strongly visible you want the edge(un-emphasized) part of words to appear.
Saccades colors
- Use this to select a means of creating emphasis using colors.
Saccades styles
- Use this to select a means of creating emphasis using bold variations or underline variations.
Line height buttons
- Use these buttons to increase or decrease line height to strain and improve the comfort of reading.
Always on/off button
- Use this button to controls the default behavior which is if words on pages are or aren't emphasized when loaded by default.
Reset Defaults
- Resets preferences of the currently engaged preference mode.
PDF and Epub support
Google Play Books Native (Epub)
- This extension works with google play books
- Open or navigate to google play books
- Click on any book in your library to read it and turn on the extension if not on already
- You can search for new books (paid or free) and add to your library to start reading
Upload Epubs to Google PlayBooks (Epubs)
- Upload your Epub ebooks to Google Play Books reads to be able to read it with JiffyReader.
- Open google play books
- Click the upload button
- Select your epub file to complete the upload
- Click on the uploaded file to open it in the Google Play Books web reader. Have fun.
PFD Support (convert pdf files to epub or html)
- Open cloud convert to
- Upload your pdf file
- Select your output format (html or epub)
- Click convert to start the process
- Click download
- Open your downloaded html file in your browser and turn on JiffyReader
Google Docs support (publish method)
- Open the google docs document in your browser
- Click File > click share > click publish to web
- Click publish and copy the published link. Alternatively you can replace
edit
in the address bar with pub
to access the published document
- Open the published link in a new tab and turn on JiffyReader
- Note: the document will be accessible to anyone on the internet as long as they have the correct link.
If you want do not want to publish the document to the web then please follow the alternative steps in Google Docs support (download method)
Google Docs support (html download method)
- Click on File > click download
- Download the document as an html (preferred) or epub optional Google Play Books Native (Epub)
- Open the downloaded html with your browser and turn on JiffyReader
Enable file url permissions (chrome html)
- (Chrome) Enable JiffyReader to work with tabs that have file urls by right clicking on the JiffyReader icon
- Click manage extension
- Find and enable work with file urls
Customizations
Shortcut
Alt+B
is the default toggle shortcut to turn on or off
the extension
- If preferred you may customize the extension shortcut with the help of the resources below
- Chrome, Firefox and Edge
- Opera: open the extension management tab and click the
Keyboard shortcuts
link to access the page for customizing opera shortcuts
What is Faster Reading?
This extension provides faster reading through facilitating the reading process by bolding half the words.
As a result, the reader is only focusing on the bolded initial letters and lets the brain autocomplete the words. This allows you to read faster.
Reporting Issues, bugs and feature request
Visit the issues page to report, bugs or tell us about a feature you would like to see and hopefully we will get to you.
Kindly allow for some time after submitting a issue for someone to get back to you.
You can also see a list of open issues that you may contribute to by commenting to help out someone with a challenge or developing and opening a PR. See contribution section
How to Contribute
Anyone is welcome to provide contributions to this project by submitting a PR (Pull Request) and it will be happily merged to provide features and fixes to the incredible people using the extension.
Help with Translations
JiffyReader is in need of translation help for what ever language you can.
To help:
- Please check that the language you would like to help with has not already been taken up by someone else by looking through both the open and closed tickets for translations.
- Open a issue ticket and add the
translation
label to it along with the name of the language you want to translate. Use this shortcut link to open a new ticket
- Copy either the english locale json click here or spanish local json click here translate into the language you can assist with using your preferred editor or even ms word.
-
Indicate the language you would like to help translate in the ticket title. This helps to eliminate duplicate work.
- Attach any questions or updates to the ticket you are working on and someone will try and get to them within a day or two.
Working with the translation files.
The translation files are json formats. You only need to worry about translating the text associated with the message key.
<!-- example -->
"exampleText":{
"message": "this is the text to translate",
"description": "it is not required to translate this text"
}
- result after translation into spanish
"exampleText":{
"message": "esto es el texto a traducir",
"description": "it is not required to translate this text"
}
Submitting your translations
- You can email the translated file or paste the entire translation as a new comment in the ticket you opened and we will take it from there.
- Don't forget to indicate your name for attribution.
Supported languages
- English: by JiffyReader maintainer
- Spanish: by JiffyReader maintainer
-
Others coming soon: contributor name
JiffyReader has been updated to support displaying information in multiple languages thanks to a strong interest and constant emails and enquiries about it.
We have implemented the required mechanisms to support displaying the extension in the language of your choice. The challenge we have now is to get as many translations as possible.
Development
- Clone the project
- Open in VS Code or your favorite editor
- Run
yarn
or npm i
to install dependencies
- Install pnpm if you don't already have it, use
npm i -g pnpm
- Run
pnpm dev:chrome
or pnpm run dev:chrome
to build the development version. Substitute chrome for firefox if that is your preferred browser.
- Follow the installation version for your preferred browser but navigate to the
projectRootFolder/build/
and choose the folder that corresponds with your browser.
Configure vscode to run the project when it is opened
- Copy
.vscode/tasks.json.example
to .vscode/tasks.json
or enter cp .vscode/tasks.json.example .vscode/tasks.json
in the terminal from the project root
- Open
vs code command pallet
- Type and select
Tasks: Manage Automatic Tasks in Folder
- Click
Allow Automatic Tasks in Folder
.
- Reload VS code.
Release a new version
- Change
version
in package.json
, eg. "version": "1.0.0"
- Push a new tag to GitHub, eg.
git tag 1.0.0 && git push --tags
- The Workflow should be running here
- Check the release version here and edit release notes.