Hi everyone. A collection of most scripts or add-ons available for Couch could perfectly be packed into a custom theme. Following workflow immensely improves times to bootstrap, configure and update client CouchCMS installation.
The following idea is based on presence of the file kfunctions.php in /couch/theme/my-theme-here/ folder. This file is being read while Couch boots its core on every page load. It works the same way the file kfunctions.php works in /couch/addons/ folder. Thus we load addons from our Custom Theme, instead of default /couch/addons/ folder.
In essense, we can pack a Theme + move Theme outside of /couch/ and have couch core files updated independently.
(also can connect language files outside of /couch/lang/, move config.php outside of /couch/, can set up a system to change config settings via Admin-Panel dynamically)
How configuration works:
Theme structure with autoloading goes like Apache config, where mods can be drag-and-dropped from mods*-available folder to mods*-enabled. All possible scripts are stored in *-available and when uploading to client you simply delete *-available folders leaving only *-enabled. This boosts speed by not loading everything and keeps only required tweaks/tags/etc on production for client to see.
Even the usual addon location - /couch/addons/ - becomes redundant and not necessary. Commonly, it's a storage for core addons by Couch itself, which are updated with Couch installation files. We just leave them there and never touch again.
In example pic below a new Couch variable available site-wide is placed in the vars-enabled folder. As each and every tweak is already separated, drag-dropping folders is the easiest way to enable/disable tweak. We autoload scripts from *-enabled folders.
Download the archive here and look at the structure of folders and files. Due to limitation of Couch Forum for only 2mb per attachment, you must PM me for a full version and a password.
A "Ryazania" theme
I offer 1 month support, adaptation (if needed) of your add-ons and custom PHP scripts to work with the /theme/ folder.
Ryazania framework with autoloading and a huge collection of tweaks, scripts, vars, add-ons etc (most of them I coded myself and used in real life alongside my fellow couch developers) costs now only $149.
Our goal is better QoL experience; Ryazania comes packed with a thorough compilation and collection of tweaks, add-ons and other helpers to make Admin Panel better, your development times efficient and overall gives a boost to morale while configuring CouchCMS. Also, If we/you need something else we don't ask other people but just write it for us. You join the most experienced team of people on CouchCMS.
By the way, Ryazania will also work on old versions of Couch, so you can use it even without updating Couch or changing existing files.
So, Ryazania consists of
(a) Autoloading code
(b) efficient and time-tested Folder sctructure
(c) Tweaks, Mods, Add-ons, Scripts that can be enabled-disabled by drag and drop without breaking things
(d) QoL improvements to stock CouchCMS Admin Panel (see below; default CSS or JS untouched yet expanded via theme; can be removed easily by deleting theme files and snippets)
Here is a description of tweaks and improvements included in Ryazania framework.
Advanced settings now have a button to delete page.
It asks for confirmation, then shows a notification upon success!
And notification for deleted pages (with count) is available for all pages across the system:
Speaking of Advanced settings, there are now toastr notifications about 'Publish'-'Unpublish'
And unpublished status appears in the tab.
I'll continue posting gifs and pics. Stay tuned
The following idea is based on presence of the file kfunctions.php in /couch/theme/my-theme-here/ folder. This file is being read while Couch boots its core on every page load. It works the same way the file kfunctions.php works in /couch/addons/ folder. Thus we load addons from our Custom Theme, instead of default /couch/addons/ folder.
In essense, we can pack a Theme + move Theme outside of /couch/ and have couch core files updated independently.
(also can connect language files outside of /couch/lang/, move config.php outside of /couch/, can set up a system to change config settings via Admin-Panel dynamically)
How configuration works:
Theme structure with autoloading goes like Apache config, where mods can be drag-and-dropped from mods*-available folder to mods*-enabled. All possible scripts are stored in *-available and when uploading to client you simply delete *-available folders leaving only *-enabled. This boosts speed by not loading everything and keeps only required tweaks/tags/etc on production for client to see.
Even the usual addon location - /couch/addons/ - becomes redundant and not necessary. Commonly, it's a storage for core addons by Couch itself, which are updated with Couch installation files. We just leave them there and never touch again.
In example pic below a new Couch variable available site-wide is placed in the vars-enabled folder. As each and every tweak is already separated, drag-dropping folders is the easiest way to enable/disable tweak. We autoload scripts from *-enabled folders.
Download the archive here and look at the structure of folders and files. Due to limitation of Couch Forum for only 2mb per attachment, you must PM me for a full version and a password.
A "Ryazania" theme
I offer 1 month support, adaptation (if needed) of your add-ons and custom PHP scripts to work with the /theme/ folder.
Ryazania framework with autoloading and a huge collection of tweaks, scripts, vars, add-ons etc (most of them I coded myself and used in real life alongside my fellow couch developers) costs now only $149.
Our goal is better QoL experience; Ryazania comes packed with a thorough compilation and collection of tweaks, add-ons and other helpers to make Admin Panel better, your development times efficient and overall gives a boost to morale while configuring CouchCMS. Also, If we/you need something else we don't ask other people but just write it for us. You join the most experienced team of people on CouchCMS.
By the way, Ryazania will also work on old versions of Couch, so you can use it even without updating Couch or changing existing files.
So, Ryazania consists of
(a) Autoloading code
(b) efficient and time-tested Folder sctructure
(c) Tweaks, Mods, Add-ons, Scripts that can be enabled-disabled by drag and drop without breaking things
(d) QoL improvements to stock CouchCMS Admin Panel (see below; default CSS or JS untouched yet expanded via theme; can be removed easily by deleting theme files and snippets)
Here is a description of tweaks and improvements included in Ryazania framework.
Advanced settings now have a button to delete page.
It asks for confirmation, then shows a notification upon success!
And notification for deleted pages (with count) is available for all pages across the system:
Speaking of Advanced settings, there are now toastr notifications about 'Publish'-'Unpublish'
And unpublished status appears in the tab.
I'll continue posting gifs and pics. Stay tuned
