All RPGs and Storygames by Tod Foley are now available at DrivethruRPG and RPGnow. Bring these games to your table!
We're Drupalers who only recently started digging deep into CiviCRM and we're finding some really cool things! This series of videos is meant to share those secrets with other Drupalers, in case they come across a project that could use them. :-)
You may recall the blog post that David put out way back in August 2017. He gave some very detailed instructions on how you can install CiviCRM on Drupal 8!
We have some new Drupal versions released since August, and we've had some requests to demonstrate how to go through some of the steps. So, I'm going to do just that!
Every step will be followed quite literally. Note that David assumed this was being installed on a development system running Linux. Since I'm running a Mac, this should be a great cross-platform test.
Watch the screencast to see if I run into any issues with the instructions:Video of CiviCRM secrets for Drupalers: Screencast of Drupal 8 + CiviCRM Installation
Some highlights from the video:
- Very quick install of Drupal 8 on a Mac running MAMP
- Download and installation of CiviCRM
- Brief comments along the way as I follow the steps
- Finish with a working Drupal 8 + CiviCRM site!
Please leave a comment below!
The blog is follow up on our previous post “My First Impression of Learning AngularJS” where I shared my experience of working in AngularJS. This blog is intended to take you one step ahead and have a better understanding of basic operation workflow. In Angular, we have a concept of ‘Data-binding’ that means synchronization of data between a view to model or model to view (technically).
From the business perspective: Change in the logic (backend) impacts front-end (view) and vice versa.
This article is the first in a series about different Continuous Integration implementations for Drupal 8 projects. Each installment will pick a CI technology and go over its pros and cons for implementing the following set of jobs when someone creates a pull request:
- Run unit and kernel tests.
- Generate a PHPUnit coverage report.
- Check Drupal's coding standards.
- Update the database and run Behat tests.
In this article, we will start with CircleCI, a SaaS platform. Thanks to work initiated by Andrew Berry at drupal_tests—if you maintain a Drupal 8 module, check it out—I can present you a single-command installer to get your Drupal 8 project started with Continuous Integration using CircleCI.
Here is a clip where I take a vanilla Drupal 8 project created with composer-project, I run the installer and commit the files, and when I allow CircleCI to watch the repository I see the jobs running:Videos require iframe browser support.
For details on how to run the installation script and connect your repository with CircleCI, have a look at the repository's README.Killer features
Once you have the setup in place, your project will benefit right away from the following features:Less infrastructure to maintain
When code is pushed to a GitHub repository, CircleCI takes care of spinning up and tearing down containers for each of the jobs that you have defined in the CircleCI configuration file. CircleCI provides a set of pre-built images for you to use on your project but you can use a custom Docker image if you need it. For example, here is the Dockerfile that the installer script uses:# This is the parent image, located at https://hub.docker.com/_/drupal FROM drupal:8.4-apache # Install libraries and extensions. RUN apt-get update && apt-get install -y \ imagemagick \ libmagickwand-dev \ mariadb-client \ sudo \ vim \ wget \ && docker-php-ext-install mysqli \ && docker-php-ext-install pdo \ && docker-php-ext-install pdo_mysql # Remove the vanilla Drupal project that comes with the parent image. RUN rm -rf /var/www/html/* # Change docroot since we use Composer's drupal-project. RUN sed -ri -e 's!/var/www/html!/var/www/html/web!g' /etc/apache2/sites-available/*.conf RUN sed -ri -e 's!/var/www!/var/www/html/web!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf # Install composer. RUN wget https://raw.githubusercontent.com/composer/getcomposer.org/f3333f3bc20ab8334f7f3dada808b8dfbfc46088/web/installer -O - -q | php -- --quiet RUN mv composer.phar /usr/local/bin/composer # Put a turbo on composer. RUN composer global require hirak/prestissimo # Install XDebug. RUN pecl install xdebug-2.5.5 \ && docker-php-ext-enable xdebug # Install Robo CI. # @TODO replace the following URL by http://robo.li/robo.phar when the Robo team fixes it. RUN wget https://github.com/consolidation/Robo/releases/download/1.1.5/robo.phar RUN chmod +x robo.phar && mv robo.phar /usr/local/bin/robo # Install Dockerize. ENV DOCKERIZE_VERSION v0.6.0 RUN wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \ && tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \ && rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz # Install ImageMagic to take screenshots. RUN pecl install imagick \ && docker-php-ext-enable imagick Status badges
By adding a CircleCI status badge to your project’s README file, you can check whether the main branch is stable or not:undefined
This is useful when creating a new release. If the badge is red, then you need to investigate what’s going on. Beware, there is an open bug in CircleCI that may display the green PASSED badge even when one of the jobs in a workflow has failed. Until this gets fixed, click on the badge to double check that everything passes.Version control
CircleCI’s jobs live within the project repository under the .circleci directory, which makes it easy to track changes in the jobs and make them evolve along with the project.Intelligent reporting
CircleCI is intelligent at presenting job artifacts. Here are some screenshots:Failed tests
By storing test results as artifacts, CircleCI can parse them and present them in the browser:undefined Links to screenshots taken by Behat
By using the Behat Screenshot extension and storing the screenshots as job artifacts, we can see them as a list of links in the browser:undefined
Here is what we see when we click on the highlighted link above:undefined Coding standard violations
CircleCI can parse the Code Sniffer report and present a summary of Drupal coding standard violations:undefined Test coverage reports
By generating an HTML PHPUnit report and exposing it as an artifact, we can see a link to the report at the CircleCI web interface:undefined
The highlighted link above shows the following report which describes how much of the code is covered by tests:undefined Running CircleCI jobs locally
CircleCI offers a command line interface for running jobs locally. This is a big time saver as it gives you a chance to test and debug a job locally before pushing your changes.undefined Ready to take off!
Do you have a Drupal 8 project and want to try Continuous Integration with CircleCI? If so, follow the instructions at the Drupal8CI repository and start writing tests and getting the jobs to pass. If you find issues or add improvements, please either post a comment here or contribute them to the repository. Happy CI-ing!Acknowledgements
- By : Ganesh
- Date :17-01-2018
The De Overheid.nl Web Metadata Standaard (OWMS) is a Dutch standard for information on the internet about the Dutch government. By using this standard, different websites can link their information in a coherent way.
Currently the module provides the following functionality:
- Saving and automatically updating a specific list of values provided by OWMS into configuration entities.
- Exposing the values of those lists in a custom 'OWMS' field.
- Detecting deprecated values used on the website.
With the Atlas module you can upload images (type: *.jpg, *.png) and mark areas on these images and connect them with a search. Therefore the Solr-Module is required.
CNPJ stands for "Cadastro Nacional de Pessoas Jurídicas", and it's the id for Brazilian companies.
This module provides a constraint and a widget for this fields.
Sa11y allows site-wide a11y checking and per-node inline error reporting to better help you make your site accessible.
This module changes the currency decimal definitions in a Drupal Commerce 7 shop.
It is a lightweight sibling of Commerce Currency Settings and has only 2 global setting available on admin/commerce/config/currency:
Tired of your database filling up with orphaned Paragraph entities?
This module is for you.
A single module file with 3 hook implementations, this module implements a naive, rudimentary approach to cleaning up paragraphs.
If you save a node (or any other entity) on which you've removed a reference to a paragraph entity, the paragraph entity will be deleted.
If you don't want to delete orphaned paragraphs, or if you're re-using paragraphs among different entities, then don't install this module.
Makes it possible to have custom files in your translations directory, and therefore also to deploy translations.
With so many shiny new Drupal 8 modules emerging this year, we were hard pressed to pick our recommendations for 2018. It came down to asking ourselves: which modules are we excited about implementing in 2018… the ones that will make our projects better, faster, smarter brighter? Read on for our list of Drupal 8 modules we're excited about.Configuration Split
The Drupal Configuration Split module makes Drupal 8 configuration management more customizable. This means you can set up some configurations that can be edited on the live site, without interfering with your configuration management workflow. Instead of importing and exporting the whole set of a site’s configuration, the module enables you to define sets of configuration to export to different directories that automatically merge again when they are imported.Content Workflow
If you’ve shied away from implementing complicated workflows in the past, you’ll enjoy how the Content Workflow module makes it easy to set up a simple workflow. This core module enables you to streamline the content publication process by defining states for content (such as draft, unpublished and published) and then manage permissions around these states.Deploy
The Deploy content staging module makes it easier to stage and preview content for a Drupal site. It’s often used to deploy content from one Drupal site to another. Redesigned for Drupal 8, the new version is based on the Multiversion and Replication modules, making it more efficient and flexible.Drupal Commerce
The new full release of Drupal Commerce has us very excited to start building ecommerce sites in Drupal 8. Fully rebuilt for Drupal 8, the new Drupal Commerce module doesn’t presume a specific ecommerce business model, enabling developers to customize the module to suit a merchant’s needs.JSON API
The JSON API module formats your JSON requests and responses to make them compliant with the JSON API Specification. This module is the key to setting up Drupal as a backend so you can implement the font-end with React or your front-end platform of choice.Schema.org Metatag
Ramp up your SEO with structured data that helps Google categorize and display your pages. The Schema.org Metatag module allows you to add and validate Schema.org structured data as JASON LD, one of Google’s preferred data formats.UI Patterns
If you’re looking for a way to implement an ‘atomic design’ in Drupal the Drupal UI Patterns project is a nice option. It consists of six modules that allow you to define and expose UI patterns as Drupal plugins. You can use them as drop-in templates for all entity types — paragraphs, views, field groups and more.Webform
The Drupal webform module has a new release candidate for Drupal 8. A ton of work has been put into the module; it’s like a whole form-building application inside your Drupal site. Quickly integrate forms into any Drupal 8 website. enables you to build, publish and duplicate webforms. You can also manage and download submissions, and send confirmations to users.Which Drupal 8 modules are doing it for you?
We’d love to hear about which Drupal 8 modules your team is excited about. Leave us a comment.
+ more awesome articles by Evolving Web
This module provides the Minimal HTML text format, a rich text (WYSIWYG) format well suited for basic uses like short text fields and admin-configurable text areas.
It allows only a few HTML tags: <a href hreflang> <abbr title> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd>
This is a utility module that simply provides the fullcalendar (3.x) and fullcalendar (1.x) scheduler libraries to other modules. If either library is not locally installed under /libraries, it will provide it via a CDN.