Craft 3.5 beta, Craft Nitro, free COVID licenses, tips, plugins, and more.
Hello Craft friends. I hope this issue finds you doing well.
We kick off with the beta release of Craft 3.5. If you’re excited about the GraphQL mutations 3.5 brings, that means you are a nerd, and you are reading the right newsletter. 😄
Craft Nitro, the local dev environment solution from the Craft team is now in pre-release. Following up on the batch of free licenses for COVID response projects, there are a few more to add to the list. We’ve also got plenty of tips and more.
Thank you to the sponsors of this issue.
Need responsive images? Of course, you do. ImageOptimize by nystudio107 has got you covered whether you're using Craft's built-in image transforms or a service like Imgix.
Freeform is the feature-filled form plugin for Craft CMS that includes ready-to-use templates to get you up and running quickly. Learn about the power of Freeform.
Let’s hit the links.
🧨 Craft 3.5 Beta 1 🧨
"You get GraphQL mutations! And you get GraphQL mutations! And you get GraphQL mutations!"
If you want to help test Craft 3.5, change your craftcms/cms requirement in composer.json to "^3.5.0-beta.1" and then run
BONUS: It's great to see the beta of the 3.5 docs arrive with the release, including a section discussing GraphQL mutations. 🍹
Craft Nitro - Beta 0.9.2
Craft Nitro is a better, faster way to develop Craft CMS apps locally without Docker or Vagrant. Nitro’s one dependency is Multipass, which allows you to create Ubuntu virtual machines. There are docs on how to set up Xdebug with PHPStorm and Nitro.
Note that this is not the final version. Check the changelog, now at version 0.92, to keep up with the state of Nitro. When it’s officially released, it will be in the newsletter again as well.
Craft 3.4.16 released
Craft 3.4.16 now sets the
access-control-allow-origin header to
* rather than the incoming request’s origin, for
live-preview/preview requests. Your CORS prayers, or maybe they are nightmares, are answered.
Free licenses for COVID19 response: part 2
In the previous issue, you will find a list of offers for free licenses from developers for use in building COVID response projects. There are more to add to the list:
- nystudio107, creator of SEOMatic and many others
- Double Secret Agency, creator or Smart Map, Upvote and more
Developers, if I’ve missed your plugin, please Tweet about it and submit your link to the CLL link submission page.
🏭 pluginfactory.io goes to 2,896
Andrew shared some stats showing how many Craft plugins and modules have been built so far this year using pluginfactory.io. In a second tweet, he revealed that "Test" is the most popular name chosen. I've made at least one of those.
If you’re using Plugin Factory, you can support Andrew’s work on it at GitHub.
ImageOptimize: Optimized, Responsive Images Made Easy
Automatically create & optimize responsive image transforms, using either native Craft transforms or a service like Imgix, with zero template changes.
Tools, tips, and fundamentals
An Official “Welcome to Craft CMS” Tutorial
The Craft team has been hard at work on the documentation of Craft. (Thanks, Matt Stein!) For example, the recently added tutorial at the link above will help new users get familiar with Craft CMS in no time.
GraphQL API Documentation
Lest you think the documentation improvements are just for those new to Craft, check out the GraphQL docs. They have gotten more robust, just in time for 3.5. For example, they have reference tables for the following:
Video: Building Navigation
In this short video, James Grieg demonstrates how he allows clients to create navigation in Craft using a Matrix field with two block types.
Ability to Specify CMS Logo in config? No, but...
If you use a server that doesn't have a permanent way to keep uploaded files, the normal way of adding a logo to your Craft control panel won't work as you expect.
For example, if you use Heroku, it comes with an ephemeral file system, which would wipe out your logo periodically. The Github issue link above offers a solution to this problem. Add your rebranding logos to your Git repo. You can do that by adding the following to your
# CRAFT STORAGE /storage/* !/storage/.gitkeep !/storage/rebrand/
Learn in Public: Alpine.js | CraftQuest
Ryan and Andrew try learning Alpine.js in public.
Perfecting your technique
Emails and Organisation (Servd, March 2020)
Matt Gray continues to share his experiences in launching Servd, a managed Craft CMS hosting service.
Craft 2 to 3 Migration PDF
On April 7, Justin Holt gave a presentation at the Charlotte Craft CMS Meetup Group on migrating from Craft 2 to Craft 3. At the link above, you can check out the slide deck and then follow along with the video of his presentation.
A Guide to Soft Delete with Craft CMS ⭐️
Jake Dohm does a dive into Craft’s soft delete functionality.
- What types of content have a soft-delete
- How to soft-delete content
- How to find and recover soft-deleted content
- How to permanently remove soft-deleted content
- Configuring soft-delete
- What this means for plugin authors
repman.io | Private PHP Package Repository Manager
Andrew mentioned repmaon.io in a Tweet recently. It promises to speed up your composer downloads by up to 90% by installing a global composer project or just tweaking your
package.json file per project.
Building a Donation Form with Craft Commerce
CraftQuest continues to add great content. Consider subscribing if you haven’t already.
In the Up and Running with Craft Commerce, we covered how to build a product website with Craft Commerce. Our goal was straightforward and focused. That means that we didn’t cover everything about Commerce. In this lesson or course, we’re going to use the Donation feature in Commerce to set up a simple donation page using Craft Commerce.
Responsive Tables with Craft CMS, Table Maker, and Tailwind
Sean Smith shows how to use the Table Maker plugin to let your users have a flexible author experience. He also discusses how to customize the output to be responsively designed on the front-end of your site.
Effortlessly build beautiful forms in minutes with Freeform!
Freeform is the most reliable, intuitive and powerful form building plugin for Craft. Everything is at your fingertips in our elegant form builder. It gives you full control to create simple or complex multi-page forms, as well as connect your forms to many popular API integrations. Templating is easy and highly customizable. Our ready-to-go templates and features like built-in AJAX and Conditional Rules Logic will have you ready in minutes! No other form plugin even comes close to comparing! You can trust Freeform (and the team behind it) to deliver the quality and support you expect and deserve.
Matrix Field Preview
Craft Matrix Field Preview lets you add screenshots to a Matrix field to give your content authors a quick reference to what the block will look like.
Craft Remote Backup makes it easy to create offsite remote backups from the comfort of the Craft Control Panel.
Craft Remote Sync makes it easy to sync your database and volume assets from the comfort of the Craft Control Panel. This makes it much easier to move your site from local development to staging and onto production and avoids the need to regularly SSH into servers to perform database dumps and restores.
"Am I using this field? Where am I using this field?" You no longer have to wonder... Inventory will show you exactly where your fields are being used!
The Asset Usage plugin adds a column to see which assets are used or unused.
Super Dynamic Fields
This plugin enhances the default radio, checkbox, dropdown, and Multi-Select Field.
This plugin transforms structured data into series of linked dropdowns.
A simple plugin to pluralize template output.
SIB Contact Form Integration
This plugin is a fork of the
craftcms/contact-form and uses its base contact form logic to send emails via the site's SMPT email settings.
Talus Pay for Craft Commerce
Accept payments on your website with Talus Pay.
Import Products from Shopify.
The Craft Advantage
It’s not Craft, but it’s interesting.
devMode.fm // Do's and Don'ts for Docker-izing applications
In this episode, we talk to Andreas Wittig from cloudonaut.io about best practices when using Docker for our web applications.
A curated list of Docker resources and projects.
Apple’s attack on service workers
This post by Jeremy Keith shines a light on an upcoming change to Safari that will limit Service Worker registrations to a 7-day activity period, i.e. it will “delete service workers after seven days.”
A curated list of awesome resources related to Alpine.
The Vue Guy
h/t Jake Dohm for pointing out this Vue resource.
Automatically Typed, Modular, and lightweight Store for Vue using the composition API with DevTools support.
A multi-select component with nested-options support for Vue.js.
Complete, flexible, extensible, and easy to use page transition library for your web.
The Shell Scripting Tutorial
This tutorial is written to help people understand some of the basics of shell script programming (aka shell scripting), and hopefully, to introduce some of the possibilities of simple but powerful programming available under the Bourne shell.
CSS clamp can be used for fluid typography
Min/max values in CSS for typography? Yes, you clamp()! Also see this post.