Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A web extension for royalroad.com. To refresh your memory if you juggle multiple stories.

License

NotificationsYou must be signed in to change notification settings

Seismix/royalrefresh

Repository files navigation

RoyalRefresh Logo

RoyalRefresh

A web extension forroyalroad.com.
For people who juggle multiple stories.

Install

Install Firefox Add-onInstall from Chrome Web StoreInstall for Edge from Chrome Web StoreInstall for Opera from Chrome Web Store

Why?

I've been an avid reader onroyalroad.com since 2019 and like many others, I jugglemultiple stories at the same time. At some point this got somewhat unmanageable and often I drew a blank when thinkingabout what happened in the last chapter of the story I just opened. More and more I found myself having to go back onechapter and scroll all the way down just to re-read the last few paragraphs as a refresher. This is especially annoyingwhile on mobile, where I often read while on the train.

That's when decided on trying to implement this little idea implementing a refresh of what happened in the last chapter.

What is it?

RoyalRefresh is a browser extension forroyalroad.com that inserts a button next to RoyalRoad's"Reader Preferences" button on chapter URLs. When clicked, the last few paragraphs of the previous chapter get fetchedand displayed at the top of the chapter, which you can toggle on and off using the button. The extension defaults toshowing you the last 250 words of the previous chapter (adjustable in extension settings,see Settings).

Here's an example of what it looks like:

Refresh example

Settings

The extension comes with a settings page where you can adjust the refresh length and other settings.There are a few ways to access the settings page:

  1. Click the extension icon in the browser toolbar to open the popup (Recommended)
  2. Open RoyalRoad's "Reader Preferences" menu and click "Open RoyalRefresh settings"
  3. Depending on your browser, there may be alternative methods to access the extension settings,(such as usingabout:addons in Firefox)
Basic Settings popup

Settings page

Advanced users can change CSS selectors in the settings if the site design changes, until a new extension update is pushed.

Note

Advanced settings for CSS selectors are only available in the full extension settings page, not in the popup. Use thepopup to quickly access basic settings, but open the full settings page for advanced configuration.

Advanced settings

Advanced settings

Tech Stack

This extension is built using:

  • WXT: A framework for building web extensions with a modern development experience.
  • Svelte 5: A reactive component framework for building the user interface.

Bug reports & Ideas

Check out everything I'm tracking in this project'sissues.

This is my first public repo, for now and until changes are needed, just create a issue with an appropriate label and adescriptive message and I will take a look. Any contributions are welcome, issues where I specifically need help aremarked with thecontributions welcome label.

Contributing

Prerequisites

  • Node.js (version 18 or higher)
  • pnpm (package manager)

Installation

Clone the repository and install dependencies:

git clone https://github.com/Seismix/royalrefresh.gitcd royalrefreshpnpm install

Development

To start the development server for Chrome (default):

pnpm dev

To start the development server for Firefox:

pnpm dev:firefox

This builds the Firefox version and runs it on a connected Android device. Make sure ADB is installed, your device isconnected with USB debugging enabled, and set theADB_ID variable to your device ID (found viaadb devices).

pnpm dev:android<device-id>

Building

To build the extension for chromium browsers:

pnpm build

To build specifically for Firefox:

pnpm build:firefox

Browser Configuration

You can configure browser startup options usingweb-ext.config.ts files. For more information, see WXT'sBrowser Startup documentation.

For example, to set custom browser binaries or startup URLs, create aweb-ext.config.ts file:

import{defineWebExtConfig}from'wxt';exportdefaultdefineWebExtConfig({startUrl:["https://www.royalroad.com/","about:addons"],binaries:{firefox:'firefoxdeveloperedition',},});

For a full list of options, see theweb-ext command reference.

About

A web extension for royalroad.com. To refresh your memory if you juggle multiple stories.

Topics

Resources

License

Stars

Watchers

Forks

Contributors2

  •  
  •  

[8]ページ先頭

©2009-2025 Movatter.jp