CMS:COUCH
14 subscribers
18 photos
4 files
29 links
Unofficial community channel for CouchCMS. News, updates, tips&tricks, etc.
I love CouchCMS and invite YOU. Tell me what you've been working on and ask any question!

Donate bitcoin: bc1qafgrks8t9aealwh52k6ms2xwdse2reqarvem0a
Download Telegram
COMING SOON TAGS <cms:then>, <cms:done>

Couch as any PHP application is single-threaded. But it never meant that all operations are to be completed before the page is sent to user! We will be able very soon to send page to user and let him not wait, while processing is still continuing in full background. Similar to jQuery $().then().done(), Couch will have new tags: '<cms:then>' and '<cms:done>' — chained and detached from page-generating code! One obvious application is to send emails in background, create scripts for administrators a-la cron and more. Important, that Context, i.e. logged in user details and variable values, must be fully supported.
⚽️ SERVER SENT EVENTS

SSE is a great concept to add push-notifications. When page is fully sent to user, JS script initialized a connection to API and API sends back messages. Browser will keep the connection alive and server will send new message only when it is available. I am creating a new tag <cms:emit> that will help send messages from server. So far this functionality is for Admins only (and superadmins). If the server has many messages in queue it may send them very fast. I configured my server to send every 0.05 second (50 millisecond) and my message queue is a list of HTML tags, made of ASCII image-to-text converter. Loading starts after the page generation is complete. So when delivery to browser is finished, the PUSH notifications with HTML lines start coming.
CMS:COUCH
COMING SOON TAGS <cms:then>, <cms:done> Couch as any PHP application is single-threaded. But it never meant that all operations are to be completed before the page is sent to user! We will be able very soon to send page to user and let him not wait, while…
🍕COMING SOON TAGS <cms:set_interval> <cms:set_timeout>

Server-side code execution will be more 'tweakable' with configurable delays and max limit of iterations. Very similar to JS, some code may be run at intervals, after a delay or both after delay and interval, as your code demands.
💪 NEW TAG: delete_file

Deletes relevant to website directory and can clear PHP's error_log as well via param "@php". Click the link to see the README.
CMS:COUCH
💪 NEW TAG: delete_file Deletes relevant to website directory and can clear PHP's error_log as well via param "@php". Click the link to see the README.
☠️NEW TAG: close_session (scheduled for tomorrow).

Very simple tag that 'unhangs' other tabs with pages opened within the same server and same session.
How often do you print something to PHP's error log?

Here is a pumped-up function 'error-log' that prints anything from Couch.
✍️ NEW FUNCS

Get them now — random-name, random-char, random-digit, random-sign. UTF-8 ready!
💯DOCUMENTATION

Absolutely complete documentation on Arrays tags and Extended Users tags. git pull the repository to fetch all latest additions!
✍️ NEW FUNC

The published is-file func quickly reports if the file exists. Tomorrow we'll have the is-image func that can deep-validate images.
CMS:COUCH pinned «💯DOCUMENTATION Absolutely complete documentation on Arrays tags and Extended Users tags. git pull the repository to fetch all latest additions!»
‼️NEW NEW TAG

Amazing publication with the new <cms:new /> tag. Generate random and placeholder data for all kinds of fields and occasions.
😎 So it's a hot July and seemingly developers rest (or maybe their clients are less active), but not everyone.

First and foremost, congratulations to adimpressions for showcasing a new website built with Couch. It's a simple yet rocket-fast pager built with frontend frameworks. Second, "Reusable functions" concept was published by trendoman. Article summarizes a lot of information about this Couch core feature. Next, we got pointed to the amazing YouTube tutorials videos started by Matthew Larkin. Let's give it a big round, as every new video on Couch is so much welcomed.

On top of that, there are a few novelties waiting to be used by developers. To name a few: Couch can identify over 1400 bots visiting the website (func "is-bot"), deep-validate images (func "is-image"), generate a variety of random values (funcs "random-char-digit-sign-name" and tag "<cms:new/>") and work with server-processing of DataTables is simplified with modification of tag <cms:gpc/>. Multi-language coders (and JSON users) will welcome tag "<cms:back2utf/>".

🔹A publication deserved to be highlighted is the newest "<cms:xquery>" tag that parses any HTML with XPath queries. Very simple tag that enumerates HTML nodes allows to extract any kind of data from website to "scrape" them, especially paired with curl-based existing funcs. Made with love, it already saves a great deal of time to monitor forums and websites for changes. ✈️ Highly recommended. Have a great time and can't wait to post about your highlights (if you dare to mention them in comments).
CMS:COUCH
COMING SOON TAGS <cms:then>, <cms:done> Couch as any PHP application is single-threaded. But it never meant that all operations are to be completed before the page is sent to user! We will be able very soon to send page to user and let him not wait, while…
CODENAME "FLING" → ADDON "SLING".
Work on the addon 'codename fling' is complete. Now it will be called Addon SLING. It helps to "sling" any Couch code to background execution, after the page is sent to visitor's browser. Currently I am waiting a feedback and invite beta-testers and in a few days will publish it in repository. So far it is the new tag "<CMS:THEN>" that will do the job simply by enclosing any couch code.
⚡️ SERIOUSLY ⚡️
___________________

We got trapped. We - the designers, the coders, the marketing team, the visitors of the website - we are all very tightly squeezed within a 100-200-300 ms of time from the request to the browser rendering. We are the kings🤴with CouchCMS, we have the 👑 tags and code, but it's all in vain behind the unpassable 🏰 walls.

We are lied to about the endless opportunities. Because the opportunity can *not* be *endless* if time is not endless. Read more and discuss with me the End of Death here https://www.couchcms.com/forum/viewtopic.php?f=2&t=13271
CMS:COUCH pinned «⚡️ SERIOUSLY ⚡️ ___________________ We got trapped. We - the designers, the coders, the marketing team, the visitors of the website - we are all very tightly squeezed within a 100-200-300 ms of time from the request to the browser rendering. We are the kings🤴with…»
🏃‍♂️ A few ongoing-onrunning updates.

It's nice that I figured out to load my addons from the repository files, and do not copy them to /couch/addons/ which isn't making sense for local installation (clutters search). Pushed the update to https://github.com/trendoman/Extended-KFunctions repository.

Published a few new functions (https://github.com/trendoman/Cms-Fu/blob/master/CHANGELOG.md): log-event is nice for PHP developers to peek into variables of a Couch Event. Functions broc, broc-dump I use every occasion when work on ANY project, such helpful they are. Simply have all output redirected to Browser Console and quickly view anything there, without cluttering page!

A new variable k__funcs is released to peek into signatures of your functions (https://github.com/trendoman/Tweakus-Dilectus/blob/main/CHANGELOG.md) . Paired with the broc-dump func, this variable is very helpful.

Well-known addon TinyHTMLMinifier (https://github.com/trendoman/tiny-html-minifier) has been forked from original author and improved to include the new self-closed tag minify_page. It allows to not wrap code in minify tag-pair but use the tag to compress the whole page. Less indentation and less coding. Addon now provides a way to auto-compress all pages without using tags.
Show-off for the broc, broc-dump functions and k__funcs variable from the previous post with updates.