Skip to content

Repository files navigation

🌟 CivicSignals

A WordPress Storytelling System for Public Sector Digital Modernization

A modern block theme showcasing how WordPress powers digital transformation in government organizations

WordPress PHP Block Theme License Accessibility


πŸ“– Overview

CivicSignals is an enterprise-level WordPress block theme designed specifically for public sector organizations. It transforms complex digital modernization journeys into compelling, accessible narratives that citizens and stakeholders can understand and engage with.

✨ What Makes CivicSignals Special

🎯 Storytelling-First Design β€” Chapter-based narrative structure with automatic content formatting
🎨 Premium Aesthetics β€” Bold typography, minimal design, large background chapter numbers
πŸ–±οΈ Premium Interactions β€” Custom cursor, reactive particle system, smooth parallax effects
β™Ώ Accessibility Built-In β€” WCAG 2.1 AA compliant with semantic HTML and ARIA support
πŸ“± Fully Responsive β€” Beautiful on all devices, from mobile to desktop
⚑ Performance Optimized β€” Pure WordPress, no build process, lightning fast


🎯 Key Features

πŸ—οΈ Modern Block Theme Architecture

  • βœ… Full Site Editing (FSE) β€” Complete control via Site Editor
  • βœ… theme.json Configuration β€” Global styles, colors, typography, spacing
  • βœ… Block Templates & Parts β€” Fully customizable template system
  • βœ… Reusable Block Patterns β€” Pre-built components for content editors

πŸ“š Custom Content Model

Custom Post Type: story

  • Title, editor, excerpt, featured image
  • Custom fields and revisions support
  • Public archive with REST API enabled
  • Automatic chapter number detection and formatting

Custom Taxonomies:

  • audience (non-hierarchical) β€” Citizen, Content Editor, Leadership
  • theme (hierarchical) β€” Accessibility, Performance, Modernization, Governance
  • Both fully REST API enabled for headless possibilities

🎨 Storytelling Patterns

Pre-built block patterns that content editors can use instantly:

Pattern Description
Chapter Introduction Hero sections with overline text, large headings, and narrative lede
Persona Scene Two-column layouts featuring user personas with quotes and pain points
Impact Metrics Before/after KPI cards showcasing measurable transformation results

πŸ“– Automatic Content Structuring

Smart JavaScript Detection:

  • ✨ Automatically extracts chapter numbers from headings (Chapter 1 β†’ shows background "1")
  • 🎯 Structures personas with quotes, pain points, and narrative
  • πŸ“Š Formats metrics with proper typography
  • πŸ’¬ Styles quotes with elegant borders and emphasis

🎭 Scrollytelling Front Page

A narrative-driven homepage experience featuring:

  • Chapter 0: Hero β€” Bold statement with gradient background
  • Chapter 1: The Problem β€” Metrics strip with key indicators
  • Chapter 2: The People β€” Persona cards with real stories
  • Chapter 3: The Journey β€” Timeline of discovery and transformation
  • Chapter 4: The System β€” How the storytelling framework works
  • Chapter 5: Impact β€” Featured stories and query loops
  • Chapter 6: CTA β€” Call to action for engagement

🎨 Visual Design System

Color Palette:

  • Deep space blue backgrounds (#020b1f)
  • Primary teal accents (#1e9fd7)
  • Warm yellow highlights (#ffcc4d)
  • High-contrast text for accessibility

Typography:

  • Inter font family for modern, readable text
  • Responsive font sizes with clamp() for scalability
  • Careful letter-spacing and line-height for optimal readability

Spacing & Layout:

  • 120px chapter gaps for dramatic separation
  • 1120px max-width shell for comfortable reading
  • Consistent spacing scale (XS to XXL)

β™Ώ Accessibility & Performance

  • βœ… Semantic HTML5 structure
  • βœ… ARIA landmarks and labels
  • βœ… Keyboard navigation support
  • βœ… Screen reader optimizations
  • βœ… WCAG 2.1 AA color contrast
  • βœ… prefers-reduced-motion support
  • βœ… High contrast mode compatibility
  • βœ… Optimized block markup

πŸš€ Quick Start

Installation

Option 1: Manual Upload

  1. Download or clone this repository
  2. Upload the civicsignals folder to:
    wp-content/themes/civicsignals/
    
  3. Activate in Appearance β†’ Themes

Option 2: WP-CLI

wp theme install /path/to/civicsignals --activate

Initial Setup

Upon activation, the theme automatically:

  • βœ… Registers the story custom post type
  • βœ… Creates audience and theme taxonomies
  • βœ… Sets up base taxonomy terms
  • βœ… Creates demo content (if none exists)
  • βœ… Configures navigation menu

Manual Steps:

  1. Go to Stories β†’ Add New to create your first story
  2. Assign Audiences and Themes in the right sidebar
  3. Use block patterns to build your narrative (see Content Editor Workflow below)

πŸ“ Content Editor Workflow

Creating Your First Story

Step 1: Create Story Post

  1. Navigate to Stories β†’ Add New
  2. Enter a compelling Title (e.g., "Modernizing the Benefits Portal")
  3. Add an Excerpt β€” this becomes your hero subtitle
  4. Upload a Featured Image for visual impact

Step 2: Assign Categories

  • Audiences: Who is this story for? (Citizen, Content Editor, Leadership)
  • Themes: What topic does it cover? (Accessibility, Performance, Modernization, Governance)

Step 3: Build Your Narrative

Use the block inserter (+) to add patterns:

For Chapter Headings:

Simply type: "Chapter 1 - The Problem"
JavaScript automatically:
  βœ“ Extracts the number (1)
  βœ“ Shows large background "1"
  βœ“ Formats as proper chapter section

Using Block Patterns:

  1. Click + (Inserter) β†’ Patterns
  2. Choose CivicSignals Chapters or CivicSignals Scenes
  3. Insert patterns like:
    • Chapter Introduction β€” for section headers
    • Persona Scene β€” for user stories
    • Impact Metrics β€” for results

Step 4: Auto-Formatting Magic

Just write naturally β€” the JavaScript handles:

  • Personas: "Maria – Working Parent" β†’ styled persona card
  • Quotes: "I just want..." β†’ elegant quote block
  • Pain Points: List after "Pain Points:" β†’ formatted list
  • Metrics: "Task Success: 62% β†’ 94%" β†’ metric card

Step 5: Preview & Publish

  • Click Preview to see the formatted story
  • The automatic structuring appears on the frontend
  • Publish when ready!

πŸ› οΈ Tech Stack

Technology Version Purpose
WordPress 6.0+ Core CMS platform
PHP 7.4+ Server-side logic
Block Editor Native Gutenberg Content editing
Theme Type Block Theme (FSE) Modern theme architecture
CSS Custom Properties Design tokens
JavaScript Vanilla ES6+ Interactive features

No Build Process Required β€” Pure WordPress, ready to use!


πŸ“ File Structure

civicsignals/
β”‚
β”œβ”€β”€ πŸ“„ style.css              # Theme metadata & global styles
β”œβ”€β”€ πŸ“„ functions.php          # Theme setup & enqueues
β”œβ”€β”€ πŸ“„ theme.json             # Global design tokens & settings
β”œβ”€β”€ πŸ“„ README.md              # This file
β”‚
β”œβ”€β”€ πŸ“ templates/             # Block templates
β”‚   β”œβ”€β”€ index.html            # Default template
β”‚   β”œβ”€β”€ front-page.html       # Scrollytelling homepage
β”‚   └── single-story.html     # Story single page
β”‚
β”œβ”€β”€ πŸ“ parts/                 # Template parts
β”‚   β”œβ”€β”€ header.html           # Site header
β”‚   └── footer.html           # Site footer
β”‚
β”œβ”€β”€ πŸ“ inc/                   # PHP includes
β”‚   β”œβ”€β”€ post-types.php        # Story CPT registration
β”‚   β”œβ”€β”€ taxonomies.php        # Audience & Theme taxonomies
β”‚   β”œβ”€β”€ block-patterns.php    # Pattern registrations
β”‚   └── setup-activate.php    # Auto-setup on activation
β”‚
└── πŸ“ assets/                # Static assets
    └── js/
        β”œβ”€β”€ cursor-interaction.js    # Custom cursor & particles
        └── chapter-numbers.js       # Auto-content structuring

🎨 Customization Guide

Colors & Typography

Edit theme.json to customize:

{
  "settings": {
    "color": {
      "palette": [
        {
          "slug": "primary",
          "color": "#1e9fd7",
          "name": "Primary"
        }
        // Add your colors...
      ]
    },
    "typography": {
      "fontFamilies": [
        {
          "fontFamily": "\"Your Font\", sans-serif",
          "slug": "your-font"
        }
      ]
    }
  }
}

Templates

All templates are editable via Appearance β†’ Editor:

  • Modify block markup directly in the Site Editor
  • Changes are saved to database (exportable as template parts)
  • Fully visual editing experience

Patterns

Customize patterns:

  • Edit in inc/block-patterns.php for code-level changes
  • Or modify via Site Editor: Patterns β†’ Manage patterns

🎯 Why CivicSignals for Enterprise WordPress?

Aligned with Industry Best Practices

βœ… Modern Architecture β€” Built with latest WordPress block theme standards
βœ… Accessibility First β€” WCAG 2.1 AA compliance throughout
βœ… Editor-Friendly β€” Non-technical teams can create beautiful content
βœ… Maintainable Code β€” Clean, documented, WordPress-native
βœ… Performance Optimized β€” No build process, fast loading
βœ… Public Sector Ready β€” Government-appropriate design and functionality

Perfect For

  • πŸ›οΈ Federal agencies documenting modernization projects
  • πŸ“Š Government programs showcasing impact metrics
  • πŸ‘₯ Public sector teams telling citizen-centered stories
  • 🎨 Agencies needing accessible, beautiful web presence
  • πŸ“– Organizations requiring structured content workflows

πŸ”§ Development

Extending the Theme

Add New Patterns:

// In inc/block-patterns.php
register_block_pattern('civicsignals/your-pattern', [
    'title' => 'Your Pattern Name',
    'content' => '<!-- wp:group ... -->',
]);

Custom Query Filters:

// In functions.php
add_filter('query_loop_block_query_vars', 'your_custom_filter', 10, 2);

Template Customization:

  • Create new templates in templates/
  • Add template parts in parts/
  • Reference with wp:template-part block

πŸ“Š Project Alignment

This theme demonstrates:

Enterprise WordPress Expertise

  • Understanding of government website requirements
  • Custom content modeling for complex needs
  • Public sector constraints and opportunities

Digital Storytelling Systems

  • Complete narrative framework
  • Reusable patterns for content teams
  • Scrollytelling homepage design

Block Themes & Gutenberg

  • Modern Full Site Editing implementation
  • Advanced theme.json usage
  • Block pattern development expertise

Accessibility & Performance

  • WCAG 2.1 AA standards implementation
  • Semantic HTML and ARIA patterns
  • Optimized performance strategies

πŸ“„ License

GNU General Public License v2 or later

This theme, like WordPress, is licensed under the GPL. Use it freely, modify it, and share it.


πŸ‘€ Credits

Theme: CivicSignals
Author: Paul Miranda
Purpose: Portfolio demonstration for enterprise WordPress work
Focus Areas: Public Sector, Block Themes, Accessibility, Digital Storytelling


🀝 Support

For questions or WordPress development inquiries, reach out to Lone Rock Point.


Built with ❀️ for public sector digital transformation

Turning modernization journeys into compelling narratives

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages