All RPGs and Storygames by Tod Foley are now available at DrivethruRPG. Bring these games to your table!
Here at ComputerMinds, we think of ourselves as Drupal specialists for the UK, but we don't limit ourselves to that. We offer clients a close working relationship and our general flexibility to get stuck into applying our skills to most problems. One of our clients, Alfresco, has come to trust us with more than just our Drupal wisdom. They wanted a new hub that would bring together documentation for a variety of their open source products, which are already on Github. Their documentation was written as Markdown files, so the hub would need to import and transform those files into HTML pages for the web. Essentially, a static site generator was needed.
For many of us at ComputerMinds, this was our first dive into working with React, let alone Gatsby itself. So the wonderful documentation and tutorials for Gatsby were a huge help. As our project was for displaying documentation, the Gatsby documentation site itself was a helpful influence on the eventual design and user interaction of our site.
- Hooking into the GatsbyJS lifecycle APIs
- Building our own custom source plugins for content in git repositories
- Using React's class components to be able to handle state
- GraphQL is a pretty neat way of getting at data, regardless of where it came from. The new schema customisation API will be really handy when it comes to pulling in known content structures... like those defined in Drupal.
No doubt someday we'll be turning our hands to bring the best of Gatsby and Drupal together! 'Headless', or 'decoupled' Drupal has become one of the new trendy ways to use Drupal. This means using Drupal to define your app's information architecture or as a content repository. Other applications can then connect to it to display content to users. Those applications could be made in Gatsby, React, Drupal, or almost anything else. We still feel this is usually only worthwhile when Drupal is used as a back-end system for multiple front-ends. But regardless we are looking forward to using GatsbyJS again!
The Drupal Matomo Reports module provides us the reports under reports menu( admin/reports/matomo_reports ). Using this module you do not require to go to Matomo Login. All reports can be seen from Drupal backend CMS.
CookieYes GDPR Consent module for Drupal 8.x. This module allows you to add CookieYes scripts from the front-end. You don't need to open any file for this purpose. This module adds CookieYes script on all over the site.
Potential replacement for Panels Everywhere, building on Layout Builder.
I'm very pleased to announce that we (hopefully) have a new help system in Core that will actually serve the needs of module, theme, and distribution developers! It is called "Help Topics", and is currently in "Experimental Module" status in Drupal core 8.8.x.
The way it works:
- Modules, themes, and distributions can have a help_topics subdirectory in their projects, where they can write help topics in the form of Twig template files. Each project can have as many topics as they want/need to document their project.
- The Twig files have meta-data (in HTML meta tags) at the top to define the title of the topic, whether the topic is "top-level" or not, and a list of other topics to mark as "related".
- When a user visits the admin/help page (assuming the Help and Help Topics modules are enabled), they will see a list of the top-level topics, and can click through to read them. When reading a topic, at the end they'll see a list of all the topics that are "related" (and "related" is automatically a bi-directional relationship).
So... The module is currently in "Experimental" status, and we need your help to get it to "Beta" and then "Stable" status in Drupal Core:
- Programmers can help with writing tests, adding features, and other tasks. Check out the "Roadmap to beta and stable" issue to find out what needs to be done.
- Documentation writers can help with writing and reviewing help topics for Drupal core (or eventually, contrib modules). Our first goal is to rewrite the existing "module overview" help as task-oriented topics -- that link is a meta-issue with instructions on how that is to be done, and a number of child issues where the work will be done. The result of that will be a set of probably disorganized and somewhat incomplete topics about how to accomplish various tasks using Drupal core modules. Then we'll need to reorganize the topics we have and most likely write a few more.
This effort is being led by andypost, Amber Himes Matz, and jhodgdon... if you have questions, we can all often be found on Slack or on drupal.org.
Call for papers (CFP) for conferenceCurrent functionality
* Webform template for call for papers
* Track chair user role
* Conversion of form submission to session nodes
* Track chair voting for proposals (public or locked)
Do you consider yourself an experienced Drupal site-builder?
Check yourself before reading this article. What modules’ switching on and off can help with Drupal SEO, Drupal security, Drupal performance and maintenance?
Now check the article and compare your answers!
Drupal 8 best practices: site-building
Version 1.9.0 of DDEV-local introduced the ability to share your local project online via a temporary, public URL using ngrok.
This allows you the ability to quickly and securely provide access to your local site to other developers and stakeholders as well as an easy way to test your local site on other devices.
ngrok is a service that exposes local servers behind NATs and firewalls via public URLs over secure tunnels. Once the small ngrok client is installed on your local machine, the ddev share command will enable the sharing and provide you with a public URL for your local site.
While there are paid tiers for the ngrok service, a free tier is provided with reasonable limits on usage. See the ngrok web site for details. In the first example, we'll utilize the free, anonymous tier.
The free, anonymous tier does not encrypt your data between your local and the ngrok servers, even though an https connection is provided from the ngrok servers to connected clients. Therefore, it is strongly suggested that once you get the free, anonymous tier working, create a free account and authenticate your local ngrok client to ensure your data is encrypted the entire trip.
Note that this is a one-time setup for your machine, and does not have to be repeated for each of your DDEV-Local projects.
Step 1: Install the ngrok client
Download and install the client specific to your OS from https://ngrok.com/download. While there are instructions to download and install ngrok on various operating systems, I found that using Homebrew (Mac OS X and Linux) was easiest:
brew cask install ngrok
If you're using Windows 10 and Chocolately, then I recommend installing with:
choco install ngrokStep 2: Sharing your local site
Run the following:
If successful, this command will return some information about the share, including public URLs with which you can access the site.
As requests are made to the site, the screen will update detailing each request.
Note that in the screenshot above, that the "https://94d5c548.ngrok.io" public URL is forwarding the insecure "http://127.0.0.1:32786". If we were to set up a ngrok account and authenticate our local ngrok client, it would be forwarding "https://127.0.0.1:32786" instead.
Use Crtl-C to stop the sharing.Additional ngrok features and functionality
Secure your data by signing up for a free ngrok account and then authenticating your local ngrok client with your account credentials using the command provided by the ngrok web site:
Once your local ngrok client is authenticated, the next time you do a ddev share, you'll be able to see that your connection uses https from end-to-end.
While the free ngrok plan is normally sufficient for smaller projects, paid ngrok plans include multiple users, custom domains and subdomains, additional connections, static IP addresses, and other features.
This tutorial is an excerpt from version 3 of Michael Anello's Local Development with DDEV Explained book - coming soon! Version 3 will include everything new to DDEV-Local through version 1.9.1. Pick up an electronic copy of Version 2 for less than $10 and you'll automatically get free access to Version 3.
Here's a recap of Acquia's webinar on content as a service held on June 27. Give it a read if you weren't able to attend it or just need a refresher.READ MORE
This module allows you to perform actions on grouped results.
"Action" is a plugin and you can create your own.
- HTML List
- Unformatted list
A simple migrate process plugin to transform text into lowerCamelCase format.
For example, change "Foo Bar" into "fooBar".