Muximux - Lightweight portal to your webapps
This is a lightweight portal to view & manage your webapps without having to run anything more than a PHP enabled webserver. With Muximux you don't need to keep multiple tabs open, or bookmark the URL to all of your apps.
- Add, remove and rearrange your owns apps without touching any code - it's all in the settings menu!
- A shiny new dropdown menu (top right) where you can put items you don't use that often!
- Change or replace icons by just clicking the icon you think looks good.
- Enable or disable a landingpage for each app (landingpages prevent you from being bombarded with login-prompts, and reduces load on your browser).
- All menu items move to the dropdown when you access Muximux from your mobile phone or tablet!
- Refresh button - when you click it, only the app you are looking at will be reloaded - not EVERY app inside your browser. You can also double click the item in the menu.
Behind the scenes features
- Deferred loading of apps - each app only opens when you first click it. Loading time of Muximux is very fast!
- Security token generated on each page load. To execute specific functions of Muximux you can not do it without this token - a token that changes when the user leaves the page, effectively making commands to Muximux not function if you are not a valid user of the Muximux app currently browsing it.
- API calls to Github to look up commit history/changelog are cached and only called once when Muximux is loaded.
- No HTTP requests to external servers. Muximux fonts, icons and other resources: Google, Bootstrap, jQuery and Font-Awesome do not need to know you are hosting a server!
Requirements: A webserver (nginx, Apache, IIS or any other webserver) configured with PHP5 support.
parse_ini_file must be allowed in php.ini (default is allowed!)
To set it up, clone this repository:
git clone https://github.com/mescon/Muximuxor download the ZIP-file. If you install by downloading the zip-file, Muximux will still be able to notify you of updates and install them for you (given the right directory permissions!)
Place all files on a publicly accessible webserver, either in a subdirectory called (for example)
muximuxor directly in the root directory of your webserver (such as
C:\Inetpub\wwwrootor wherever your webserver serves files from by default).
Make sure that the directory where you place Muximux is writable by the process that is running your webserver. (i.e www-data, www-user, apache, nginx or whatever the user is called)
chown -R www-data.www-data /var/www/muximux
<host>is either the IP or hostname of your webserver. Obviously if you put the files in the root directory of your webserver, there is no need to append
Remove the default apps (or just change the URL:s of them if you want to keep them), add your own apps by clicking in the top right corner and then click "Settings".
Under Settings, rearrange your apps with drag'n'drop - just drag an item under another item to move it it.
To reload an app, double click it in the menu, or press the refresh button in the top right bar.
If you want to bookmark a specific service - or just quickly go to a service you've set up - use
https://<host>/muximux/#service_name. For instance,
https://myserver.com/muximux/#couchpotatowhich will load Muximux and automatically load my Couchpotato tab. Replace spaces with underscore.
There is no longer any need to edit config.ini.php or any file at all. In fact, we recommend you don't!
It is strongly recommended that you secure any exposed applications with Basic Auth (
.htpasswd / .htaccess)
If you decide not to, Muximux disallows search engines from indexing your site, however, Muximux itself does not password protect your services, so you have to secure each of your applications properly (which they already should be!). Muximux is NOT a proxy server, and as such can not by itself secure your separate applications. However, you can password protect the Muximux application itself in the "Settings" menu. If you don't want your other services exposed to the world you must make sure that you have Basic Auth or other means of security enabled on your server.
Important note regarding HTTPS
If you are serving Muximux from a HTTPS-enabled webserver (i.e
https://myserver.com/muximux), all of your services must also be secured via HTTPS.
Any URL that does not start with
https:// (such as
http://myserver.com:5050) will be blocked by your web-browser!
If you can, try serving Muximux from a non-secure (HTTP) webserver instead. If the apps you have configured are using HTTPS, communication with them will still be encrypted.
The only known workaround is for Chrome, Opera and Chromium-based webbrowsers.
Install the plugin "Ignore X-Frame headers" which disables the blocking of non-secure content.
Using with PFSense
Please refer to the following: https://forum.pfsense.org/index.php?topic=47167.msg248336#msg248336 then check this box: Browser HTTP_REFERER enforcement - Disable HTTP_REFERER enforcement check Now pfsense works in muximux :D (Thanks to nullredvector for the tip)
Desktop screenshot (modern theme)
Desktop screenshot (classic theme)
Splash screen (modern theme) - shown on startup, accessible in the top right corner if you close it
Mobile screenshot (modern theme) - dropdown menu hidden
Mobile screenshot (modern theme) - dropdown menu shown
Settings: Drag & Drop items to re-arrange them in your menu
Settings: Pick and choose from over 2600 icons and choose colors for each tab
This is a PHP enabled fork of (the simpler and more lightweight) "Managethis" found here: https://github.com/Tenzinn3/Managethis
If you prefer a NodeJS version with a built-in webserver, a rewrite of Muximux (though not up to date) is available at https://github.com/onedr0p/manage-this-node