A beautiful, usable, responsive MediaWiki skin with in-depth extension support. Originally developed for the Star Citizen Wiki.
Go to file
2020-02-15 23:11:35 +00:00
.github Updated msg in workflow 2020-01-06 15:39:32 -05:00
bin Force phpcbf to exit with 0 2019-12-30 19:04:02 -05:00
i18n Add search string to no result card 2020-01-01 02:27:48 +01:00
includes Renamed resourceloader modules 2020-02-15 16:49:55 -05:00
licenses Updated font licenses 2019-12-20 13:18:12 -05:00
resources Github CI lint - phpcbf 2020-02-15 23:11:35 +00:00
skinStyles Github CI lint - eslint/stylelint 2020-01-07 17:49:15 +00:00
.eslintrc.json Enable common js 2020-02-15 17:24:52 -05:00
.gitignore Bumped version and updated test files 2019-12-26 02:08:10 -05:00
.phpcs.xml Exclude out folder for phpcs 2020-01-06 14:49:06 -05:00
.stylelintrc.json Make stylelint ignore out 2019-12-26 13:02:30 -05:00
citizen.php Made code MW compliant 2019-12-26 00:24:31 +01:00
CODE_OF_CONDUCT.md Add documentation to the skin 2019-12-21 00:56:15 -05:00
composer.json Supress composer error 2020-01-09 19:32:29 -05:00
Gruntfile.js Removed extra eslint rules 2020-02-15 17:20:20 -05:00
jsdoc.json Updated JSDOC config 2019-12-26 13:06:28 -05:00
LICENSE licensing update 2019-08-16 21:48:16 -04:00
package-lock.json Github CI lint - eslint/stylelint 2020-01-06 19:32:03 +00:00
package.json Attempt to fix autofix 2019-12-28 19:13:50 -05:00
README.md Add option to choose description source for search suggestion 2020-01-01 16:38:10 -05:00
skin.json Attempt to fix lazyload not loading 2020-02-15 16:59:47 -05:00

Citizen

Citizen is a responsive skin for MediaWiki built by the Star Citizen Wiki team. Although it is specifically built for the Star Citizen Wiki, the skin should be able to run on any Mediawiki installation that is 1.31 or higher. Due to resource constraints, we might not be able to provide full support for setups that are vastly different than us, but feel free to submit a pull request or bug report if you find a bug!

Notable features

  • Fully responsive skin: Responsive and able to adapt to different screen sizes. 📱💻🖥️
  • Rich search suggestions: More helpful search suggestions with images and descriptions. 🔍👀
  • Lazyload images: Improve load time of your wiki and avoid unnessecary image downloads. 🚀
  • Native light/dark mode support: Respect OS and app configuration for light and dark mode. ☀️🌙
  • Webapp manifest: Give a more app-like experience when user add your wiki to their home screen. 📱
  • HTTP security response headers: Enhance the security of your wiki from HTTP response headers. 🔒🔑

Configurations

WIP section, refer to below:

	"ThemeColor": {
		"value": "#11151d",
		"description": "The theme color defined in the meta tag",
		"descriptionmsg": "citizen-config-themecolor",
		"public": true
	},
	"EnablePreconnect": {
		"value": false,
		"description": "Enable or disable preconnect to required origin",
		"descriptionmsg": "citizen-config-enablepreconnect",
		"public": true
	},
	"PreconnectURL": {
		"value": "",
		"description": "The URL for preconnect to required origin",
		"descriptionmsg": "citizen-config-preconnectorigin",
		"public": true
	},
	"EnableCSP": {
		"value": false,
		"description": "Enable or disable Content Security Policy",
		"descriptionmsg": "citizen-config-enablecsp",
		"public": true
	},
	"EnableCSPReportMode": {
		"value": false,
		"description": "Enable or disable Content Security Policy report only mode, it will override the CSP when enabled",
		"descriptionmsg": "citizen-config-enablecspreportmode",
		"public": true
	},
	"CSPDirective": {
		"value": "",
		"description": "The string of your CSP directive",
		"descriptionmsg": "citizen-config-cspdirective",
		"public": true
	},
	"EnableHSTS": {
		"value": false,
		"description": "Enable or disable HTTP Strict Transport Security",
		"descriptionmsg": "citizen-config-enablehsts",
		"public": true
	},
	"HSTSMaxAge": {
		"value": 300,
		"description": "Time in second that the browser should remember that a site is only to be accessed using HTTPS",
		"descriptionmsg": "citizen-config-hstsmaxage",
		"public": true
	},
	"HSTSIncludeSubdomains": {
		"value": false,
		"description": "Apply HSTS to all of the site's subdomains",
		"descriptionmsg": "citizen-config-hstsincludesubdomains",
		"public": true
	},
	"HSTSPreload": {
		"value": false,
		"description": "Enable or disable HSTS preload",
		"descriptionmsg": "citizen-config-hstspreload",
		"public": true
	},
	"EnableDenyXFrameOptions": {
		"value": false,
		"description": "Enable or disable the deny X-Frame-Options header",
		"descriptionmsg": "citizen-config-enabledenyxframeoptions",
		"public": true
	},
	"EnableXXSSProtection": {
		"value": false,
		"description": "Enable or disable the X-XSS-Protection header",
		"descriptionmsg": "citizen-config-enablexxssprotection",
		"public": true
	},
	"EnableFeaturePolicy": {
		"value": false,
		"description": "Enable or disable Feature Policy",
		"descriptionmsg": "citizen-config-enablefeaturepolicy",
		"public": true
	},
	"FeaturePolicyDirective": {
		"value": "",
		"description": "The string of your Feature Policy directive",
		"descriptionmsg": "citizen-config-featurepolicydirective",
		"public": true
	},
	"EnableManifest": {
		"value": true,
		"description": "Enable or disable web app manifest",
		"descriptionmsg": "citizen-config-enablemanifest",
		"public": true
	},
	"ManifestThemeColor": {
		"value": "#11151d",
		"description": "The theme color defined in the web app manifest",
		"descriptionmsg": "citizen-config-manfiestthemecolor",
		"public": true
	},
	"ManifestBackgroundColor": {
		"value": "#fff",
		"description": "The background color defined in the web app manifest",
		"descriptionmsg": "citizen-config-manifestbackgroundcolor",
		"public": true
	},
	"SearchDescriptionSource": {
		"value": "TextExtracts",
		"description": "The source of the short description in the suggestions",
		"descriptionmsg": "citizen-config-searchdescriptionsource",
		"public": true
	},
	"MaxSearchResults": {
		"value": 6,
		"description": "The max number of suggestions in search result",
		"descriptionmsg": "citizen-config-maxsearchresults",
		"public": true
	},
	"EnableButton": {
		"value": false,
		"description": "Enable or disable the floating action button on the bottom left",
		"descriptionmsg": "citizen-config-enablebutton",
		"public": true
	},
	"ButtonLink": {
		"value": "",
		"description": "The URL of the FAB button",
		"descriptionmsg": "citizen-config-buttonlink",
		"public": true
	},
	"ButtonTitle": {
		"value": "",
		"description": "The title of the link element on the FAB",
		"descriptionmsg": "citizen-config-buttontitle",
		"public": true
	},
	"ButtonText": {
		"value": "",
		"description": "The text of the FAB",
		"descriptionmsg": "citizen-config-buttontext",
		"public": true
	},
	"ShowPageTools": {
		"value": true,
		"description": "Page tools visibility condition",
		"descriptionmsg": "citizen-config-showpagetools",
		"public": true
	}

Requirements