Drupal Planet

My LocalGov Drupal contributions for week-ending November 22nd, 2024

Beautifully crafted digital products and experiences that matter.

This week, lots of work on the LocalGov News module.

Need LocalGov Drupal services? Give Big Blue Door a shout.

Meetings and Meet-ups

  1. Merge Tuesday: We now have responsive tables in LocalGov Base!
  2. Netcall Working Group: I love these meetings, so many great ideas from the Netcall team. This meeting we chatted a lot about getting the design integration working with LocalGov Base, like we have with the ModernGov template.
  3. Tech Group Drop-in: Upgrading Drupal core is a bit of an issue at the moment after the release of Twig 3.14.0. We chatted about approaches to updating (especially for security releases) while waiting on a fix for Twig.

Code Contributions

  1. I LOVE having our CSS follow Drupal coding standards, but we don't have automated checks for this (yet). What we do have is a stylelint package that leverages Drupal core's CSS coding standards, but it needs to be manually run and updated. This week I did this manual task and linted all the CSS for LocalGov Base, LocalGov Scarfolk, LocalGov Microsites Base, and LocalGov NHS Base.
  2. We finally got the "Move components to Single-directory components" PR approved. Thanks to Christopher for all his work on this. I'm really excited to start moving our other components to use the same system.
  3. Something that has been on my mind for a long time (as in, years) was to create a template for a card view mode. This will mean the cards in the featured news, for example, can use this rather than trying to bend the teaser view mode to our will. At last, this week, I got around to writing a PR for this, which has come out very well.
  4. Following up from that, I noticed that when you are looking at featured news items on small screens, there is no vertical space between items, so I fixed that.
  5. And then, following up from this also, I created a PR to get the featured news items to use this new card template and view mode.
  6. Keeping with the news theme, we have an issue showing that news filters are sometimes in the left sidebar and sometimes in the right sidebar. This has bugged me for a while (thanks Maria for creating the issue) and I always end up on every site moving the blocks all to the left sidebar. So, I fixed that with a PR to say all news filter blocks should appear in the sidebar_second region.
  7. After chatting with the Netcall team, we decided to make the Netcall AI Widget module available on Drupal.org. This means that any organisation using Netcall will be able to use this module, rather than just LocalGov Drupal organisations. I rewrote the module and made an alpha release of it on Drupal.org.
  8. Once I had the module rewritten and posted to Drupal.org, I created an alpha release and the next day a beta release. The beta release allows us to leave the site wide parameter empty so we can have widgets that only appear on certain sections of the site and no global widget.

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

My LocalGov Drupal contributions for week-ending November 15th, 2024

Beautifully crafted digital products and experiences that matter.

LocalGov Drupal week + code contributions + getting elected on to the board of Open Digital Cooperative. It's been a busy week.

Need LocalGov Drupal services? Give Big Blue Door a shout.

Meetings and Meet-ups

  1. Tech Group Drop-in: All the talk today was about setting up load balancers, LocalGov Finders, and JavaScript.
  2. Tech Group Governance: A very detailed chat about moving to Drupal.org and how we can use the credits system to amplify organisations and individuals who are doing outstanding work.

LocalGov Drupal Week

This week was all about LocalGov Drupal week. 

In the session "Taking LocalGov Drupal to the next level", I was giving a demo of three the things I had been building recently, based on funding from Big Blue Door. They were:

  1. Live Previews for Microsites
  2. KeyNav Module
  3. App to test multiple URLs simultaneously with Axe Core

I also spent some time Monday morning preparing for the LGD + Netcall integrations presentation. I was responsible for the section on integrating Netcall's AI Widgets into Drupal and showing how you can add different AI widgets to different pages on your site.

Code Contributions

  1. Let's start off with a simple one. Chris created an issue in the elections module to let us know that the link provided to check ONS wards info had changed. So I hunted down the new link and created a PR to fix the issue. Let's hope the rest of the issues are as easy to fix this week.
  2. We've had an issue open for quite a while to improve the CSS for our tables. This is a bit tricky because it's hard to define what "improve" means (generally, we want table to be responsive on small screens), but also we don't know how tables are going to be inserted to our sites (wysiwyg, views, custom markup, etc) and don't know where they are going to appear (header, footer, blog post, sidebar, etc). One thing I do know is we have a "Table Field" module, so that definitely one place that tables will be inserted and I know they'll turn up then in the main body of a piece of content. So I created some CSS to at least have those tables get some horizontal scroll on small screens. It took a while to figure out the CSS as the demo tables are inside our layout containers, and it was these higher up elements that were forcing the tables to be wider than they should have been.
  3. I came back to an old battle of mine: add a parent field to the election content type. This will then allow us to place elections in whatever hierarchy of our sites we want to. I had a PR that added a custom field for parents, but we decided a few weeks at at a Merge Tuesday meeting that we'd use the "Services Parent" field instead, following the same pattern as LocalGov Directories. I have a PR ready for this now, but it is having a small issue with trying to use "Autocomplete Deluxe" instead of "Autocomplete". We'll get there.
  4. We got the "Convert CSS to use Logical Properties" PR merged, which I'm delighted with. Now all our CSS in LocalGov Base is using logical properties, which will mean less code to maintain and ensure our CSS is all fully-ready for any multilingual designs you can throw at it. Woo Hoo!
  5. Let's keep making things more accessible. Maria posted an issue to say the contrast between the background colour of the sidebar and the inputs for search/date/etc in the sidebar wasn't enough. We have a tiny PR to fix that now.
  6. I tackled the monster issue - start moving our components to use Single-Directory Components. This will be a great step towards making our design system truly componentised, but it's a tricky one to get started on when you have to consider the hundreds of sites already using our current way of doing things. Thanks to Christopher for leading on this. I think the PR is almost ready to merge.
  7. Now that we have our all CSS using logical properties, I was able to do a second sweep of the codebase to tidy up the CSS, so any property that had, for example, margin-left and margin-right both set to the same value on a class now has margin-inline set to that value instead. This is part of an initiative to have as nice small codebase that is easy to maintain but that is also less stress on the environment.
  8. Karl at Sheffield County Council was having some issues with permissions for his news editors. So I hopped on a call and sorted him out. I love these impromptu helping sessions that unblock people very quickly.
  9. I don't have a number 9, but I have big news for Number 10 ...
  10. I've just been voted on to the board of directors of Open Digital Cooperative, the custodians of LocalGov Drupal. I'll write a fuller blog post about this issue soon.

 

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

My LocalGov Drupal contributions for week-ending November 8th, 2024

Beautifully crafted digital products and experiences that matter.

I created a dashboard for testing multiple URLs at the same time using Axe.

Need LocalGov Drupal services? Give Big Blue Door a shout.

Meetings and Meet-ups

  1. Merge Tuesday: It was a quite week this week for PRs to review/merge, but good to spend the time during the meeting triaging some of the older issues so we could move them along or close them.
  2. LocalGov Accessibility Meetup: I think this was the most interesting a11y meet up we have had so far. We discussed - in great detail - how to make cards accessible.
  3. Tech Group Drop-in: This was shaping up to be very interesting - about 10 people on the call - but I had to drop out early so missed most of it.
  4. Netcall Working Group: We met up to discuss our presentation for LocalGov week next week.

Code Contributions

Next week is LocalGov Drupal week, and I am part of a number of presentations during the week. One of the things I'll be demoing is the "Axe Thrower" application I have been working on. It allows you to test multiple URLs at the same time using the Axe library. I call it "Axe Thrower" because we can throw a load of URLs at Axe! Clever, innit?

After this week, I have the codebase in a much tidier place, and many more features on the dashboard. For example:

  • The summary at the top of the dashboard lists how many issues were found in total, how many issues for each severity level, how many issues for each issue type, and more.
  • Issues are grouped by issue type - all colour contrast issues together, all aria-label issues together, etc - so you can focus on fixing all issues of a certain type at the same time.
  • There is now a modal/dialog to show you the details of each instance of each issue for each URL.
  • The layout have been redesigned so it's much easier to see what's where.

After that I spent some time working on the LocalGov Microsites Base theme.

 

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

LocalGov Drupal (LGD): A Digital Public Good Transforming Government Services

The Confident Logo, Drupal Agency led by Mark Conroy

LocalGov Drupal is the epitome of the principles of a Digital Public Good.

A post on LinkedIn from Paul Johnson last night compelled me to write this blog post about LocalGov Drupal as a Digital Public Good.

LocalGov Drupal (LGD) is a groundbreaking, open-source platform designed specifically for local government digital services. Built on the Drupal content management system (CMS), LGD enables municipalities to offer more accessible, efficient, and community-centered online services. This platform is not just an innovative tool for local governments; it also embodies the principles of a Digital Public Good (DPG) - a designation formally awarded to Drupal itself in 2023.

Let’s explore why LocalGov Drupal qualifies as a digital public good, its roots in the Drupal ecosystem, and how it empowers local governments to serve communities more effectively.

What is a Digital Public Good?

A Digital Public Good (DPG) is defined as software, content, data, or standards that meet specific criteria for accessibility, quality, openness, privacy, security, and relevance to the United Nations' Sustainable Development Goals (SDGs). DPGs are created to be freely accessible, enabling people and institutions globally to leverage them for social good. By making powerful technologies available as public goods, DPGs promote equity and digital inclusivity.

Drupal was formally recognized as a DPG in 2023, affirming its commitment to these principles. This recognition strengthens the status of any system built upon Drupal - like LocalGov Drupal - by association.

LocalGov Drupal (LGD): Built on Open Principles

LGD is a platform tailored for local government use, allowing municipalities to manage and present their digital content in a way that’s responsive, easy to navigate, and accessible to all. By leveraging the flexibility and scalability of Drupal, LGD addresses a critical need in government technology: the ability to deliver digital services that are user-focused, inclusive, and cost-effective.

The LGD project exemplifies the key attributes of a digital public good in the following ways:

  1. Open Source and Free Access
    LocalGov Drupal is open-source software, freely available for anyone to use, modify, and share. This aligns with the open-access criteria of a DPG, enabling local governments - regardless of budget constraints - to provide high-quality digital services to their constituents.
  2. Collaborative Development for Public Good
    LGD is built and maintained by a community of developers, designers, and government stakeholders who collaborate to improve the platform continuously. This collaborative model fosters innovation, reduces duplication of efforts, and ensures that all improvements benefit the entire community.
  3. Accessibility and Inclusion
    Built with accessibility as a priority, LocalGov Drupal allows local governments to provide digital services that meet or exceed web accessibility standards. This focus on inclusivity ensures that digital services are usable by people with disabilities, enhancing equitable access to information and services—a core principle of digital public goods.
  4. Alignment with Sustainable Development Goals
    LocalGov Drupal supports the United Nations' SDGs, particularly Goal 16 (Peace, Justice, and Strong Institutions) and Goal 10 (Reduced Inequalities). By facilitating transparent, accessible, and accountable digital services, LGD strengthens government institutions and bridges digital divides within communities.
  5. Security and Privacy
    With security and data privacy as key priorities, LGD is regularly tested and updated to maintain high security standards. Local governments using LGD can be confident that their services are protected and comply with stringent data protection laws and regulations.

Why Drupal’s Recognition as a DPG Matters

Drupal’s designation as a DPG in 2023 reinforces the credibility and value of platforms like LocalGov Drupal. Drupal’s established reputation for quality, openness, and global accessibility also extends to LGD, highlighting it as a trusted solution for government services. This DPG recognition assures users - whether local government leaders or community stakeholders - that LGD adheres to highest standards for ethics, security, and inclusivity.

Looking Ahead: The Future of LGD as a Digital Public Good

LocalGov Drupal represents a vision for the future of government technology: one that is open, collaborative, and built with the community in mind. As more governments adopt LGD, it will continue to grow and evolve, bolstered by its foundations in Drupal’s recognized DPG status. This recognition underscores the role of LGD in promoting inclusive digital infrastructure and sets a precedent for other government platforms aiming to follow the DPG model.

LocalGov Drupal not only meets the standards of a digital public good but serves as a powerful example of how open-source solutions can drive digital transformation in the public sector. As a model of transparency, inclusivity, and community-driven development, LGD is truly a public good for a digital age.

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

Why Your Council Should Consider LocalGov Drupal for Your Website’s CMS

The Confident Logo, Drupal Agency led by Mark Conroy

Let’s explore why it’s the CMS of choice for councils across the UK!

In today’s world, digital presence is more than just a checkbox for councils, it’s a key part of delivering services and staying connected to the community. But finding the right Content Management System (CMS) for your council website can feel like searching for a needle in a haystack. You need something that’s robust, flexible, secure, and designed to meet the unique needs of local government. This is where LocalGov Drupal shines. 

1. It’s Designed For Councils, By Councils

One of the standout qualities of LocalGov Drupal is its deep understanding of council needs. Developed with input and collaboration from numerous UK councils, LocalGov Drupal addresses the real-life challenges and requirements councils face in providing services online. It’s been designed around the types of content and services that matter most to councils, from service directories to news updates to consultations. Instead of using a generic CMS and trying to shape it to fit your needs, you’re starting with a foundation built around the way councils actually work.

2. Cost Savings for Your Council

Budgets are always tight in the public sector, and traditional CMS platforms can be costly—not just in terms of licensing but also with custom development, ongoing support, and upgrades. LocalGov Drupal is open-source, meaning there are no licensing fees to worry about. You’re free to modify, customize, and build on it without incurring high costs. Plus, councils using LocalGov Drupal often report reduced development costs since much of the functionality they need is already built-in or can be easily added. These cost savings make it easier to invest in other areas, benefiting both the council and the community.

3. A Community-Driven Platform with Knowledge Sharing

One of the most valuable aspects of LocalGov Drupal is its vibrant community of councils working together to improve and share ideas. When you adopt LocalGov Drupal, you’re not just getting a CMS—you’re joining a community. Councils share their experiences, ideas, and even code updates, so everyone benefits from each council’s contributions. This collaborative approach means new features, best practices, and innovations are constantly emerging. Instead of facing challenges alone, your council can tap into the experience and support of other councils who have faced (and solved) similar issues.

4. Highly Accessible and User-Centric

Accessibility is at the heart of LocalGov Drupal, which is critical for councils aiming to serve all members of their communities. Built with WCAG 2.1 compliance in mind, LocalGov Drupal makes it easier to deliver a website that meets modern accessibility standards. It offers the tools you need to create an inclusive digital experience, ensuring that people of all abilities can access services and information seamlessly. This isn’t just about compliance; it’s about inclusivity and making sure your council is there for everyone.

5. Flexible and Scalable to Meet Growing Needs

Councils serve diverse and ever-changing communities, and LocalGov Drupal is flexible enough to keep pace. It’s a modular CMS, so councils can pick and choose the features they need, tailoring the platform to their unique requirements. Plus, as your council’s needs grow, LocalGov Drupal can scale with you. Whether you need to expand your site, add new features, or manage increased traffic, this platform is built to grow with you.

6. Top-Notch Security and Stability

Security is paramount for any government website, and LocalGov Drupal takes this responsibility seriously. Built on the trusted Drupal platform, LocalGov Drupal benefits from robust security protocols and a dedicated security team constantly monitoring and updating the platform. Councils can rest easy knowing they’re using a CMS that meets high standards for security and stability, making it a safe choice for handling sensitive data and safeguarding your council’s reputation.

7. Proven Success Stories Across the UK

The proof is in the pudding, and numerous councils across the UK have already made the switch to LocalGov Drupal with impressive results. Councils like Croydon, Brighton, and Bracknell Forest have embraced LocalGov Drupal and seen improvements in user experience, efficiency, and service delivery. These success stories show that LocalGov Drupal isn’t just a theoretical solution—it’s a proven CMS that works in real-world council settings.

8. Easy-to-Use for Non-Technical Staff

Councils need a CMS that doesn’t require a team of tech wizards to manage. LocalGov Drupal is designed with non-technical users in mind, so your staff can easily create, edit, and manage content. This user-friendly approach empowers your team to focus on delivering value to the community rather than wrestling with complicated systems. Plus, with a wide range of training and support resources available, onboarding and ongoing training are a breeze.

9. Environmentally Conscious

LocalGov Drupal aligns with many councils’ commitments to sustainability. Being open-source and community-led, it reduces duplication of efforts and allows councils to share resources, which contributes to a smaller digital footprint. By reducing waste and sharing resources, LocalGov Drupal helps councils contribute to a more sustainable and eco-friendly future.

Making the Switch

Switching your CMS might sound like a big move, but LocalGov Drupal offers councils an opportunity to transform their online presence in a way that’s community-focused, budget-friendly, and future-proof. With the support of a like-minded community and a feature set designed specifically for councils, LocalGov Drupal is a platform built to help councils succeed.

So, if your council is exploring CMS options, consider giving LocalGov Drupal a closer look. Join the councils who are already benefiting from this open-source solution and see the difference it can make in your digital journey. Together, we can build stronger digital communities, one website at a time.

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

Live Preview Module for LocalGov Microsites is Beta Ready

Beautifully crafted digital products and experiences that matter.

As I said on linked in, this week my brain was fried and also buzzing while working on getting a beta release of the LocalGov Live Preview module.

Need LocalGov Drupal services? Give Big Blue Door a shout.

Meetings and Meet-ups

  1. Merge Tuesday: A very interesting meeting this week, no major items merged but lots of small items that have been in PR-purgatory for a while got looked at and merged, which is very helpful.
  2. Quality Metrics: Another very good chat this week about bringing quality metric data into LGD - readability, broken links, etc.
  3. Microsites Meet up: We discovered a regression where aliases set for microsites pages are not being respected.
  4. NetCall Converse Walk-through: Honestly, the more I see of this platform, the more impressed I am.

Code Contributions

This week I tried to focus on the Live Preview feature for LGD Microsites. I think this is going to be really useful as part of the Editor Experience mission for microsites admins, once we get it stable.

  1. I moved all the microsites-specific items to a sub module. This means we can have a base module with low-level functionality, such as theming the settings tray, and this can be shared across any platform that uses the module - LGD CMS or Microsites.
  2. Then I re-created the "Edit Microsite Design" tab to use a routing file and some permissions so it's not visible all the time (and has a nice fallback if JavaScript fails to load).
  3. Then I set up a custom form mode for live previews, so we don't have "all the fields" in the off-canvas tray when editing the design of the microsite.
  4. Next up was to update the README.md so people will know how to use the module.
  5. And finally I created an uninstall function to remove the custom "Live Preview" form mode if we uninstall the module, so we then won't have any conflicts if someone decides to later re-install the module.
  6. After that I created a Beta release of the module so I can get a few more testers to try it out before we tag it as being stable. If you'd like to try it, you can do so via composer require localgovdrupal/localgov_live_preview:^1.0.0@beta.

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

My LocalGov Drupal contributions for week-ending October 18th, 2024

Beautifully crafted digital products and experiences that matter.

This week was powered by the letter M and the noun "meetings".

Need LocalGov Drupal services? Give Big Blue Door a shout.

Meetings and Meet-ups

  1. Merge Tuesday: We got the 1.8 branch of Alert Banner merged and released. This is a great news, as it's a rewrite of the Alert Banner module using more modern Drupal paradigms (and has lots of modern JS in it, which makes my frontend heart happy).
  2. Quality Metrics: We had a really energising meeting about the metrics modules that are available for Drupal that we would could look at making available in LocalGov Drupal - such as reading age, broken links, spell checker, etc.
  3. Tech Group Drop-in: Lots of talk about options for image carousels for LocalGov Microsites.
  4. Netcall Working Group: We demoed the work I have been doing on the Netcall AI Widget module and started mapping out a process to bring Netcall data directly into your LGD website.
  5. Community Meetup: Lots of good news this month in the LGD community - website launches, new events channels, and I got to demo 3 things I have been working on:
    1. LocalGov Replicate module
    2. LocalGov KeyNav module
    3. Netcall AI Widget module
  6. Global Open Source Gov Community: This was the first meeting of an initiative to build a community of open source government organisations. We had people attend from Mexico, Canada, Greece, Columbia, Switzerland ... the full spectrum. I hope this takes off.

Code Contributions

  1. I built an integration for the Netcall AI Widget a while ago. Last week LGD got access to our own ConverseCX instance, so I can test it properly. However, I needed to build some AI Widgets first to test, which was fun and an interesting learning experience. I'm pretty amazed at how powerful the whole Netcall suite is and looking forward to writing more integrations for it. And I'm delighted to report that after a little bit of trial and error, I was able to properly test my module and we now have ... a process to show different AI Widgets on different pages, including a general widget as a catch all for all pages not showing specific widgets.
  2. Our Alert Banner module has a JavaScript file that uses jQuery instead of modern JS. That's been on my mind for a while to get rewritten. Now that we are almost ready for a new version of the LocalGov Alert Banner module, I got the chance to create a PR to remove the jQuery, but also modernise the JS with Drupal Behaviours and once, etc while I was at it.
  3. Councils often ask for their facets on directories to not submit/refresh the page until users have finished selecting all the facets they want. To achieve this Andy and Adnan worked on getting the Drupal Facets Forms module working with our facets. Then they created an issue so the frontend of it would play nicely, so I created a PR for that issue. And now everyone is able to sleep soundly!
  4. I want to start rewriting our CSS to use logical properties, so we have less to maintain and we send less to the server. That's good for developer ergonomics and also good for the environment. To get this started, I rewrote the css for fields.css and created a PR for it. Once merged, I'll rewrite the rest of the codebase.
  5. Our Events template in LocalGov Microsites Base uses a full copy of the LocalGov Base event template just to add a block for the breadcrumbs. However, this means if we make any updates to the LocalGov Base template, the LocalGov Microsites Base template will not avail of them. To get around this, I created a PR in LocalGov Base to add a Twig block for the breadcrumbs so then I could create a follow-up PR for LocalGov Microsites Base to extend from the LocalGov Base theme and just use the Twig block to inject the breadcrumbs.

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

Cloning Content in a LocalGov Drupal website

Beautifully crafted digital products and experiences that matter.

This week as part of my "Editor Experience" work for LocalGov Drupal, I worked on creating a feature to allow editors to clone pages of their sites.

Need LocalGov Drupal services? Give Big Blue Door a shout.

I spent last week and this week working mostly on editor experience issues for LocalGov Drupal. Last week was small bug fixes and features, and this week I spent my time getting a new module created that would do two things:

  1. Allow site owners decide what content types could have their content cloned, and
  2. Allow site editors to then clone pages from those content types.

This is a feature request that councils have been asking for for quite a while.

Why Clone Content?

Often on a council website you could have a lot of events and you might want to have all the same info for the events, but a different date, image, and signup link. Being able to clone a default event is a great time saver in this case.

You might also have a number of landing pages which can be time consuming to create - banner, related links, quick links, etc. In terms of consistency it's very handy to be able to create a template landing page, then clone it each time you need a new one.

How does it LocalGov Replicate module work?

It's quite simple. You install the LocalGov Replicate module - available via composer require localgovdrupal/localgov_replicate. Then go to the settings page admin/config/content/localgov-replicate, choose what content types you want editors to be allowed to replicate.

Now when you visit any nodes of these types, there will be a new tab (besides the "View | Edit | Delete" tabs) called "Replicate". When you click on that it will:

  1. Create a copy of the current page, and
  2. Bring you to that new version of the page so you can start editing it, and
  3. Leave the new page unpublished until you are ready to publish it.

Node Clone Vs Entity Clone Vs Replicate

We chose the Replicate module to use for this feature. Node clone will only clone nodes and we might in the future want to clone more entities, such as custom entities.

Entity clone will clone entities, but would clone the each entity on the page at the same time.

Replicate is an API-first module, without a UI (you can install Replicate UI if you want), but gives us full control over everything we want to do with our cloning feature.

Is it feature complete?

Nope, not by a long shot. 

I have one major issue with it at the moment, which is that the "Replicate" tab is showing up for all content types no matter what you choose on the settings page. 

Once I get that solved, I need to see what happens when you clone nodes with media and other entities in them. I guess we want to reference media, taxonomy, etc, but we want to clone paragraphs. Then we've the trickier question of reusable paragraphs in our "Page Components" module which I guess we also want to reference rather than clone, so if we update for example an address, it will update everywhere.

Thanks to Big Blue Door for sponsoring my time to work on this.

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

My LocalGov Drupal contributions for week-ending October 4th, 2024

Beautifully crafted digital products and experiences that matter.

This week, I spent my time mostly looking at issues tagged with "Editor Experience".

Need LocalGov Drupal services? Give Big Blue Door a shout.

Meetings and Meet-ups

  1. Merge Tuesday: We still don't have LocalGov Base 1.7.0 released, but are very close once we get the adjacent PRs for LocalGov profile and Microsites profile all merged at the same time. Hopefully we'll get there by the end of the week.
  2. Accessibility Meetup: Maria from Agile Collective gave a really good presentation about the use of colour on our websites. And we recorded it, so do go watch it back.
  3. Tech Group Drop-in: I hosted the meeting again this week - I'm getting used to that now - and we talked about facets, carousels, and default themes for microsites.

Code Contributions

  1. We've been going around and around with an issue for moving the "Files" tab from the content tabs list to the media tabs list. We decided at the Product Group meeting last week to add an update hook to move it for existing sites as well as new installs, and create release notes to let people know why. So ... that's done now, hopefully we'll get it merged at Merge Tuesday tomorrow.
  2. Another kind of lingering issue was adding masquerade module vs msqrole module to our default installation. At the Product Group meeting last week we decided to go with masquerade module since it now has security team coverage and is the preferred choice from the Drupal Startshot initiative. With that being the case, we now have a PR for this.
  3. I updated last week's PR to enable the LocalGov Base Helper module for LocalGov Microsites Group, so it now does it via an update hook instead of in the info.yml file.
  4. I enjoyed spending some time this week researching solutions for a "What other pages on my site link to this page?" feature that we want to add to LocalGov Drupal. What wasn't quite so enjoyable was my findings - a module to do what we want, in the way that we want it, does not exist.
  5. Alistair Wearing has written a nifty PR for us to add the icons for accordions via Twig templates instead of JS so it is much easier to override and maintain if you want to. Once we get that merged, I've a few follow-up issues I'd like to consider as well - such as placing the title of the accordion inside the button and placing the icon for the accordion outside the button.
  6. Our 1.7.0 release of LocalGov Base is going to have a helper module along side it, so we can have update hooks in themes, basically. But this is needing a lot of coordination between the default profile the default theme the microsites profile and the microsites theme. After a lot of reviewing of a PR on microsites, it looks like we're just about there now.
  7. Paul McCrodden has been helping us out with some PRs, working through some of the "Good first issue" items to get himself up to speed with how we work. It's been great to mentor him and help him find issues to work on, and even approve some of his PRs. Thanks Paul.
  8. And that then got me thinking about a larger clean-up issue for us - use logical properties for all our CSS. This will mean a smaller codebase to maintain, but also an easier codebase to maintain. No more [dir="rtl"] styles.
  9. We are working hard on "Editor Experience". One issue was trying to make it easier to link to documents from your media library. I've created a PR for this now, so you can add simple links to documents. If you want a more complex display of the document (including metadata, etc) you can still do that via the standard media embed.

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).

My LocalGov Drupal contributions for week-ending September 27th, 2024

Beautifully crafted digital products and experiences that matter.

I spent a lot of time this week working on LocalGov Base. It's great to have a strong core that all other themes can build upon.

Need LocalGov Drupal services? Give Big Blue Door a shout.

Meetings and Meet-ups

  1. Merge Tuesday: We had a monster mash of reviewing and merging LocalGov Base code after all the PRs I got created yesterday. I love seeing issues being created, fixed, and merged so quickly.
  2. Product Group meet-up: So many cool things coming up in LGD. Today we talked a lot about our on-going "Editor experience" mission.

Code Contributions

  1. My old friend Paul McCrodden has just joined us and is starting to help us out with some of the issues on GitHub. It was great to spend some time getting him up to speed and doing general mentoring work to find issues for him to work on.
  2. Having spent all of last week working on the LocalGov Live Preview module, my GitHub notifications were well-amassed this week, so lots of time was spent on issue triaging and responding to comments/issues/PRs.
  3. We had been printing the navigation for step-by-steps and guides in our print.css. Jonny reckoned we should not be printing these items and created an issue for it. I agreed with him, so created a PR to remove them from the print stylesheet.
  4. Maria created an issue to let me know that when you create a blockquote via the WYSIWYG, there is no styling added to it so people may not know it is a quote. This seems like something easy to fix, except we also have a "Pull Out Quote" component which creates a blockquote and that does have CSS for it. The conundrum is then how do we style general blockquotes, without affecting our pull out quotes? I think I got a pretty-elegant solution.
  5. Another tricky accessibility issue was created by Lauri, saying that the quick fact component does not have a proper semantic hierarchy. This showed up two issues for me - I'm not sure what any particular item in the quick fact component should have for it's semantic element besides p and we thought we were printing the main content of it in a p but weren't. We now have a PR to fix that, but I feel we might need more discussion to figure out if a more specific element would be more appropriate.
  6. Some of our JS code was written at a time when we were explicitely supporting IE11. We have moved on from explicit support to "let's not intentionally break it" support, so I'd like to start getting our transpilers and *.es6.js files removed. This will mean we'll serve more modern JS but also mean it will be a lot easier for people to contribute to the project since they won't have to get set up with transpilers and polyfills. Here's a PR to show what I mean for LocalGov Alert Banner module.
  7. The "View map" link on service landing pages opens in a new tab, which can be disorientating for people, especially screenreader and assistive technology users. Maria created an issue for this, and I created a PR for screenreaders to announce that it is an external link and also that it opens in a new tab.
  8. We got the large PR to add a sticky header feature to LocalGov Base merged at last, and also a corresponding PR in LocalGov Core to enable a LocalGov Base helper module, but after that we realised we need to come up with a similar strategy for LocalGov Microsites. So ... that's thrown a spanner in the works. Hopefully a PR for LocalGov Microsites Group module will suffice to fix this issue.
  9. Our step-by-step pages show sighted users which step is the current step in the sidebar navigation. However, we don't give the same affordance to non-sighted and screen reader users. Well, we used to not, but now we do!

Join the "Something nice ..." newsletter

The full title is "Something nice, something quirky, something else".

I send an email once a week with something nice, something quirky, and something else that I think is interesting (all with a web development theme, of course).