diff --git a/.gitignore b/.gitignore index 1d74e21..ab5ac01 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,8 @@ -.vscode/ +_site +.sass-cache +.jekyll-cache +.jekyll-metadata +vendor +.vscode +Gemfile.lock + diff --git a/404.html b/404.html new file mode 100644 index 0000000..7f3c00f --- /dev/null +++ b/404.html @@ -0,0 +1,25 @@ +--- +permalink: /404.html +layout: base +--- + + + +
+

404

+ +

Page not found :(

+

The requested page could not be found.

+
diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..56f6d0e --- /dev/null +++ b/Gemfile @@ -0,0 +1,36 @@ +source "https://rubygems.org" +# Hello! This is where you manage which Jekyll version is used to run. +# When you want to use a different version, change it below, save the +# file and run `bundle install`. Run Jekyll with `bundle exec`, like so: +# +# bundle exec jekyll serve +# +# This will help ensure the proper Jekyll version is running. +# Happy Jekylling! +#gem "jekyll", "~> 4.3.3" +gem "github-pages", "~> 232", group: :jekyll_plugins + +# This is the default theme for new Jekyll sites. You may change this to anything you like. +gem "minima", "~> 2.5" +# If you want to use GitHub Pages, remove the "gem "jekyll"" above and +# uncomment the line below. To upgrade, run `bundle update github-pages`. +# gem "github-pages", group: :jekyll_plugins +# If you have any plugins, put them here! +group :jekyll_plugins do + gem "jekyll-feed", "~> 0.12" +end + +# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem +# and associated library. +platforms :mingw, :x64_mingw, :mswin, :jruby do + gem "tzinfo", ">= 1", "< 3" + gem "tzinfo-data" +end + +# Performance-booster for watching directories on Windows +gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin] + +# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem +# do not have a Java counterpart. +gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby] + diff --git a/README.md b/README.md index 4316bb2..9d89c82 100644 --- a/README.md +++ b/README.md @@ -1,63 +1,90 @@ -# openwebrxplus-plugins -Plugins collection for OpenWebRX+ +--- +layout: page +title: OpenWebRX+ Plugins Home +permalink: / +--- + +OpenWebRX+ Plugin collection. + +There are two types of plugins as of now: + * [Receiver Plugins](#receiver-plugins) + * [Map Plugins](#map-plugins) -My public plugins for OWRX+. Every plugin has it's own documentation. -### receiver plugins -- [antenna_switcher](receiver/antenna_switcher/) - antenna switching functionality for Raspberry Pi devices (LZ2DMV) - - [tune_checkbox](receiver/tune_checkbox/) - make the 'Hold mouse wheel down to tune' setting enabled by default (LZ2DMV) - - [frequency_far_jump](receiver/frequency_far_jump/) - jump to a frequency outside of the current profile, by typing it in the receiver's frequency dial (LZ2DMV) - - [keyboard_shortcuts](receiver/keyboard_shortcuts/) - add keyboard shortcuts to the receiver - - [colorful_spectrum](receiver/colorful_spectrum/) - colorize the spectrum analyzer - - [connect_notify](receiver/connect_notify/) - send/receive notifications on user connect/disconnect - - [sort_profiles](receiver/sort_profiles/) - sort profiles by __NAME__ - - [utils](receiver/utils/) - (this is utility plugin, required by many plugins) - - [notify](receiver/notify/) - (this is utility plugin, required by some plugins) - -### map plugins - - [layer_qth_maidenhead](map/layer_qth_maidenhead/) - add Maidenhead (QTH) grid to the map - -## load plugin -To load a plugin you need to create `init.js` file inside your `openwebrx` installation under `htdocs/plugins/{type}` folder. The `{type}` could be `receiver` or `map` as of the time of writing this info. -This could be one of the following folders or any other folder: - * /opt/openwebrx/htdocs - * /usr/lib/python3/dist-packages/htdocs +Learn how to [install and load the plugins](#load-plugins). -You can find the folder with this command: -`find / -name openwebrx.js` +--- -You need to create/edit the `init.js`. -In the next example we will load `receiver` plugins. -First we need to create the `init.js` file: -```bash -OWRX_FOLDER=$(dirname `find / -name openwebrx.js`) -cd "$OWRX_FOLDER/plugins/receiver" -cp init.js.sample init.js -$EDITOR init.js -``` +### Receiver Plugins -__Use [receiver/init.js.sample](receiver/init.js.sample) or [map/init.js.sample](map/init.js.sample) file as a template.__ +| :------ | :---------- | +|[antenna_switcher](receiver/antenna_switcher/)|antenna switching functionality for Raspberry Pi devices ([LZ2DMV](#contributors))| +|[tune_checkbox](receiver/tune_checkbox/)|make the 'Hold mouse wheel down to tune' setting enabled by default ([LZ2DMV](#contributors))| +|[frequency_far_jump](receiver/frequency_far_jump/)|jump to a frequency outside of the current profile, by typing it in the receiver's frequency dial ([LZ2DMV](#contributors))| +|[keyboard_shortcuts](receiver/keyboard_shortcuts/)|add keyboard shortcuts to the receiver| +|[colorful_spectrum](receiver/colorful_spectrum/)|colorize the spectrum analyzer| +|[connect_notify](receiver/connect_notify/)|send/receive notifications on user connect/disconnect| +|[sort_profiles](receiver/sort_profiles/)|sort profiles by __NAME__| +|[tune_checkbox](receiver/tune_checkbox/)|enable mouse-scroll to zoom by default ([LZ2DMV](#contributors))| +|[utils](receiver/utils/)|this is utility plugin, required by many plugins| +|[notify](receiver/notify/)|this is utility plugin, required by some plugins| +|[example](receiver/example/)|example plugin for developers| +|[example_theme](receiver/example_theme/)|example theme plugin for developers| +### Map Plugins -Each of the locally installed plugins (if any) should be in its own sub-folder under `$OWRX_FOLDER/plugins/{type}/` and should be loaded by its name. i.e. `Plugins.load('layer_qth_maidenhead');`. -The remote plugins should be loaded with direct url to the `.js` file. i.e. `Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/map/layer_qth_maidenhead/layer_qth_maidenhead.js');`. +| :------ | :---------- | +|[layer_qth_maidenhead](map/layer_qth_maidenhead/)|add Maidenhead (QTH) grid to the map| -### restart cache +--- -If you are using **the Raspberry Pi images**, there is an active caching service called `varnish` that might prevent your plugins from loading immediately after you install them. +### Load Plugins +To load a plugin you need to create `init.js` file inside your `openwebrx` installation under `htdocs/plugins/{type}` folder. The `{type}` should be `receiver` or `map`. +The folder could be one of the these, depending on the installation of OWRX+ you have: + * /opt/openwebrx/htdocs + * /usr/lib/python3/dist-packages/htdocs +You can find the correct folder with this command: +`find / -name openwebrx.js` + +Now create or edit the `init.js` file. The easiest way is to use the provided templates: + * [receiver/init.js.sample](receiver/init.js.sample) + * [map/init.js.sample](map/init.js.sample) + +Here is an example how to create the `receiver/init.js`. +```bash +OWRX_FOLDER=$(dirname `find / -name openwebrx.js`) # find OWRX+ htdocs folder +mkdir -p "$OWRX_FOLDER/plugins/receiver" # create folder if it does not exist +cd "$OWRX_FOLDER/plugins/receiver" # go inside folder +wget https://0xaf.github.io/openwebrxplus-plugins/receiver/init.js.sample -O init.js # download tepmlate +${EDITOR-nano} init.js # start the editor +``` + +### Raspberry Pi Images +If you are using the [Raspberry Pi images](https://github.com/luarvique/openwebrx/releases), there is a caching service called `varnish` that might (will) prevent your plugins from loading immediately after you edit the `init.js` file. To avoid weird issues, it is recommended to invalidate the cache after any changes to the plugins system by restarting the corresponding services: `sudo systemctl restart varnish nginx` -## docker -If you're using Docker images, then bind-mount the plugins folder to your host system and follow the instructions above. More info can be found in my docker images. +### Docker +If you're using Docker images ([openwebrxplus](https://hub.docker.com/r/slechev/openwebrxplus) or [openwebrxplus-sofmbe](https://hub.docker.com/r/slechev/openwebrxplus-softmbe)), then you will need to bind-mount the plugins folder to your host system and follow the instructions above. More info can be found in the docker pages of the images. +### Create plugins +If you're a developer and want to create new plugins, you need to get familiar with OWRX+ JS code. +Then you might want to check the [example plugin](receiver/example) or the [example theme plugin](receiver/example_theme). +After you get the are familiar enough, you can check the code of the rest plugins. -## hosting your plugins on github -If you want to host your plugins on Github, you will have to create [Github Page](https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site) over your repository. Finding the rest is up to you. +You can develop your plugins locally and load them, similar to the remote plugins. +Local plugins should be in their own sub-folder under `$OWRX_FOLDER/plugins/{type}/` and should be loaded by their (folder) name. i.e. `Plugins.load('layer_qth_maidenhead');`. +Note that remote plugins are loaded with direct url to the `.js` file. i.e. `Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/map/layer_qth_maidenhead/layer_qth_maidenhead.js');`. -## support +### Hosting your plugins on GitHub +If you want to host your plugins on Github, you will need to create [Github Page](https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site) over your repository, because direct links to a file in the repo will return wrong Content-Type and the browser will not load JS with wrong content-type. Finding the rest is up to you. + +### Support Use these plugins at your own risk. No warranty at all. For support, you can find me (`LZ2SLL`) in the [OWRX+ Telegram Chat](https://t.me/openwebrx_chat) or [here](https://0xAF.org/about/). + +### Contributors + - [LZ2DMV](https://github.com/LZ2DMV) diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..01640b2 --- /dev/null +++ b/_config.yml @@ -0,0 +1,73 @@ +# Welcome to Jekyll! +# +# This config file is meant for settings that affect your whole blog, values +# which you are expected to set up once and rarely edit after that. If you find +# yourself editing this file very often, consider using Jekyll's data files +# feature for the data you need to update frequently. +# +# For technical reasons, this file is *NOT* reloaded automatically when you use +# 'bundle exec jekyll serve'. If you change this file, please restart the server process. +# +# If you need help with YAML syntax, here are some quick references for you: +# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml +# https://learnxinyminutes.com/docs/yaml/ +# +# Site settings +# These are used to personalize your new site. If you look in the HTML files, +# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on. +# You can create any custom variable you would like, and they will be accessible +# in the templates via {{ site.myvariable }}. + +title: OpenWebRX+ Plugins +author: + email: af@0xaf.org + name: Stanislav Lechev - 0xAF - LZ2SLL +description: >- # this means to ignore newlines until "baseurl:" + Plugins collection for OpenWebRX+ +baseurl: "/openwebrxplus-plugins" # the subpath of your site, e.g. /blog +url: "https://0xaf.github.io" # the base hostname & protocol for your site, e.g. http://example.com +#domain: 0xaf.github.io + +# Build settings +#theme: minima +#minima: +# skin: dark + +remote_theme: jekyll/minima + +plugins: + - jekyll-feed + - jekyll-seo-tag + +# If you want to link only specific pages in your header, use this and add the path to the pages +# in order as they should show up. +header_pages: + - README.md + +minima: + #skin: solarized + skin: auto + +social_links: + - { platform: github, user_url: "https://github.com/0xAF" } + - { platform: telegram, user_url: "https://t.me/LZ2SLL_Stanislav_0xAF" } + +# Exclude from processing. +# The following items will not be processed, by default. +# Any item listed under the `exclude:` key here will be automatically added to +# the internal "default list". +# +# Excluded items can be processed by explicitly listing the directories or +# their entries' file path in the `include:` list. +# +# exclude: +# - .sass-cache/ +# - .jekyll-cache/ +# - gemfiles/ +# - Gemfile +# - Gemfile.lock +# - node_modules/ +# - vendor/bundle/ +# - vendor/cache/ +# - vendor/gems/ +# - vendor/ruby/ diff --git a/jekyll.sh b/jekyll.sh new file mode 100755 index 0000000..b6c1055 --- /dev/null +++ b/jekyll.sh @@ -0,0 +1,6 @@ +#!/bin/bash +export GEM_HOME=$HOME/.gem + +bundle install +bundle exec jekyll serve + diff --git a/map/init.js.sample b/map/init.js.sample index 498f326..94125c5 100644 --- a/map/init.js.sample +++ b/map/init.js.sample @@ -1,7 +1,9 @@ // Plugin loader. -Plugins._enable_debug = true; +// Plugins._enable_debug = true; -// Maidenhead (QTH) grid layer -Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/map/layer_qth_maidenhead/layer_qth_maidenhead.js'); +const mp_url = 'https://0xaf.github.io/openwebrxplus-plugins/map'; + +// Maidenhead (QTH) grid layer (OWRX+ v1.2.43 has this integrated, so we are not loading it) +// Plugins.load(mp_url + '/layer_qth_maidenhead/layer_qth_maidenhead.js'); diff --git a/map/layer_qth_maidenhead/README.md b/map/layer_qth_maidenhead/README.md index ee460ba..3ade5bb 100644 --- a/map/layer_qth_maidenhead/README.md +++ b/map/layer_qth_maidenhead/README.md @@ -1,17 +1,19 @@ -# OWRX+ Map Plugin: Maidenhead (QTH) grid +--- +layout: page +title: "OpenWebRX+ Map Plugin: Maidenhead (QTH) grid" +permalink: /map/layer_qth_maidenhead +--- This `map` plugin will show Maidenhead (QTH) grid on the map as an extra layer. -This plugin will work up to __OWRX+ v1.2.43__. The later releases have this layer built-in and the plugin will not install. +This plugin will work up to __OWRX+ v1.2.43__. The later releases have this layer built-in and the plugin will not install even if loaded. +# Preview +![Maidenhead](maidenhead.png "Preview") -# load -Add this line in your `init.js` file: +# Load +Add this line in your `map/init.js` file: ```js Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/map/layer_qth_maidenhead/layer_qth_maidenhead.js'); ``` - # init.js -You can find more info on `init.js` [on github pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [my github repo](https://github.com/0xAF/openwebrxplus-plugins) - -# preview -![Maidenhead](maidenhead.png "Preview") +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/antenna_switcher/README.md b/receiver/antenna_switcher/README.md index 6a7b56a..a1e86d9 100644 --- a/receiver/antenna_switcher/README.md +++ b/receiver/antenna_switcher/README.md @@ -1,47 +1,53 @@ - -# OWRX+ Receiver Plugin: antenna_switcher +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Antenna Switcher" +permalink: /receiver/antenna_switcher +--- -This is a `receiver` plugin to add antenna switching functionality for Raspberry Pi devices, providing logical levels on their GPIO ports that correpond to the user's antenna selection via buttons on the WebSDR's front-end. +This is a `receiver` plugin to add antenna switching functionality for Raspberry Pi devices, providing logical levels on their GPIO ports that correpond to the user's antenna selection via buttons on the OWRX's front-end. It consists of a **front-end** and **back-end** part. -The front-end is a standard OpenWebRX+ plugin and its installation does not differ from the standard way you install plugins: +The front-end is a standard OpenWebRX+ plugin and its installation does not differ from the standard way you [install plugins](/openwebrxplus-plugins/#load-plugins): -# I. Front-end installation +## I. Front-end installation -## load -Add this lines in your `init.js` file: +### Load +Add this line in your `init.js` file: ```js Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/antenna_switcher/antenna_switcher.js'); ``` -## options +#### Back-end URL -### Back-end URL +You probably don't want to change the default back-end instance URL, but if you do want to, you can do it from `init.js`, before or after the plugin loading, with: -You probably don't want to change the default back-end instance URL, but if you do want to, you can do it from `init.js`, before or after the plugin has loaded, with: +`Plugins.antenna_switcher.API_URL = 'HOST:PORT/antenna_switch'` -`Plugins.antenna_switcher.API_URL = 'URL:PORT/antenna_switch'` +### init.js +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). -## init.js -You can find more info on `init.js` [on GitHub pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [0xAF's GitHub repo](https://github.com/0xAF/openwebrxplus-plugins). - -# II. Back-end installation +## II. Back-end installation The back-end installation script **is designed to work with OpenWebRX+ installed from the repository as a package**. You need to adjust it in case you want to use it inside a Docker container. -For the back-end, download and run the **install_backend.sh** Bash script **as root**: - -`chmod +x ./install_backend.sh` - -`./install_backend.sh` +For the back-end, download and run the [install_backend.sh](install_backend.sh) Bash script **as root**: +```sh +wget 'https://0xaf.github.io/openwebrxplus-plugins/receiver/antenna_switcher/install_backend.sh' +chmod +x ./install_backend.sh +sudo ./install_backend.sh +``` The script will download and install the Flask back-end in a Python virtual envrionment located in `/opt/antenna_switcher`, so you don't have to worry about libraries messing up your system's default Python installation. -It will also create a target file for a systemd service called `antenna_switcher`, then start and enable it. +It will also create a systemd service file called `antenna_switcher`, then start and enable it. The nginx configuration will be extended to provide reverse proxying from the OpenWebRX front-end *(default port 8073)* to the Flask back-end *(port 8075, binding only on 127.0.0.1)*. ## Configuration Things like which GPIO pins to raise high when the corresponding button from the front-end is selected can be configured in `/opt/antenna_switcher/antenna_switcher.cfg`. + +```sh +sudo ${EDITOR-nano} /opt/antenna_switcher/antenna_switcher.cfg +``` diff --git a/receiver/colorful_spectrum/README.md b/receiver/colorful_spectrum/README.md index aa14dc4..fe5e2a3 100644 --- a/receiver/colorful_spectrum/README.md +++ b/receiver/colorful_spectrum/README.md @@ -1,19 +1,19 @@ -# OWRX+ Receiver Plugin: colorful_spectrum +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Colorful Spectrum" +permalink: /receiver/colorful_spectrum +--- This `receiver` plugin will colorify your spectrum analyzer. +# Preview +![spectrum](colorful_spectrum.png "Preview") -# load +# Load Add this line in your `init.js` file: ```js Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/colorful_spectrum/colorful_spectrum.js'); ``` # init.js -You can find more info on `init.js` [on github pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [my github repo](https://github.com/0xAF/openwebrxplus-plugins) - -# usage -Just works. - -# preview -![shortcuts](colorful_spectrum.png "Preview") +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/connect_notify/README.md b/receiver/connect_notify/README.md index 2bbd93f..2eb6223 100644 --- a/receiver/connect_notify/README.md +++ b/receiver/connect_notify/README.md @@ -1,4 +1,8 @@ -# OWRX+ Receiver Plugin: connect/disconnect notifications +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Connect/Disconnect notifications" +permalink: /receiver/connect_notify +--- This `receiver` plugin will: - Send a chat message to all users when you connect/disconnect to SDR @@ -6,8 +10,10 @@ This `receiver` plugin will: The plugin depends on [notify](https://0xaf.github.io/openwebrxplus-plugins/receiver/notify/) plugin. +# Preview +![connect](connect_notify.png "Preview") -# load +# Load Add this line in your `init.js` file: ```js Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/notify/notify.js'); @@ -15,7 +21,4 @@ Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/connect_noti ``` # init.js -You can find more info on `init.js` [on github pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [my github repo](https://github.com/0xAF/openwebrxplus-plugins) - -# preview -![shortcuts](connect_notify.png "Preview") +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/example/README.md b/receiver/example/README.md index 43cf84c..981c79a 100644 --- a/receiver/example/README.md +++ b/receiver/example/README.md @@ -1,4 +1,12 @@ -# OWRX+ Receiver Plugin: example +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Example plugin (for devs)" +permalink: /receiver/example +--- This `receiver` plugin is an example for other plugin developers. -There is no point in enabling this plugin. +**There is no point in enabling this plugin.** + +### Code +Code is in my [Github repo](https://github.com/0xAF/openwebrxplus-plugins/tree/main/receiver/example) + diff --git a/receiver/example/example.js b/receiver/example/example.js index 59b77be..3f03469 100644 --- a/receiver/example/example.js +++ b/receiver/example/example.js @@ -1,5 +1,5 @@ /* - * example UI plugin for OpenWebRx+ + * example Receiver Plugin for OpenWebRx+ * * License: MIT * Copyright (c) 2023 Stanislav Lechev [0xAF], LZ2SLL diff --git a/receiver/example_theme/README.md b/receiver/example_theme/README.md index 57c8855..45e1bd6 100644 --- a/receiver/example_theme/README.md +++ b/receiver/example_theme/README.md @@ -1,4 +1,11 @@ -# OWRX+ Receiver Plugin: example_theme +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Example Theme plugin (for devs)" +permalink: /receiver/example_theme +--- This `receiver` plugin is an example for other plugin/theme developers. -There is no point in enabling this plugin. +**There is no point in enabling this plugin.** + +### Code +Code is in my [Github repo](https://github.com/0xAF/openwebrxplus-plugins/tree/main/receiver/example_theme) diff --git a/receiver/frequency_far_jump/README.md b/receiver/frequency_far_jump/README.md index aa856b5..53b51a8 100644 --- a/receiver/frequency_far_jump/README.md +++ b/receiver/frequency_far_jump/README.md @@ -1,5 +1,8 @@ - -# OWRX+ Receiver Plugin: frequency_far_jump +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Frequency Far Jump" +permalink: /receiver/frequency_far_jump +--- This a simple `receiver` plugin to allow jumping to a frequency outside the boundary of the currently selected profile, by typing it in the receiver's frequency dial. @@ -9,19 +12,13 @@ Please note that you **must supply the magic key** for your OpenWebRX+ instance The plugin depends on [utils](https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/) plugin. - -# load -1. Add this lines in your `init.js` file: +# Load +Add this lines in your `init.js` file: ```js -Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/utils.js') - .then(async function () { - Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/frequency_far_jump/frequency_far_jump.js'); - }); +Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/utils.js').then(async function () { + Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/frequency_far_jump/frequency_far_jump.js'); +}); ``` -2. In case you are using the Raspberry Pi images, **please invalidate the cache by restarting the corresponding services**: - -`sudo systemctl restart varnish nginx` - # init.js -You can find more info on `init.js` [on GitHub pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [0xAF's GitHub repo](https://github.com/0xAF/openwebrxplus-plugins). +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/init.js.sample b/receiver/init.js.sample index b45cebd..35deb44 100644 --- a/receiver/init.js.sample +++ b/receiver/init.js.sample @@ -1,21 +1,25 @@ -// Plugin initialization. +// Receiver plugins initialization. +// everything after '//' is a comment. -// uncomment to enable plugin debugging. +// uncomment the next line to enable plugin debugging in browser console. // Plugins._enable_debug = true; +// base URL for receiver plugins +const rp_url = 'https://0xaf.github.io/openwebrxplus-plugins/receiver'; + // First load the utils, needed for some plugins -Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/utils.js').then(async function () { +Plugins.load(rp_url + '/utils/utils.js').then(async function () { - // load a local plugins if you have one + // you can load a local plugins if you have one //Plugins.load('example'); // Load the notification plugin, used by some plugins. await to ensure it is loaded before the rest. - await Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/notify/notify.js'); + await Plugins.load(rp_url + '/notify/notify.js'); // load remote plugins - Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/keyboard_shortcuts/keyboard_shortcuts.js'); - Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/colorful_spectrum/colorful_spectrum.js'); - Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/connect_notify/connect_notify.js'); - // Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/sort_profiles/sort_profiles.js'); + // Plugins.load(rp_url + '/keyboard_shortcuts/keyboard_shortcuts.js'); + Plugins.load(rp_url + '/colorful_spectrum/colorful_spectrum.js'); + Plugins.load(rp_url + '/connect_notify/connect_notify.js'); + // Plugins.load(rp_url + '/sort_profiles/sort_profiles.js'); }); diff --git a/receiver/keyboard_shortcuts/README.md b/receiver/keyboard_shortcuts/README.md index 27b1bc9..8d76762 100644 --- a/receiver/keyboard_shortcuts/README.md +++ b/receiver/keyboard_shortcuts/README.md @@ -1,10 +1,21 @@ -# OWRX+ Receiver Plugin: keyboard_shortcuts +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Keyboard Shortcuts" +permalink: /receiver/keyboard_shortcuts +--- This `receiver` plugin will add keyboard shortcuts to your OWRX+. The plugin depends on [notify](https://0xaf.github.io/openwebrxplus-plugins/receiver/notify/) plugin. +**OWRX+ v1.2.67 has this plugin integrated, hence the plugin will not install, even if loaded.** -# load +# preview +![shortcuts](shortcuts.png "Preview") + +# Usage +To show help screen, press `?`. + +# Load Add this line in your `init.js` file: ```js Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/notify/notify.js'); @@ -12,10 +23,4 @@ Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/keyboard_sho ``` # init.js -You can find more info on `init.js` [on github pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [my github repo](https://github.com/0xAF/openwebrxplus-plugins) - -# usage -To show help screen, press `?`. - -# preview -![shortcuts](shortcuts.png "Preview") +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/notify/README.md b/receiver/notify/README.md index d45b275..48b3e09 100644 --- a/receiver/notify/README.md +++ b/receiver/notify/README.md @@ -1,18 +1,21 @@ -# OWRX+ Receiver Plugin: notify +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Notify" +permalink: /receiver/notify +--- This is `utility` plugin. It provides notifications for other plugins. +# Usage +```js +Plugins.notify.show('some notification'); +``` -# load +# Load Add this line in your `init.js` file: ```js await Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/notify/notify.js'); ``` # init.js -You can find more info on `init.js` [on github pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [my github repo](https://github.com/0xAF/openwebrxplus-plugins) - -# usage -```js -Plugins.notify.show('some notification'); -``` +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/sort_profiles/README.md b/receiver/sort_profiles/README.md index 6548b84..bbb9666 100644 --- a/receiver/sort_profiles/README.md +++ b/receiver/sort_profiles/README.md @@ -1,11 +1,15 @@ -# OWRX+ Receiver Plugin: sort_profiles +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Sort Profiles by NAME" +permalink: /receiver/sort_profiles +--- -This `receiver` plugin will sort your profile list by name (__NOT__ by frequency) +This `receiver` plugin will sort your profile list by *name* (__NOT__ by frequency) +This plugin is more an example for devs, than useful to users. The plugin depends on [utils](https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/) plugin. - -# load +# Load Add this lines in your `init.js` file: ```js await Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/utils.js'); @@ -13,5 +17,4 @@ Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/connect_noti ``` # init.js -You can find more info on `init.js` [on github pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [my github repo](https://github.com/0xAF/openwebrxplus-plugins) - +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/tune_checkbox/README.md b/receiver/tune_checkbox/README.md index 0f1e189..fa3ec2f 100644 --- a/receiver/tune_checkbox/README.md +++ b/receiver/tune_checkbox/README.md @@ -1,16 +1,18 @@ -# OWRX+ Receiver Plugin: tune_checkbox - -This a one-line `receiver` plugin to make the 'Hold mouse wheel down to tune' setting enabled by default. - -This setting allows you to use the mouse scroll to zoom into the waterfall. +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Tune Checkbox" +permalink: /receiver/tune_checkbox +--- +This a one-line `receiver` plugin to make the 'Hold mouse wheel down to tune' setting enabled by default. +This setting allows you to use the mouse scroll to zoom into the waterfall. By default, the state of this checkbox is stored in localStorage in your browser. If you often delete your browser's cache and localStorage contents, this plugin might be useful. -# load +# Load Add this lines in your `init.js` file: ```js Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/tune_checkbox/tune_checkbox.js'); ``` # init.js -You can find more info on `init.js` [on GitHub pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [0xAF's GitHub repo](https://github.com/0xAF/openwebrxplus-plugins). +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins). diff --git a/receiver/utils/README.md b/receiver/utils/README.md index 523167e..da08c68 100644 --- a/receiver/utils/README.md +++ b/receiver/utils/README.md @@ -1,10 +1,14 @@ -# OWRX+ Receiver Plugin: Utils +--- +layout: page +title: "OpenWebRX+ Receiver Plugin: Utils (utility)" +permalink: /receiver/utils +--- This `utility` plugin will give a function wrapping method and will send some events. -This is a dependency for many plugins. +This plugin is a dependency for almost all plugins. -# load +L :oad Add this lines in your `init.js` file: ```js Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/utils.js').then(async function () { @@ -13,4 +17,4 @@ Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/utils/utils. ``` # init.js -You can find more info on `init.js` [on github pages](https://0xaf.github.io/openwebrxplus-plugins/) or directly in [my github repo](https://github.com/0xAF/openwebrxplus-plugins) +Learn how to [load plugins](/openwebrxplus-plugins/#load-plugins).