WP Engine Launches Faust.js, a New Headless WordPress Framework

WP Engine has launched Faust.js, a new headless framework that is open source and designed to work in any Node hosting environment. The framework is built on Next.js, which can handle both static site generation and server side rendering. It uses GraphQL for data fetching and is the only framework that allows developers to query the WPGraphQL API without having to know GraphQL queries ahead of time.

Faust.js was in its earlier stages when WP Engine hired WPGraphQL creator and maintainer Jason Bahl. The company has been heavily investing in headless infrastructure development, hiring more engineers for projects aimed at reducing the friction of using WordPress as a headless CMS. This is the main thrust of the new framework – to allow developers to build scalable, better performing sites with modern frontend tools while preserving WordPress’ rich publishing experience. Faust.js includes content previews, support for custom post types, and built-in authentication to support paywalls, e-commerce, membership sites, and other functionality that has traditionally been difficult for headless sites.

How does Faust.js differ from existing headless solutions like the React-based Frontity framework? Developers building headless sites are curious after Automattic acquired Frontity and the framework’s maintainers exited to work full-time on Gutenberg. Using a community-supported headless framework can be a risky bet for enterprise clients when its creators and maintainers are no longer able to contribute.

“Frontity and Faust are similar, the main difference is that Frontity focuses on providing a framework on-top of React where Faust is primarily built with Next.js support in-mind,” Faust.js creator William Johnston said. “This small distinction is meaningful and means when you are using Faust you can take advantage of all the amazing benefits of Next. It also lets Faust focus specifically on how to make Headless WordPress a better experience, without having to come up with a comprehensive solution for front-end, node-base, static/server-side applications.

When asked how Faust stacks up to Frontity in a comment on Reddit, WP Engine developer relations engineer Kellen Mace highlighted a few other major differences between the frameworks. Frontity only works with the WP REST API and Faust uses WPGraphQL “for more efficient queries.”

“Technically, Faust is built in ‘layers,’ so even if you choose to build your frontend app using SvelteKit, Nuxt, etc. you can still leverage several of the tools Faust provides,” Mace said. “We’ll have more documentation coming out on using it with other JS frameworks in the near future. Using it with Next.js gives you the most ‘bang for your buck,’ however.”

Johnston confirmed that certain elements of Faust (the core/React pieces), are already working with the React-based GatsbyJS framework. Faust is less opinionated about the frontend and is more centered around making the WordPress publishing experience better.

A demo of Faust in action is available at developers.wpengine.com. The framework, which includes NPM packages and a WordPress plugin, can be found on GitHub, but its maintainers caution that there will be breaking changes in the future. Developers who are interested in learning more about Faust.js can check out the documentation or listen to the most recent episode of the DE{CODE} podcast where Johnston discusses headless WordPress and introduces the framework.

Newsletter Glue Pro, My First Foray Into Journalism, and New Ideas

As a teen, I would visit my Uncle David’s house every other week or so. He was the only family member with a computer. It was an old, bulky monstrosity that ran whatever the latest version of Windows that existed at the time. It was one of my first introductions to dial-up, but my primary interest was not the internet. It was newsletters and home-printed magazines.

Like all members of my family, we are artists in one way or another. What little extra money many have is spent on creative pursuits. Uncle David’s latest passions at the time were in designing T-shirt logos and printing a family newsletter. Does anyone remember when those were still a thing? I was a kid in a whole new world. Of course, I followed suit and issued a few pamphlets covering the latest goings-on with my family to a circulation of maybe a dozen people.

This kick-started my foray into journalism and design during my adolescence. A family newsletter sounds far more interesting to me now, as an adult, than it did in those days. Somehow, I know I have reached the point where I can officially call myself old by saying that. But, I was coming of age at the turn of the millennium. My interests mostly revolved around video games. I wanted to create something that rivaled Nintendo Power from the comfort of my own home. I had access to a computer and printer; the dream was mine for the taking.

Home-printed magazine for gaming in July 2000.

Unfortunately, I could not find any of my printed family newsletters to share. My gaming mag was a short-lived, two-issue venture. I am sure the staff, consisting of my younger sister and best friend, unionized and staged a revolt.

Throughout my life, I have always had it in the back of my mind that I would attempt another periodical at some point, but I have never gotten around to it. However, when Newsletter Glue co-founder Lesley Sim asked me to look at the pro version of her team’s plugin, all those old ideas started swirling around in my head again.

After spending the last few days tinkering with Newsletter Glue Pro, I kind of want to restart the family newsletter again. Maybe digital is the way to go. Perhaps I can even get my uncle to join me.

Admittedly, I have had a lot more fun with this plugin than with others recently. It is the sort of extension that can take a potential newsletter from idea to execution.

All you need is to be familiar with the WordPress editor to kick-start a new project. The plugin has a few settings you might want to tinker with, but the onboarding process walks you through the steps of getting everything off the ground and connecting to your preferred email software. I was worried that there would be a massive learning curve, but I was in the editor in short order.

Newsletter Glue from the WordPress block editor.
Writing a newsletter from the WordPress editor.

Users can publish blog posts as newsletters. However, the team introduced a dedicated newsletter post type earlier this year, providing more flexibility in creating content.

What I enjoyed the most about Newsletter Glue was its integration with the block patterns API. The plugin bundles several header and footer patterns, but end-users can build and store their own for reuse.

Newsletter block pattern in the WordPress editor.
Duplicating and customizing a footer pattern.

The plugin did have its share of issues. The most prominent was its automatic switching to the fullscreen editor, which is a feature that I turn off on every WordPress site I use. For some reason, this either did not save or was being overwritten each time I loaded the page.

I am also not a fan of the meta box at the bottom of the screen. It is giving me flashbacks of the pre-5.0 WordPress editor that I would like to forget. The team should create a dedicated sidebar panel for the newsletter screen.

Classic meta box for the Newsletter Glue plugin on the post/newsletter-editing screen.
Newsletter meta box.

With its reliance on the modern editor, this holdover from an older time just feels out of place. Plus, from a UI perspective, there seems to be nothing requiring the old meta box system.

I would also like to see the built-in Newsletter theme designer integrate with the active theme’s JSON presets. This is a relatively new WordPress feature, so maybe it will land on the features list.

Newsletter theme design screen from the Newsletter Glue plugin.
Newsletter theme designer.

Because this is a standardized format, there is no reason that plugins should not start pulling data from it. As a user, I should at least be able to pick and choose text, background, and link colors from those made available through the theme instead of hunting down hex codes or eyeballing it from a color picker.

Overall, I like what the Newsletter Glue team has built thus far. It is no small feat to put together such a well-rounded project of this size in just over a year. I look forward to seeing it evolve over time. For now, I am laying out ideas for the return of my family newsletter thanks to the Newsletter Glue team.

WordPress error after moving from host to another

I moved my website from host to another, moved database and public_html file, Also, I modified wp-config file and deleted hlaccess. But, now I can't update any plugin or delete there is message said

update_option( 'siteurl', 'https://zone1on.com' ); update_option( 'home', 'https://zone1on.com' );
Skip to main contentSkip to toolbar

At the website header.

And another message when I try to update or delete any plugin.

Update failed: update_option( 'siteurl', 'https://zone1on.com' ); update_option( 'home', 'https://zone1on.com' ); {"success":true,"data":{"update":"plugin","slug":"easy-accordion-free","oldVersion":"Version 2.0.21","newVersion":"Version 2.0.23","plugin":"easy-accordion-free\/plugin-main.php","pluginName":"Easy Accordion","debug":["Enabling Maintenance mode…","Downloading update from https:\/\/downloads.wordpress.org\/plugin\/easy-accordion-free.zip…","The authenticity of easy-accordion-free.zip could not be verified as no signature was found.","Unpacking the update…","Installing the latest version…","Removing the old version of the plugin…","Plugin updated successfully.","Disabling Maintenance mode…"]}}

Please, If anyone have any information.
Tell.me what I should do?.

2021 Scroll Survey Report

Here’s a common thought and question: how do browsers prioritize what they work on? We get little glimpses of it sometimes. We’re told to “star issues” in bug trackers to signal interest. We’re told to get involved in GitHub threads for spec issues. We’re told they do read the blog posts. And, sometimes, we get to see the results of surveys. Chrome ran a survey about scrolling on the web back in April and has published the results with an accompanying a blog post.

“Scrolling” is a big landscape:

From our research, these difficulties come from the multitude of use cases for scroll. When we talk about scrolling, that might include:

According to the results, dang near half of developers are dissatisfied with scrolling on the web, so this is a metric Google devs want to change and they will prioritize it.

To add to the list above, I think even smooth scrolling is a little frustrating in how you can’t control the speed or other behaviors of it. For example, you can’t say “smooth scroll an on-page jump-down link, but don’t smooth scroll a find-on-page jump.”

And that’s not to mention scroll snapping, which is another whole thing with the occasional bug. Speaking of which, Dave had an idea on the show the other day that was pretty interesting. Now that scroll snapping is largely supported, even on desktop, and feels pretty smooth for the most part, should we start using it more liberally, like on whole page sections? Maybe even like…

/* Reset stylesheet */
main, section, article, footer {
  scroll-snap-align: start;
}

I’ve certainly seen scroll snapping in more places. Like this example from Scott Jehl where he was playing with scroll snapping on fixed table headers and columns. It’s a very nice touch:

Direct Link to ArticlePermalink


The post 2021 Scroll Survey Report appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.

333: Robert

New CodePen team member! As we recorded this, it was just Robert’s 2nd day at CodePen, and we snuck this podcast in within the hurricane of stuff happening during that time. There is a pile of new software to get access to and acquainted with. There is the dev environment stuff. There is getting acquainted with people, with the extra challenge of doing that remotely. There is understanding the flow and structure of our work days. There are meetings! So many meetings! Figuring out the Zoom culture.

For now though, we chat about Robert’s history and how we’re luck to have gotten someone with such deep expertise in the field. He lives right in Bend, Oregon where Chris is, hence them knowing each other through BendJS.

Timejumps

  • 00:36 Guest introduction
  • 01:37 Blind spots exposed by new hires
  • 03:48 What’s it like to onboard at CodePen?
  • 05:42 Sponsor: Jetpack
  • 06:45 More about Robert
  • 11:22 Is it important to work on things that matter to you?
  • 15:03 A computer is a fancy wrench
  • 20:16 Did Node draw you to Javascript?
  • 25:35 Where CodePen is headed

Sponsor: Jetpack

It’s so cool that Jetpack acquired Social Image Generator. Jetpack already does stuff to help your WordPress site be better integrated with social media (check this video), so why not really go the extra mile and help you with those tricky-to-pull-off social media images? We’re all very much looking forward to see what new features this acquisition unlocks.

The post 333: Robert appeared first on CodePen Blog.

The Power of DevOps Self-Service Platforms: How Standard Tools and Tech Increase Developer Velocity

Introduction

By now, most organizations in the business of delivering software will likely have a DevOps strategy. Even if adoption is only partial, the maturity of DevOps enables firms to improve delivery by implementing the tools and practices across their organization that best suit their needs. 

Once the benefits of DevOps are realized, the business case for scaling DevOps across the enterprise inevitably grows. However, there is a key problem when it comes to scaling DevOps, which is outlined by Gartner’s 2019 prediction that “by 2023, 90% of enterprises will fail to scale DevOps initiatives if shared self-service platform approaches are not adopted.” Providing self-service capabilities allows product development teams to quickly provide new features and push changes to customers while also allowing the self-service platform owners to focus on providing new infrastructure automation capabilities to further support the increased product velocity.

DZone Live: INTERACT Episode

Ready to get META? INTERACT with INTERACT on DZone Live this Thursday!

Join us for this special INTERACT episode of DZone Live. The Dev Interrupted team will talk about their new community-driven conference from LinearB on September 30th (register today). Fun and engaging, including taking your questions live. DZone is a premier sponsor for INTERACT.

DZone Live is broadcast across all DZone social media channels.

How to save connection result in a variable in Node.js ?

hello ,
i wanna do something as below but the problem that names and address out of the connection query are empty how can i assign them and the send them to the page?

app.get('/reports', (req, res)=>{


    let sql = "SELECT DISTINCT name from users_table  ;";
    let names;
    let query = connection.query(sql,(err,results) => {
    if(err) throw err;
    names=results
});


let sql2 = "SELECT DISTINCT address from users_table  ;";
    let addresss ;
    let query2 = connection.query(sql2,(err,results) => {
    if(err) throw err;
    addresss=results
});


res.render('reports',{
    title:'Reports ',
    names:names,
    addresss:addresss,



    })

});

Adapt How You Lead for Agile Success

TL; DR: Adapt How You Lead for Agile Success With Johanna Rothman — ACB21

Learn from Johann Rothman how to adapt your leadership style for agile success as a manager in an agile organization in this 54-minute long video from the Agile Camp Berlin 2021.

Modern Management: Adapt How You Lead for Agile Success

Too many people say, “With agile, we don’t need no stinkin’ managers.”

Generate Documents and Send Them in Bulk for E-Signature in Microsoft Power Automate

Mail merge has been around since the 80s. However, back in the 80s, most of the ways that people would think of mail merge was to print documents and envelopes in bulk to be packed into envelopes and sent off. This could be for employee notices like bonus letters, offer letters, account statements, and other scenarios.

While there is still plenty of mail sent in modern times, more need is to have documents delivered electronically. In this article, we’ll learn how you can use a list of recipients in a Microsoft Excel sheet and generate documents dynamically using Adobe Document Generation API, which is part of the Adobe PDF Services connector in Microsoft Power Automate. We will also see how you have those documents delivered in bulk using Adobe Sign.

Why You Should Use Adobe Document Generation API With Adobe Sign

Adobe Sign, our cloud-based e-signature service, is used by over 50% of the Fortune 500 and is used for contracts, forms, and all sorts of other use-cases. However, there are also areas where Adobe Sign has some limits, and there are excellent reasons why Adobe Sign, combined with Adobe Document Generation API, makes a fantastic combo.

Adobe Document Generation API is a service included in Adobe PDF Services API that allows you to take your Microsoft Word-based templates and JSON data to merge them into one document with conditional logic, dynamic tables, and other features. In the end, you get a Word or PDF document that can be Adobe Sign-ready. There is even a playground where you can play with Adobe Document Generation API and see how it works.

Slow Query Basics: Why Are Queries Slow?

Introduction

If you've ever worked with databases, you have probably encountered some queries that seem to take longer to execute than they should. Queries can become slow for various reasons ranging from improper index usage to bugs in the storage engine itself. However, in most cases, queries become slow because developers or MySQL database administrators neglect to monitor them and keep an eye on their performance. In this article, we will figure out how to avoid that.

What Is a Query?

To understand what makes queries slow and improve their performance, we have to start from the very bottom. First, we have to understand what a query fundamentally is–a simple question, huh? However, many developers and even very experienced database administrators could fail to answer.

Things to Look Forward to at This Year’s DevOps World

It’s hard to believe it’s that time of year again, but DevOps World 2021 is quickly approaching! This year’s conference is going back to virtual on September 28-30 and is filled with exciting sessions, speakers, and networking opportunities for every member of the DevOps community.

Last year, we had attendees “show us their world” as they attended (for the first time ever) DevOps World from thousands of locations across the globe. This year, we’re going back to the future (if you’ve seen any of our promotions on social media, you’ll know what I mean!). We’ll be focusing on how we can build the future of software delivery together through security, CI/CD, scalability, and DevOps best practices.

kbar

It’s not every day that a new pattern emerges across the web, but I think cmd + k is here to stay. It’s a keyboard shortcut that usually pops open a search UI and it lets you toggle settings on or off, such as dark mode. And lots of apps support it now—Slack, Notion, Linear, and Sentry (my current gig) are the ones that I’ve noticed lately, but I’m sure tons of others have started picking up on this pattern.

Speaking of which, this looks like a great project:

kbar is a fully extensible command+k interface for your site

My only hope is that more websites and applications start to support it in the future—with kbar being a great tool to help spread the good word about this shortcut.

Direct Link to ArticlePermalink


The post kbar appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.

A Good Old-Fashioned Perl Log Analyzer

A Good Old-Fashioned Perl Log Analyzer

A recent Lobsters post lauding the virtues of AWK reminded me that although the language is powerful and lightning-fast, I usually find myself exceeding its capabilities and reaching for Perl instead. One such application is analyzing voluminous log files such as the ones generated by this blog. Yes, WordPress has stats, but I've never let reinvention of the wheel get in the way of a good programming exercise.

So I whipped this script up on Sunday night while watching RuPaul's Drag Race reruns. It parses my Apache web server log files and reports on hits from week to week.

Say No to Hotfixes: How To Implement Security in the Development Process

I am Viktoriya Hranenko, Security Automation Engineer at NIX United. I started at the company as General QA, simultaneously performing manual and automated testing tasks. My responsibilities did not include security tasks. However, while testing the application on the previous project, I brought attention to some cases that we never fixed. This was not our area of responsibility, and there were no specialists among us who could assess the criticality of these finds. Some of the security incidents were awaiting the appearance of a penetration tester.

But if we want to create a great quality product, shouldn't we start by making it reliable? In addition, today almost all applications for registration forms fall under the law "On personal data protection" following the legislation of the country where the product is distributed. In my opinion, the security check should not be carried out in the final testing stage before the release.