Git Product home page Git Product logo

homestuck-notifier's People

Contributors

jmtyler avatar

Watchers

 avatar  avatar  avatar

homestuck-notifier's Issues

Track scroll position on current page?

Since many of the pages in the Epilogues are very long, it may not be enough to only track the user's current page in a story. Perhaps we should also track the user's current scroll position in the story, so they can just close the tab whenever they want and clicking the button will return them not just to the page where they left off, but also the scroll position they were at. However, since people tend to scroll around a lot, it might make more sense for it to use the most recent scroll position instead of the lowest scroll position.

Add "reading clubs," allowing me to set reading targets for subscribers.

Add an Experimental/Advanced section to the Options page, where the user can somehow opt-in to a named reading club. This will subscribe them to an FCM topic and allow me to broadcast reading targets to all subscribers.

This should also change their page count badge, showing how many pages they have left until they hit the reading target, instead of how many pages until the end of the story.

This will initially be a very experimental feature, only to be used by myself and my friends. If it works well and seems valuable, someday I might enhance the feature by allowing users to start their own reading clubs.

Replace `is_debug_mode` option with a more powerful `environment` option.

If we replace is_debug_mode with environment, we can have more fine-grained control over when certain features are enabled or disabled.

The first set of environments are planned to be:

  • local - used exclusively for local dev, probably cannot be set via UI
  • production - the default environment for releases
  • staging/debug - the default for beta testers; also available to production users as an advanced option

The environment can control:

  • the base URL of the API
  • the FCM producer to which to subscribe
  • whether or not logs are displayed locally
  • whether or not logs are uploaded to a Heroku server for debug purposes

Add Homestuck2 support

Currently it doesn't seem to send notifications for Homestuck2.com updates as far as I can tell, would be pretty cool to have it included in this extension.

Offline reading mode.

Add a toggle to enable offline reading (and still be able to track progress).

Enabling it should immediately download (and cache) the offline reading archive from readmspa.org. Disabling should immediately delete that archive. This saves space for the user if they don't need it, and also proves we are distributing the official readmspa.org archive.

We should always allow online reading when possible. Only when the user tries to load a comic page and we discover we're offline, should we switch to the local cache. We should also have a template string for the page container (unless the archive includes that already).

Ideally we want the pages to look as close to real as possible.

We should also consider automatically expiring the archive cache if it isn't accessed for a while.

Allow users to edit their current page(s) via the Options page.

It is possible to manually set your current page via the context menu, but it seems most users aren't able to discover that feature organically.

e.g. Context menu of the browser action:
image

e.g. Context menu of the page:
image

We should try to make this feature more discoverable (and limit the number of users who think the extension is buggy or incomplete, and/or work around issues like this by uninstalling and re-installing the extension).

The current idea for improving this feature is simply to add a more manual, text-entry override into the Options page. It's rather inelegant compared to the context menu, but more users are likely to discover it. Perhaps we could also include a note on the Options page informing the user they could do it via context menu instead.

Convert our persistent background script into an event script.

There's absolutely no reason we need to be using a persistent background script, except that it's a slightly non-trivial effort to convert it over. We really should, though. This extension feels like it's an especially valid use-case for event scripts, and leaving it persistent is extremely inefficient. We must respect our users' browsers and their resource consumption!

Console errors when starting / changing tabs

There are console errors if the user creates or updates a tab. It's checking the 'url' property but does not confirm that the property exists first (and in many cases it does not).

Fortunately these are just console errors, and the user sees nothing. Still needs to be fixed though, it just isn't as urgent.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.