DownsideUp: Down Syndrome Charity Platform

2016
Laptop
DownsideUp: Down Syndrome Charity Platform

Technologies

Drupal
PHP
Salesforce

Downside Up supports children with Down syndrome and their families in Russia, through early intervention services, education, and a network of connected organizations. We rebuilt the organization’s Drupal platform: a database tracking beneficiaries and the services they receive, a parent community forum, interactive maps of partner organizations and families, and a bilingual knowledge base migrated from a separate wiki.

The Challenge

The existing site carried years of content and history across several disconnected systems: a MediaWiki knowledge base, a separate forum, and manual records of the families and children the organization serves. None of it was mobile-friendly, and performance was poor enough that image weight and caching needed fixing before any new feature work could land on a stable foundation.

The core of the rebuild was the beneficiary database. Statistics on the types of services delivered, the geography and age of the children served, and family relationships between registered users and the children connected to them all needed a data model that didn’t exist yet, built to support both day-to-day case work and organization-wide reporting.

What We Built

Beneficiary and service tracking

  • Database of children and their family relationships, linked to registered parent/guardian accounts, with bulk operations, saved filter templates, and printable record cards for casework staff
  • Appointment booking through each user’s personal account, with visibility into services already received
  • Statistics on service types, beneficiary geography, and age distribution
  • Automated accounting of mail-based service dispatches
  • Two-way Salesforce sync for donor contacts and donation records, filtered to only pull Salesforce entities already linked to a Drupal user or node ID, so incomplete CRM records never leak into the site

Community

  • Forum migrated from its original platform, preserving users, sections, topics, and posts, then re-themed and re-integrated with search
  • In the parent support forums, a new topic’s title locks to the poster’s own child’s name and birth date, pulled straight from their beneficiary record. A parent with no child profile on file gets redirected to add one before they can post
  • Moderator-only comments: a hidden flag on individual forum replies, visible only to an explicit list of consultant email addresses rather than a general role, for sensitive case discussion that shouldn’t show to other parents
  • Registration with social network sign-in
  • A dedicated parents’ communication space built on top of the forum structure
  • Interactive maps: one for partner organizations, one for registered families, each with per-family visibility control so a parent can pull their child off the map
  • A Russian-language profanity filter across forum posts and comments

Content, education, and knowledge base

  • Full wiki migration into the main site, with the old wiki redirected and closed
  • Bilingual (Russian/English) content across all material types, including authors and taxonomy terms
  • E-journal with articles, photo and video galleries, 3D materials, and an author glossary that auto-links terms in article text back to their glossary entries
  • A distance-learning course system with its own quiz and certificate content types, so a parent finishing a course gets a real completion certificate
  • Automatic watermarking of the foundation’s logo onto photos uploaded through the site
  • Events calendar and email subscriptions, with newsletter templates and transactional mail sent through SendGrid

Platform and performance

  • Drupal core and module updates across a codebase with accumulated technical debt
  • Password hashing migrated to SHA-256
  • Authcache with a Filecache backend and ESI-based fragment caching, so full-page caching applies even to logged-in users; personalized blocks load as separate cached fragments instead of forcing a cache miss on the whole page
  • Advanced CSS/JS aggregation through AdvAgg
  • Site-wide image optimization, cutting image weight by 70-75%
  • Migration to Git-based deployment with backups
  • Mixed-content SSL fixes and a full mobile-responsive pass
  • Full multilingual configuration across content, navigation, and search
  • Role-based analytics tracking through Yandex Metrika

Delivery

The rebuild started with stabilization: caching, image optimization, SSL, and cleaning up warnings in the existing code. Then came the wiki migration, the forum migration, and finally the beneficiary database and interactive maps. Each stage carried real historical data forward, wiki content, forum posts, and existing family and beneficiary records, all of which had to survive the move rather than starting fresh.