Digital Allies Brand Standards

Voice & Marketing Hub

The canonical source for brand voice (primary + secondary), target audience definition, content calendar (live-updating via CMS), and visual asset prompts for all Digital Allies marketing materials.

Primary Brand Voice

The main voice used across all Digital Allies communications. Sharp, straight-talking, plainly spoken — the knowledgeable neighbor you actually want to call.

Brand Voice in One Sentence

"The sharp, straight-talking tech guy you actually want to call — because he picks up, explains things plainly, and doesn't make you feel dumb for asking."

Tone Coordinates

Formal ↔ Casual
65% casual
Dry ↔ Warm
45% warm
Technical ↔ Plain
70% plain
Eager ↔ Confident
75% confident
Performing ↔ Authentic
100% authentic

Core Rules

Person & Address

  • First person singular ("I") — this is a one-person operation
  • Direct address ("you") — speak to the reader
  • Owner: Anthony · Location: Kingman, Arizona

Casing & Punctuation

  • Sentence case for headlines
  • UPPERCASE TRACKED for eyebrows
  • Square brackets for CTAs: [ Inquire Within ]
  • Em-dashes and → for flow

Proprietary Vocabulary

These branded names replace generic categories. Always use these exact labels:

Generic Digital Allies Name
Services overview The Departments
Design & brand work The Design Bureau
Integrations Dept. of Cooperation
Automation The Self-Governing Bureau
Support / monitoring The Permanent Observation Post
Pricing table The Transparency Table
Contact form Send a Transmission
Testimonials Field Notes

Writing Examples

✓ DO write like this:

"Your apps talk to each other. You don't have to."
"We answer the phone. In person. Every time."
"Repetitive tasks are for machines. Go take a real lunch break."
"Monitoring runs 24/7. If something breaks at 2am, that's my problem — not yours."
"Strategy is free. Execution is paid."
✗ DO NOT write like this:

"We facilitate seamless API-level ecosystem integration."
"We're passionate about nurturing your digital journey."
"Leverage scalable, user-centric digital solutions."
Anything that requires the reader to look up a word.

The Jargon Jar

When you find yourself reaching for corporate speak, translate it using this table instead:

Corporate Speak Digital Allies Translation
Leverage synergies across touchpoints Make the parts work together.
End-to-end digital transformation We fix what's broken and build what's missing.
Scalable solutions for your growth journey It works now and won't fall apart later.
SEO-optimized content ecosystems Your site shows up when people search.
Robust backend infrastructure The stuff running quietly so nothing crashes.
Holistic brand alignment Your logo, site, and words know each other.
Onboarding workflow optimization Getting started without the runaround.

Secondary Voice (Marketing)

Used for social media, promotional content, and audience-facing marketing. Less formal than primary voice — warmer, slightly more conversational, but still authentic. This is how we talk when we're not explaining something technical.

Marketing Voice in One Sentence

"Real talk about real problems from someone who actually answers the phone."

Tone Shift (vs. Primary)

Formal ↔ Casual
75% casual
Dry ↔ Warm
60% warm
Technical ↔ Plain
80% plain
Eager ↔ Confident
70% confident
Performing ↔ Authentic
100% authentic

Marketing Voice Guidelines

✓ Marketing voice examples:

"Your site is turning away Spanish-speaking customers. Want to know why?"
"Machine translation is fine for a first draft. Public-facing? Not so much."
"Bilingual content isn't a bonus feature — it's respect."
"Most websites treat Spanish like an afterthought. Yours shouldn't."
"Your customers speak two languages. Your site should too."

When to Use Secondary Voice

Target Audience

Who we're talking to. These are the small business owners, local entrepreneurs, and service professionals in the Southwest who know they have a problem but aren't sure where to start.

Small Local Business Owner

Pain: "My site is broken, but I don't know what's wrong or who to call."

Age: 35–55 · Tech: Moderate

Location: Mohave County & surrounding

Decision maker: Yes (usually sole decision maker)

Marketing Manager (Mid-size Biz)

Pain: "We need to expand to Spanish-speaking markets but don't know how to do it right."

Age: 28–42 · Tech: High

Budget: Has one; guards it closely

Decision maker: With CFO approval

Bilingual Community Leader

Pain: "Local businesses ignore Spanish speakers, then wonder why they can't sell."

Age: Any · Tech: Variable

Influence: High (recommends vendors)

Motivation: Community respect, trust

What They Care About

What They Don't Care About

Content Calendar

30-day social + email content plan. CMS-editable — update schedule, swaps, topics, and copy directly in the connected CMS without touching this file.

🔗 Managed in: Connected CMS → Marketing → Content Calendar (live-updating)

How to Use This Calendar

Calendar Structure

Day
Week
Category
Topic
Copy (Hook + CTA)
Asset Prompt
1
1
Local data
Mohave County market
"Mohave County has a real bilingual market..."
Bilingual storefront visual
2
1
Local data
Spanish-speaking market
"Spanish-speaking market: local businesses..."
Business counter with paperwork
...etc (30 days)

Categories (Repeat Every 30 Days)

Week 1: Local Data

Why bilingual matters in Mohave County. Data-driven, audience-aware.

Week 2: Machine Translation Myth

The pitfalls of automated translation. Education-focused.

Week 3: Trust & Culture

Bilingual is about respect, not features. Values-driven.

Week 4: Digital Allies Standard

Our approach & how it's different. Conversion-focused.

📋 Full calendar available in uploads/da-master-social-copy.csv. Import into your CMS or social scheduler. Update copy, topics, and scheduling directly in the CMS interface — no need to edit this file.

Visual Asset Prompts (Pamali Library)

Art direction briefs for all 30 calendar days. Each prompt pairs with a specific social post. Use these when commissioning graphics from Pamali or your in-house designer. Includes tone, mood, composition, and brand alignment notes.

Day 1 · Week 1
Mohave County market
"Bilingual content isn't a bonus — it's respect."
Minimal Southwest editorial photo: local storefront window, warm desert light, bilingual signage EN/ES, empty headline space, calm modern composition. Brand-aligned, clean lines, muted tones. Not photorealistic.
Day 2 · Week 1
Spanish-speaking market
"Buying power speaks two languages."
Clean conceptual image: small business counter with bilingual paperwork, phone, laptop on grid layout. Desert-neutral palette, soft shadow, friendly local feel. Designed for social ad text overlay.
Day 3 · Week 1
Buying power
"Your customers speak Spanish. Your website should too."
Abstract editorial scene: hands reviewing website on laptop beside bilingual flyers. Warm off-white, charcoal, one blue accent. Simple composition, roomy negative space. Not stock photography.
Day 8 · Week 2
Machine translation myth
"Machine translation is a draft. Public-facing? That's a different story."
Concept comparison: rough machine-translated draft on one side, clean human-reviewed Spanish page on the other. Simple split layout, muted colors, no robot imagery. Not photorealistic.
Day 15 · Week 3
Trust & culture
"Bilingual content is about more than words — it's about welcome."
Warm editorial scene: shop owner greeting customer in bilingual environment. Calm human expressions, subtle Spanish signage, natural light. Not overly posed. Brand-consistent, modest.
Day 22 · Week 4
Digital Allies standard
"Bilingual sites should work like one business, not two half-finished versions."
Brand-forward ad concept: bilingual website draft checked by hand against style guide. Clean lines, muted colors, subtle red accent. Calm, trustworthy. Not corporate or futuristic.

📋 Full prompts (all 30 days) in uploads/pamali-asset-prompts.csv. Share with your designer or Pamali AI system for batch asset generation.

CMS Integration

How to connect this hub to your connected CMS and enable live updates without rebuilding the design system.

Option 1: Content Calendar Component (Recommended)

Use the reusable ContentCalendar.jsx component from the UI kit. It consumes JSON data directly from your CMS API and re-renders live when you update schedules.

// In your CMS page template: <x-import component="ContentCalendar" from="../../../ui_kits/website/ContentCalendar.jsx" data="{{ cms.contentCalendar }}" hint-size="100%,600px"></x-import> // CMS API returns: { "contentCalendar": [ { "day": 1, "week": 1, "category": "Local data", "topic": "Mohave County market", "hook": "...", "caption": "...", "cta": "...", "promptRef": "icon-001", "status": "scheduled", "scheduledDate": "2026-06-18" } // ...30 items ] }

Option 2: JSON Data Store (If No Real-time Needed)

Export the CSV as JSON, host it in your CMS assets folder, and import it statically. Update in CMS, re-export CSV → JSON, deploy. Good for weekly/monthly updates.

// data/content-calendar.json { "calendarEntries": [ { "day": 1, "week": 1, ... }, { "day": 2, "week": 1, ... } ], "lastUpdated": "2026-06-18T14:30:00Z" } // Import in template: <sc-for list="{{ calendar }}" as="entry">...</sc-for>

Option 3: Embedded CMS Editor (Advanced)

If your CMS has a rich editor UI, embed a content calendar table inline using your CMS's native table editor. Sync changes back to the API on save.

Implementation Steps

  1. Export CSV → JSON using the converter at uploads/da-master-social-copy.csv
  2. Create a CMS collection called "Content Calendar" with fields: day, week, category, topic, hook, caption, cta, promptRef, status, scheduledDate
  3. Populate initial 30 rows from the CSV data
  4. Set up API endpoint at /api/marketing/calendar that returns all entries sorted by day
  5. Mount the ContentCalendar.jsx component in your marketing page template, passing data="{{ calendar }}"
  6. Test live edits — update a calendar entry in the CMS, see it update in the component (no page refresh needed)

ContentCalendar.jsx API

Props: - data: Array of calendar entry objects - onEntryClick: (entry) => void (optional, for edit modals) - sortBy: 'day' | 'category' | 'status' (default: 'day') - showStatus: boolean (default: true) - showPromptRef: boolean (default: true) Example: <ContentCalendar data={calendarEntries} showStatus={true} onEntryClick={(entry) => openEditModal(entry)} sortBy="day" />