Sector(s)

Team Members

Project Team

Jonathan Noack
Leo Röttele
David Planchon
Pascal Steiner
Thomas Nagy
David Schmidt
Rebecca Borer
Manuel Neubauer
Ilona Keller

Visit the site

Visit the site

Community contributions

As part of the project, the team developed the blökkli Editor, a powerful tool that enhances real-time, visual layout editing for decoupled Drupal sites. In addition, the blökkli Paragraphs module and a comprehensive blökkli Starterkit were released to support broader adoption and ease of integration.
The team also contributed improvements to several existing open-source modules, including Nuxt Multi Cache, GraphQL Core Schema, and Vuepal, helping strengthen the Drupal and frontend development ecosystem.
To share their experience, the team presented their insights and technical learnings at DrupalCon Barcelona, further contributing to the open-source community.

The Canton of Basel-Stadt in Switzerland relaunched its official website, bs.ch, with an unwavering commitment to user-centred design. By radically rethinking the information architecture and enabling a fully decoupled headless Drupal setup, the new platform prioritises both end-users and over 300 content editors. The result is an intuitive, high-performing, and accessible public website that sets new standards for digital government communication.

About the project

The previous bs.ch website, built on Magnolia, was no longer meeting the needs of either the public or the administration. Liip and the Canton of Basel-Stadt collaborated to deliver a modern, intuitive, and editor-friendly digital presence. With clear UX principles, a content governance strategy, and a decoupled technical architecture, the result is a highly performant site that makes public information accessible and easy to find.

Key architectural changes included switching to Drupal 10, using a Vue/Nuxt frontend via GraphQL, and developing the custom “blökkli Editor.” The design is fully responsive and accessible, supported by a reusable design system across the canton’s digital services.

In addition, Basel-Stadt is the first Swiss canton to introduce an AI chatbot on its website with Alva. The intelligent assistant answers enquiries around the clock with precise, source-based information - a significant step towards modernising administrative services. Through Alva, citizens can access high-quality support anytime, making government services more accessible than ever.

Goals
The project aimed to deliver an intuitive, user-first experience for citizens navigating public administration services. At its core was an information architecture designed around the real needs of the population, ensuring clarity and ease of use in a complex governmental context. In parallel, the team established a scalable and maintainable technical foundation—one that supports future development and ensures long-term reliability. Another key objective was to foster effective collaboration among more than 300 editors across various departments, enabling smooth and consistent content management. Finally, the platform was built to guarantee accessibility and ensure clear, inclusive communication across all digital touchpoints.

Requirements
The relaunch of bs.ch required a complete redesign of both the technical and information architecture, with a radical focus on user needs. Navigation had to support direct access via deep links and offer clear orientation through a prominent breadcrumb system. Because administrative terms often differ from everyday language, the content needed to be immediately understandable and help users know if they were in the right place—or guide them there intuitively. All content had to be recreated by more than 300 editors across all departments, many of whom were collaborating for the first time. This made it essential to establish clear content governance and introduce new forms of cross-departmental collaboration. The visual design had to be both accessible and flexible, fitting the context of the cantonal administration. It also laid the foundation for a reusable design system that now supports other digital services in Basel-Stadt. Strong UX principles were defined early on to guide every step of the project and ensure a scalable, future-proof solution.

Outcome
The relaunched bs.ch sets a new benchmark for digital public services. The website offers a streamlined, user-first experience that simplifies access to complex administrative information. Thanks to the new navigation concept and clearly structured content, users can now quickly find what they’re looking for—whether they enter via the homepage or a deep link. Behind the scenes, more than 300 editors now collaborate efficiently across departments, supported by clear governance and intuitive editorial workflows. The modular design system ensures visual consistency and accessibility across all digital touchpoints within the cantonal administration. The project was delivered on time and under budget. Positive user feedback and international recognition—such as its presentation at DrupalCon in Barcelona—highlight the project’s success. It stands as a strong example of how thoughtful UX, clear content strategy and collaborative governance can transform digital government communication.
 

Why Drupal was chosen

Drupal was an ideal choice for the project from the get-go. Basel-Stadt required a solution that was both robust and flexible. With its granular permission management, clear separation of structure and content, and emphasis on open-source products, Drupal turned out to be a perfect match.
Its adaptability has made Drupal an excellent platform for over 400 editors with varying levels of expertise in web publishing. The previous website was built on Magnolia.

New website of the Canton of Basel-Stadt

Technical Specifications

Drupal version:

Key modules/theme/distribution used:

Why these modules/theme/distribution were chosen
  • paragraphs
  • paragraphs_blokkli
  • paragraphs_admin
  • paragraphs_collection
  • paragraphs_edit

Reason Why
sing the Blökkli editor, the content editors can build pages interactively and intuitively, and is built on paragraphs and its eco system.

  • graphql
  • graphql_core_schema
  • graphql_commerce
  • graphql_extra_cache

Reason why
bs.ch is a decoupled project and relies on GraphQl. For Blökkli we use a graphql_core_schema which is similar to graphql_compose but with more tweaks and improvements for our setup.
Since the publication webshop is also decoupled, we also use graphql_commerce.

  • migrate
  • migrate_plus
  • migrate_tools

Reason why
Existing content, taxonomies and data had to be migrated from the former Magnolia-based site and using the migrate feature in Drupal was a big help during the migration.

  • scheduler

Reason why
The scheduler module is used to publish various content types at a given date and time.

  • openid_connect
  • openid_connect_windows_aad

Reason why
The openid_connect allows existing BS users, managed by Microsoft Azure, to use SSO (Single sign-on) to log into Drupal using their existing BS account.

  • rokka

Reason why
Liip uses its own image management service, similar to a DAM (Digital Asset Management) named Rokka to host images and other assets.

  • date_recur

Reason why
The date_recur module gives the BS editors the flexibility to define any kind of occurrences for an event, be it on a regular basis or on certain given dates.

  • fastly

Reason why
bs.ch uses Fastly as its CDN to cache public pages and content for fast delivery.

Theme page of bs.ch
About us page of bs.ch
AIChat of bs.ch