This release utilizes Client Side Rendering “human readable” previews to push new features that were originally reserved until after a major engine rewrite.
2019 was an important year for us, because it was the year in which we both started planning and then postponed implementing “PeepSo 3” which was supposed to be a major architectural rewrite. We have realized that through a steady trickle-down of new technology into the existing PeepSo codebase we can still build epic features without revolutionizing everything from ground up.
New in PeepSo
How Client Side Rendering changed things
This feature was originally planned exclusively for Open Graph implementation, but we have quickly seen that these previews will be incredibly useful elsewhere.
Notification previews (on-site)
Originally we thought any changes in the notification engine would require a complete overhaul. Thankfully, the CSR approach changed out perspective.
PeepSo 2.7.0 rolled out a closed beta of on-site notification previews, which include a “human readable” previews of posts and comments. After over a month of testing, we are releasing it as an open beta.
Notification preferences changes
Starting with PeepSo 2.7.2 it will be impossible to enable an e-mail notification without automatically enabling a corresponding on-site notification. And in the same spirit, disabling an on-site notification will force disable a corresponding e-mail notification.
In other words, to receive an e-mail about an event (comment, like etc) you must agree to receive an on-site notification.
It might feel like a weird decision, but we have very good reasons behind it, and we think you will like where this is going.
We are planning to push the notification engine redesign even further. Originally we planned to build a separate queue system, serviced by a dedicated cron job. That queue system would store events and create notifications (on-site and e-mail) for users, based on their preferences.
Since this approach would have been very time consuming – requiring a completely new piece of architecture on top of a major rewrite of a major existing system – it was always pushed into “some day” category. At some point in December 2019 we asked ourselves – what if we actually have a perfectly good queue implemented already, only we are blind to its existence?
Future versions of PeepSo will treat the on-site notifications as a source queue for all other notifications. Eliminating the need for a new queue simplifies the entire implementation by an order of an entire magnitude.
The on-site notifications will be generated, and a new cron job will treat them as a queue to generate e-mails. Benefits? We won’t send e-mails about read notifications, we won’t send multiple notifications about the same thing (eg comment + tag). We will also be able to limit the amount of e-mails sent by letting the user choose a “digest” sent once an hour, day, week, etc.
All these future developments have only one requirement – since e-mails will be based on the on-site notifications, one can’t exist without the other. The aforementioned new features and improvements will be steadily implemented over the course of next several releases, with PeepSo 2.8.0 marking the first release utilizing the new queue engine. As usual, we are not promising any deadlines, as our work is very akin to an artistic process, and a lot depends on the flow of the implementation.
Admin panel changes
We shuffled some elements in the administrator panel: created a new “notifications” tab, which houses the new on-site notification previews configuration and the old e-mail configuration box. in the future, more admin options regarding notifications will be added there. The PeepSo Foundation configuration tabs were color coded to reflect their grouping (general, notifications and e-mails, advanced).
Several options were grouped together in a new box called “Links & Embeds” under PeepSo Configuration > Stream Posts, including a new admin option “trim links to domain name only“.
Other features and improvements
We added a “call to action” box on the bottom of stream posts, encouraging users to login or register in order to engage with the content. The Social Sharing feature was improved with the ability to exclude the sharer links from “external link warning” engine. We also added multiple style & layout improvements, including typography in user preferences and MyCred points history page in user profiles.
Don’t have the Bundle but you would like to have access to all current and future plugins hassle-free?
Get PeepSo Ultimate Bundle & Theme
Get All Current and Future PeepSo Plugins & Gecko Theme!
Foundation, Core, Extras, Integrations, Monetization.
Don’t wait get the Bundle today!