Extension:Radyjonka
Radyjonka Release status: beta |
|
---|---|
Implementation | User interface |
Description | Provides a basic support for creating a progressive web app (PWA) from the MediaWiki instance. It also allows to insert some content to the HTML head (linked data etc.). |
Author(s) | Petr Kajzar |
Latest version | 0.4.0 (2019-09-27) |
Compatibility policy | Master maintains backward compatibility. |
MediaWiki | 1.29+ |
License | Creative Commons Zero v1.0 Universal |
Download | <translate> Download master snapshot</translate>
<translate> Note:</translate> README |
Quarterly downloads | Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin'). |
Public wikis using | Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin'). |
The Radyjonka MediaWiki extension provides a very basic support for creating a progressive web app (PWA) from the MediaWiki instance. It also allows to insert some content to the HTML head (linked data etc.). It is developed mainly for the purposes of WikiSkripta wiki project.
Installation
- <translate> <tvar name=1>Download</tvar> and place the file(s) in a directory called <tvar name=name>
Radyjonka
</tvar> in your <tvar name=ext>extensions/
</tvar> folder.</translate> - <translate> Add the following code at the bottom of your <tvar name=1>LocalSettings.php </tvar> file:</translate>
wfLoadExtension( 'Radyjonka' );
- File:OOjs UI icon check-constructive.svg <translate> Done</translate> – <translate> Navigate to <tvar name=special>Special:Version</tvar> on your wiki to verify that the extension is successfully installed.</translate>
Usage
Configuration for linked data
If you want to add some linked data to your site (probably because of improving your site's search results), just add an associative array to your LocalSettings.php
:
$wgRadyjonkaLinkedData = [
"@context" => "https://schema.org",
"@type" => "WebSite",
"url" => "https://www.mymediawikiaddress.com/",
"potentialAction" => [
"@type" => "SearchAction",
"target" => "https://www.mymediawikiaddress.com/index.php?search={search_term_string}",
"query-input" => "required name=search_term_string"
]
];
This associative array will be translated into reasonable JSON and inserted to the HTML head of your wiki.
For more inspiration how to use linked data for improving search results please visit: https://developers.google.com/search/docs/data-types/article
Configuration for PWA
Progressive web apps (PWAs) are websites that provide some offline content for the user and can be installed on desktops or mobile phones and feel like native apps of the device. Read more about PWA.
To enable progressive web app on your wiki, just insert this piece of code to your LocalSettings.php
:
$wgRadyjonkaPWA = true;
Then you'll need to meet some criteria:
- You have to write your own web app's
manifest.json
and place it in the root directory of your wiki. Read documentation or visit WikiSkripta's manifest for inspiration. - You'll need two PNG icons, 192x192 px and 512x512 px (see manifest.json).
- You'll need some offline landing page that says something like: "You're offline now, please return to the home page."
- You'll need a javascript service worker named
sw.js
in your root directory of the wiki (i.e. where theLocalSettings.php
file is stored). That service worker file declares, what is the behavior of the website when online and when offline. You can pre-cache some pages, you can cache pages on demand (like let user click on "Read later" button) or cache visited articles automatically. You can even make your wiki editable when the user is offline (and edits will be sent after reconnecting the network). This is unfortunately part of the work that you have to write yourself according to your needs. It is not included in the extension. For documentation on service workers please visit Google Developers. For inspiration check the detailed and explainedsw-example.js
file in the extension's repository. Please note that it is probably not possible to make a MediaWiki instance completely offline-enabled, this is only to provide some basic support to read visited texts offline. - Your site has to be served over a secure and valid HTTPS connection. Make sure that your HTTP version correctly redirects to HTTPS.
License
Created at 1st Faculty of Medicine, Charles Univesity, for WikiSkripta medical wiki. Released under Creative Commons Zero v1.0 Universal license.
This software is distributed without any warranty.
See also
- Extension:PWA: a more advanced PWA extension
- Pages with script errors
- Pages with broken file links
- Beta status extensions
- Extensions without an image
- User interface extensions
- Extensions with master compatibility policy
- Extensions with manual MediaWiki version
- Public domain licensed extensions
- Extensions in Bitbucket version control
- OutputPageBeforeHTML extensions
- All extensions