Releases: Scriptbash/Wispar
v0.9.0+30
🏞️ An image is worth a thou... an abstract? 💭
- Wispar can now scrape graphical abstracts when available! They will appear as a banner behind the article title. Just tap the banner to open the image!
- Swipe gestures can be customized in Settings > Publication card! You can define actions for left and right swipes on publication cards. The actions are:
- None (disables the action)
- Add to favorites (default right swipe)
- Hide publication (default left swipe)
- Send to Zotero
- Go to website
- Copy
- Share article
- You can also toggle on/off information displayed on the publication cards, the default is all information toggled on
- When a PDF is available through Unpaywall, a dialog window will now show up to ask whether to open the PDF through Unpaywall or go to the website of the article
- The PDF download button in the app bar should now work with Elsevier and Wiley platforms
- An experimental option to store the database files outside of the app container has been added. Please backup your database before turning on that option, the risk of data loss is high!
- A paper count can be added to the feed(s)
What's Changed
- Update dependency lucide-react to ^0.544.0 by @renovate[bot] in #240
- Update dependency swiper to v12 by @renovate[bot] in #244
- Update dependency flutter to v3.35.4 by @renovate[bot] in #245
- Update plugin org.jetbrains.kotlin.android to v2.2.20 by @renovate[bot] in #241
- Translations update from Hosted Weblate by @weblate in #239
- Update dependency swiper to v12.0.2 by @renovate[bot] in #247
- Update Gradle to v9.1.0 by @renovate[bot] in #246
- Update react monorepo to v19.2.0 by @renovate[bot] in #255
- Update dependency typescript to v5.9.3 by @renovate[bot] in #253
- Update docusaurus monorepo to v3.9.1 by @renovate[bot] in #250
- Update dependency flutter to v3.35.5 by @renovate[bot] in #252
- Translations update from Hosted Weblate by @weblate in #254
- Update dependency share_plus to v12 by @renovate[bot] in #243
- Update dependency package_info_plus to v9 by @renovate[bot] in #242
- Add graphical abstracts scraping by @Scriptbash in #256
- Add paper count in feed by @Scriptbash in #257
- Update dependency lucide-react to ^0.545.0 by @renovate[bot] in #258
- Allow storing DB files outside the app container by @Scriptbash in #262
- Add Unpaywall prompt by @Scriptbash in #263
- Customizable publication cards + gestures by @Scriptbash in #265
- Improve PDF download button by @Scriptbash in #266
- Update dependency ruby to v3.4.7 by @renovate[bot] in #261
- Update dependency flutter to v3.35.6 by @renovate[bot] in #260
- Update actions/setup-node action to v6 by @renovate[bot] in #264
- Make journal titles wrap on cards by @Scriptbash in #267
- Update dependency lucide-react to ^0.546.0 by @renovate[bot] in #268
- db cleanup improvements by @Scriptbash in #269
- Translations update from Hosted Weblate by @weblate in #259
Full Changelog: v0.8.0+29...v0.9.0+30
v0.8.0+29
If you have already updated to v0.8.0, there is no need to install this update
- Downgrades AGP to 8.11.1 for F-Droid builds.
v0.8.0 release notes
- The EZproxy handling has been completely reworked:
- Instead of guessing based on error pages, Wispar now lets you decide how to handle proxy links.
- When opening a paper through EZproxy, you’ll see 3 options:
- The proxy is successful (keep using the proxy)
- The proxy fails (remove the proxy and redirect to the raw article link)
- This is a login page (do nothing) --> Use this on your proxy sign-in page
- A new "Known URLs" table keeps track of the proxy behaviour for future access.
- You can also add or edit base URLs manually under "Institutional access" in settings.
- If you have a chatGPT or Gemini API key, you can ask questions about articles inside the PDF viewer
- Not a fan of AI? No problem! You can hide all AI related feature with a single switch in the AI settings
- Speaking of the PDF viewer, settings were added to change the reading orientation and the theme (light, dark, system). It also supports double taps to zoom in/out
- Up to 3 custom translation prompts can be entered in the AI settings.
- Changes to the UI have been made to better accommodate tablets and desktop apps
- Wispar now has desktop apps!... However, only the MacOS version will be available for now. I couldn't test Windows enough yet. As for Linux, a dependency (flutter_inappwebview) is currently preventing its release
- The app user-agent can be customized. If your device is triggering the bot detection of websites, please try that option!
- The app default user-agents have been updated for each platform too
- Large database should no longer crash the app when exporting/importing it
- A website for Wispar has been made and is available here : https://wispar.app
- I haven't finished the documentation yet ...
What's Changed
- Update dependency macos to v14 by @renovate[bot] in #236
- Downgrade AGP to 8.11.1 by @Scriptbash in #238
Full Changelog: v0.8.0+28...v0.8.0+29
v0.8.0+28
A somewhat big update is here!
- The EZproxy handling has been completely reworked:
- Instead of guessing based on error pages, Wispar now lets you decide how to handle proxy links.
- When opening a paper through EZproxy, you’ll see 3 options:
- The proxy is successful (keep using the proxy)
- The proxy fails (remove the proxy and redirect to the raw article link)
- This is a login page (do nothing) --> Use this on your proxy sign-in page
- A new "Known URLs" table keeps track of the proxy behaviour for future access.
- You can also add or edit base URLs manually under "Institutional access" in settings.
- If you have a chatGPT or Gemini API key, you can ask questions about articles inside the PDF viewer
- Not a fan of AI? No problem! You can hide all AI related feature with a single switch in the AI settings
- Speaking of the PDF viewer, settings were added to change the reading orientation and the theme (light, dark, system). It also supports double taps to zoom in/out
- Up to 3 custom translation prompts can be entered in the AI settings.
- Changes to the UI have been made to better accommodate tablets and desktop apps
- Wispar now has desktop apps!... However, only the MacOS version will be available for now. I couldn't test Windows enough yet. As for Linux, a dependency (flutter_inappwebview) is currently preventing its release
- The app user-agent can be customized. If your device is triggering the bot detection of websites, please try that option!
- The app default user-agents have been updated for each platform too
- Large database should no longer crash the app when exporting/importing it
- A website for Wispar has been made and is available here : https://wispar.app
- I haven't finished the documentation yet ...
What's Changed
- Update plugin com.android.application to v8.12.0 by @renovate[bot] in #198
- Add website by @Scriptbash in #206
- Update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.2.10 by @renovate[bot] in #203
- Update dependency flutter to v3.35.1 by @renovate[bot] in #204
- Update actions/checkout action to v5 by @renovate[bot] in #202
- Update dependency typescript to ~5.9.0 by @renovate[bot] in #207
- Update dependency node to v22 by @renovate[bot] in #205
- Translations update from Hosted Weblate by @weblate in #200
- Update actions/setup-java action to v5 by @renovate[bot] in #210
- Update plugin com.android.application to v8.12.1 by @renovate[bot] in #209
- Update dependency flutter to v3.35.2 by @renovate[bot] in #211
- Upgrade to gradle 9 by @Scriptbash in #213
- Update dependency lucide-react to ^0.542.0 by @renovate[bot] in #208
- Update dependency introduction_screen to v4 by @renovate[bot] in #212
- Update app icon by @Scriptbash in #215
- Improve UI for bigger screens by @Scriptbash in #217
- Fix memory overflow on database export/import by @Scriptbash in #218
- Allow overriding user agent by @Scriptbash in #219
- Add desktop apps support by @Scriptbash in #220
- Scrape abstracts from IMS by @Scriptbash in #222
- Translations update from Hosted Weblate by @weblate in #221
- Allow customizing AI temperature by @Scriptbash in #223
- Adds custom prompts for translations by @Scriptbash in #224
- Update dependency @mdx-js/react to v3.1.1 by @renovate[bot] in #216
- Chat with PDF by @Scriptbash in #227
- Update dependency flutter to v3.35.3 by @renovate[bot] in #226
- Update actions/setup-node action to v5 by @renovate[bot] in #225
- Rework EZproxy handling by @Scriptbash in #228
- Improve PDF viewer by @Scriptbash in #229
- Fix another db export crash by @Scriptbash in #230
- Remove deprecated onChanged and groupValue by @Scriptbash in #232
- Fix pdf download button by @Scriptbash in #233
- Translations update from Hosted Weblate by @weblate in #231
- Constrain buttons width in intro screen by @Scriptbash in #234
- Translations update from Hosted Weblate by @weblate in #235
Full Changelog: v0.7.0+27...v0.8.0+28
v0.7.0+27
Is your downloads screen filled with emptiness? 🍃
-
Downloads now work for all major publishers, including Elsevier, Taylor & Francis, Wiley, IEE, etc.! 🥳
-
Both open-access and pay-walled articles (EZproxy required, unless using your institution VPN or network) can be downloaded.
-
Sometimes you may see this little download icon in the app bar when visiting an article's website:

-
Sometimes, publishers don't expose the proper download link on their website and the in app download will fail. In that case, please use the download button manually. For example, Wiley's articles can be downloaded by first tapping their "PDF" button :
. You will then be redirected to their built-in PDF viewer. Once there, you can download the PDF file into Wispar and have it show up in the Downloads screen :

-
-
Article titles and abstracts can now be translated using an AI provider (requires an API key).
-
Publication cards have a swipe gesture that reveals two buttons: 1) Send to Zotero and 2) Hide this publication
-
Happy reading! ✌️
What's Changed
- Translations update from Hosted Weblate by @weblate in #182
- Improve downloads of articles by @Scriptbash in #183
- Update dependency flutter to v3.32.7 by @renovate[bot] in #184
- Translations update from Hosted Weblate by @weblate in #186
- Add AI translations for titles and abstracts by @Scriptbash in #189
- Update pdfrx and add safe areas by @Scriptbash in #190
- Use DOI as pdf name instead of suggested filename by @Scriptbash in #193
- Add swipe gesture to publication cards by @Scriptbash in #194
- Reorder app bar menu items by @Scriptbash in #195
- Update dependency flutter to v3.32.8 by @renovate[bot] in #192
- Translations update from Hosted Weblate by @weblate in #191
- Fix race condition in AI api keys initialization by @Scriptbash in #196
Full Changelog: v0.6.0+26...v0.7.0+27
v0.6.0+26
Create the feed you want!
- You can now create custom feeds! These feeds act like filters, they will not make additional API requests
- The "Copy DOI" button was changed to a generic copy button, offering different items to copy
- The unfollow button on journal cards and the delete button on saved query cards are now hidden behind an "Edit" button
- Added a missing migration for titles and abstracts. If publications contained MathML, they should now be properly rendered
What's Changed
- Update dependency flutter to v3.32.4 by @renovate[bot] in #159
- Translations update from Hosted Weblate by @weblate in #158
- Update dependency flutter to v3.32.5 by @renovate[bot] in #164
- Update plugin com.android.application to v8.11.0 by @renovate[bot] in #163
- Update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.2.0 by @renovate[bot] in #162
- Translations update from Hosted Weblate by @weblate in #160
- Update dependency gradle to v8.14.3 by @renovate[bot] in #165
- Combine sort options dialogs by @Scriptbash in #166
- Update dependency flutter to v3.32.6 by @renovate[bot] in #167
- Translations update from Hosted Weblate by @weblate in #169
- Add customizable feeds by @Scriptbash in #170
- Add edit button in library screen by @Scriptbash in #171
- Change appbar for favorites and downloads by @Scriptbash in #172
- Change options menu by @Scriptbash in #173
- Fix cards content shifting when editing by @Scriptbash in #174
- Fix saved queries logs and null value by @Scriptbash in #175
- Update plugin com.android.application to v8.11.1 by @renovate[bot] in #168
- Translations update from Hosted Weblate by @weblate in #176
- Enable german translations by @Scriptbash in #177
- Add more options to copy button by @Scriptbash in #178
- Migrate abstracts and titles for MathML and Latex rendering by @Scriptbash in #179
- Fix overflow in feed switcher by @Scriptbash in #180
- Translations update from Hosted Weblate by @weblate in #181
Full Changelog: v0.5.0+24...v0.6.0+26
v0.5.0+24
<p>This is a <math xmlns=":www.w3.org/1998/Math/MathML"><msqrt><mi>little</mi></msqrt></math> difficult to <span>(\frac{d}{dx} \left( read^2 \right))</span>.</p>
- That's right, Wispar can now render Latex and basic MathML! It's probably not perfect, so please report problematic publications so that I can adjust the MathML to Latex conversion.
- This update should fix the background service being killed by Android. The service will now check every hour for journals that haven't been updated for at least 3 hours. The notifications should be more reliable. Some devices will still need extra steps, please refer to : https://dontkillmyapp.com/
- A new screen in the settings has been added to view app logs. I will continue to improve logging in the app with future updates.
What's Changed
- Update app_tr.arb by @mikropsoft in #140
- Translations update from Hosted Weblate by @weblate in #141
- Update plugin com.android.application to v8.10.0 by @renovate in #142
- Update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.1.21 by @renovate in #143
- Update flutter and intl by @Scriptbash in #148
- Update dependency gradle to v8.14.1 by @renovate in #147
- Render latex equations by @Scriptbash in #145
- Translations update from Hosted Weblate by @weblate in #151
- Add logging by @Scriptbash in #150
- Update dependency flutter to v3.32.1 by @renovate in #146
- Update plugin com.android.application to v8.10.1 by @renovate in #149
- Update dependency flutter to v3.32.2 by @renovate in #152
- Fix background service by @Scriptbash in #156
- Allow publications with missing journals in feed by @Scriptbash in #157
- Translations update from Hosted Weblate by @weblate in #153
- Update dependency gradle to v8.14.2 by @renovate in #155
Full Changelog: v0.4.1+22...v0.5.0+24
v0.4.1+22
What's Changed
- Fix buttons hidden behind android nav buttons by @Scriptbash in #138
- Fix proxies encoding by @Scriptbash in #139
Full Changelog: v0.4.0+21...v0.4.1+22
v0.4.0+21
🔔 Notifications are here! 🔔
-
Background journal updates and notifications: Wispar now notifies you when new articles are available. A background service checks every 2 hours for journals or saved queries that haven’t been updated in the past 6 hours. If new articles are found, you’ll get a notification.
-
Battery optimization notice:
To ensure the background service works reliably and doesn't get killed, you may need to disable battery optimization for Wispar in your device settings.
On some devices (e.g., Xiaomi, Samsung, Asus, Huawei), additional steps might be required to prevent the system from killing background services. For device-specific instructions, visit: https://dontkillmyapp.com/ -
Not interested in notifications and/or background updates?: You can revoke Wispar's permission to run in the background by going in your devices settings.
-
Hide publications: You can now hide publications from your feed via the options menu on each card. To unhide them, tap the feed options menu (top right) and choose "View hidden publications."
What's Changed
- Add a follow button to journal info screen by @Scriptbash in #119
- Update dependency flutter to v3.29.3 by @renovate in #118
- Translations update from Hosted Weblate by @weblate in #117
- Enable portuguese and chinese translations by @Scriptbash in #124
- Background journals updates and notifications by @Scriptbash in #125
- Update plugin com.android.application to v8.9.2 by @renovate in #121
- Update dependency gradle to v8.14 by @renovate in #123
- Add button to hide publications by @Scriptbash in #127
- Update dependency com.android.tools:desugar_jdk_libs to v2.1.5 by @renovate in #126
- Translations update from Hosted Weblate by @weblate in #128
- Make journal title take more space before wrapping by @Scriptbash in #129
- Translations update from Hosted Weblate by @weblate in #130
- Add last updated to journal cards by @Scriptbash in #131
- Translations update from Hosted Weblate by @weblate in #132
- Translations update from Hosted Weblate by @weblate in #133
- Update dependency share_plus to v11 by @renovate in #122
- Update deprecated share.share call by @Scriptbash in #135
- Fix cards not showing if journal title is empty by @Scriptbash in #136
Full Changelog: v0.3.2+20...v0.4.0+21
v0.3.2+20
⚠️ ‼️ Backup your database‼️ ⚠️
Please backup your database before updating by going in Settings > Database > Export Database
I made many changes to the database to fix issues with the ISSNs. While I tested with several emulators and my phone, there could still be issues that slipped through. With a backup, you can downgrade to the previous version and import your data.
If you are following a journal that is not up to date due to the app using an old ISSN, please unfollow the journal and re-follow it. All its associated ISSNs will be used to fetch articles instead of only one.
With this update, you can also change the app's language by going into Settings > Display > Language
What's Changed
- Refactor ISSN handling by @Scriptbash in #108
- Override locale by @Scriptbash in #110
- Change buttons style by @Scriptbash in #111
- Move from deprecated flutter gen by @Scriptbash in #112
- Translations update from Hosted Weblate by @weblate in #113
- Refresh ISSNs on refollow by @Scriptbash in #114
- Replace existing issns by @Scriptbash in #115
- Accelerate getCachedPublications by @Scriptbash in #116
Full Changelog: v0.3.1+16...v0.3.2+20
v0.3.1+16
What's Changed
- Translations update from Hosted Weblate by @weblate in #98
- Parse doi from url by @Scriptbash in #99
- Fix keywords indexing by @Scriptbash in #100
- Update dependency file_picker to v10 by @renovate in #97
- Translations update from Hosted Weblate by @weblate in #101
- Translations update from Hosted Weblate by @weblate in #102
- batch journals update by @Scriptbash in #103
- Enable japanese translations by @Scriptbash in #104
- Translations update from Hosted Weblate by @weblate in #105
- enable indonesian translations by @Scriptbash in #106
Full Changelog: v0.3.0+15...v0.3.1+16
