Mam Plus Save

Tweaks & functionality for MAM

Project README

MAM+

GitHub tag (latest SemVer)

No it's not some elite club. It's just a simple set of features, tweaks, and occasional bug fixes that modifies (and hopefully enhances) your MAM experience. Very occasionally it might break your MAM experience, but we try to keep those incidents to a minimum... Nearly every feature can be enabled or disabled separately, and only one is enabled by default, meaning you can stick with a near-Vanilla experience if you so desire.

Don't know what MAM is? This script won't be very useful to you then.

Installation

Install Button

You need to have a userscript browser extension (like Violentmonkey or similar) installed in order to use MAM+. Greasemonkey is NOT recommended as it no longer follows the Userscript API standards it once set (and that MAM+ currently uses).

MAM+ only officially supports the most recent versions of Chrome & Firefox, but other modern browsers with userscript support should theoretically work. That said, you'll probably have lots of issues if you use Safari, Firefox offshoots (Waterfox, Basilisk, etc.), or older Edge versions.

Modification & Contribution

In case you want to modify the script and/or contribute to it, follow the below instructions. These instructions are for Chrome using Violentmonkey, as it's the easiest way to test scripts. Additionally, there's some documentation in the Wiki to help you get started with adding new features, so be sure to check that out.

Prerequisites

  • Node.js
  • Google Chrome with Violentmonkey
  • tslint (not currently included because vscode has baked-in linting)

Instructions

First-time setup

  • Make sure the prerequisites are installed on your system
  • Clone this project to your computer
  • Open a terminal window in your project folder, and run npm install
  • On the Chrome extensions page (found at chrome://extensions), ensure that the Violentmonkey extension has access to file URLs

Workflow

This is a Typescript project, but vanilla JavaScript is valid Typescript, so don't let a lack of knowledge of TS keep you from contributing.

To start developing, simply run npm run build. Assuming everything works, this will transpile the Typescript files into a single JavaScript file (in the build/ dir) with a userscript header and inline sourcemaps. Additionally, the userscript will have _dev appended to its name, to differentiate between the developmental version and the release version.

For continuous development, run npm run watch. This task will otherwise retranspile the script every time you save.

Drag the _dev.user.js file into Chrome and install with Violentmonkey. When you are using the Watch task, as long as you keep the userscript installation tab open any changes you save will be automatically loaded in your browser when you reload. Occasionally, Violentmonkey will throw an error when the script is being generated via watch; if this happens, close the script installation page and reinstall the script as previously described.

When you are ready to release your script, use npm version <patch|minor|major> to increment your script. This will output a minified JavaScript file without the _dev suffix and will automatically generate a commit & push to the Github repo.

This project uses git flow so pull requests should not be on the master branch if possible.

Open Source Agenda is not affiliated with "Mam Plus" Project. README Source: gardenshade/mam-plus
Stars
67
Open Issues
60
Last Commit
3 months ago

Open Source Agenda Badge

Open Source Agenda Rating