All Projects → tophf → autopagerize

tophf / autopagerize

Licence: GPL-3.0 license
Infiniscroll on web pages using a large database of rules. A fully reworked fork of the original extension.

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to autopagerize

Page
Use neovim as pager
Stars: ✭ 83 (+50.91%)
Mutual labels:  pager
Peep
The CLI text viewer tool that works like less command on small pane within the terminal window.
Stars: ✭ 139 (+152.73%)
Mutual labels:  pager
Swiftpagemenu
Customizable Page Tab Menu Controller 👍
Stars: ✭ 233 (+323.64%)
Mutual labels:  pager
Typagercontroller
page scroll view and controller,simple,high custom,and have many tabBar styles,,support Objective-C and swift
Stars: ✭ 1,335 (+2327.27%)
Mutual labels:  pager
Shviewpager
A simple view pager for iOS. Compatible with iOS 8.0 or later.
Stars: ✭ 127 (+130.91%)
Mutual labels:  pager
Pagermon
Multimon-ng pager message parser and viewer
Stars: ✭ 154 (+180%)
Mutual labels:  pager
Dotnetpaging
Data paging with ASP.NET and ASP.NET Core
Stars: ✭ 70 (+27.27%)
Mutual labels:  pager
Chipagecontrol
A set of cool animated page controls written in Swift to replace boring UIPageControl. Mady by @ChiliLabs - https://chililabs.io
Stars: ✭ 2,909 (+5189.09%)
Mutual labels:  pager
Nvimpager
Use nvim as a pager to view manpages, diffs, etc with nvim's syntax highlighting
Stars: ✭ 131 (+138.18%)
Mutual labels:  pager
Tablesorter
Github fork of Christian Bach's tablesorter plugin + awesomeness ~
Stars: ✭ 2,532 (+4503.64%)
Mutual labels:  pager
Tycyclepagerview
a simple and usefull cycle pager view ,and auto scroll banner view(轮播图) ,include pageControl for iOS,support Objective-C and swift
Stars: ✭ 1,548 (+2714.55%)
Mutual labels:  pager
Lessmd
A small markdown viewer/converter for unix terminal.
Stars: ✭ 122 (+121.82%)
Mutual labels:  pager
Pagestatemanager
manage the loading,emtpy,error state of page, use in xml or just in code
Stars: ✭ 173 (+214.55%)
Mutual labels:  pager
Tsl Sdr
Software Defined Radio Demodulation and Decoding Tools
Stars: ✭ 94 (+70.91%)
Mutual labels:  pager
Jxpagecontrol
🚀🚀🚀 自定义pageControl指示器, 支持多种动画, 自定义布局.
Stars: ✭ 246 (+347.27%)
Mutual labels:  pager
Pager
*DEPRECATED* React <Pager> component (stateless).
Stars: ✭ 75 (+36.36%)
Mutual labels:  pager
Aspnetcore
ASP.NET Core Extension Library
Stars: ✭ 152 (+176.36%)
Mutual labels:  pager
spotify-song-recommender
A Spotify song recommendation engine built with the power of graph analytics.
Stars: ✭ 34 (-38.18%)
Mutual labels:  pager
Pagerbeauty
📟✨ PagerDuty on-call widget for monitoring dashboard. Datadog and Grafana compatible
Stars: ✭ 250 (+354.55%)
Mutual labels:  pager
Csview
📠 A high performance csv viewer with cjk/emoji support.
Stars: ✭ 208 (+278.18%)
Mutual labels:  pager

A fork of Autopagerize for Chrome

Fully reworked to reduce memory consumption and increase performance:

  • the background page now auto-unloads when inactive
  • the content script is added to a web page only if its URL has a matching rule
  • the content script unregisters all of its listeners when there are no more pages to load according to the paging rules - and thus it gets removed by the garbage collector (several megabytes per each tab)
  • when disabling the extension via the On/Off command all content scripts are fully unloaded
  • the URL matching regexps are cached upon each run of the background page so subsequent checks during the run are almost 100 times faster and take just a few milliseconds (the background page unloads after approximately five seconds of no navigation activity)
  • IndexedDB is used to store the data objects directly whereas the previously used localStorage serialized them into a string
  • Simple one-time messaging and in-place code execution is used when needed instead of the persistent communication ports that were created for all the browser tabs

Differences to the original:

  • Generic rules are disabled by default and can be re-enabled per site/pattern (a * pattern that matches all sites may be used to restore the old behavior) in the options or the popup. This is because these rules (currently there are three) seem to be useless as the popular sites all have a custom rule, while breaking the page layout on less popular sites a bit too often.
  • Exclusions are matched to the full URL now unless there's a * at the end. The original extension has been incorrectly treating all non-regexp URLs as prefixes.
    • http://foo.com/bar - this exact URL
    • http://foo.com/bar* - URLs that start with http://foo.com/bar
    • *.foo.com/bar - URLs that end in foo.com/bar
    • *://*.foo.com/bar* - URLs that contain foo.com/bar anywhere

New features:

  • Configurable hotkeys chrome://extensions/shortcuts:
    • On/Off switch
    • Show the popup
    • Load 1,2,5,10 more pages - four separate commands
  • On/Off command in the context menu of the extension icon in the browser toolbar

popup popup-dark

New features in popup:

  • Load 1-100 more pages
  • Exclude current page URL/prefix/domain
  • Enable generic rules for current page URL/prefix/domain

New options:

  • Custom rules
  • Ability to start the database update manually
  • Customizable internal parameters
  • Import/export

options-dark

Permissions:

  • wedata.net - used to update the database of pagination rules from http://wedata.net/databases/AutoPagerize/items_all.json which is stripped of everything except XPath selectors for the page elements and RegExp for the page URL
  • <all_urls> - required to paginate while you browse according to the database of rules (technically, to find the "next page" and "page body" elements)
  • webNavigation - to schedule a pagination check when you navigate to a new URL
  • contextMenus - to add an "On/off" item to the context menu of the extension icon in the browser toolbar
  • storage - to store the options of the extension
  • tabs - most notably to restart the paging functionality on extension update, also to notify the tabs that match the URL that you've just manually excluded in the popup

How to limit the site permissions

Chrome allows you to easily limit the extension so it can access only a few sites:

  1. right-click the extension icon in the toolbar (or browser menu) and click "Manage" - it'll open chrome://extensions details page for this extension
  2. click "On specific sites"
  3. enter the URL you want to allow
  4. to add more sites click "Add a new page"
  5. add http://wedata.net to keep the database of rules up-to-date.

limit UI

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].