feat: Complete platform enhancement with multi-tenant architecture

Major additions:
- Territory manager system with application workflow
- Custom pricing and page builder with Craft.js
- Enhanced Stripe Connect onboarding
- CodeReadr QR scanning integration
- Kiosk mode for venue sales
- Super admin dashboard and analytics
- MCP integration for AI-powered operations

Infrastructure improvements:
- Centralized API client and routing system
- Enhanced authentication with organization context
- Comprehensive theme management system
- Advanced event management with custom tabs
- Performance monitoring and accessibility features

Database schema updates:
- Territory management tables
- Custom pages and pricing structures
- Kiosk PIN system
- Enhanced organization profiles
- CodeReadr integration tables

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-07-12 18:21:40 -06:00
parent a02d64a86c
commit 26a87d0d00
232 changed files with 33175 additions and 5365 deletions

View File

@@ -0,0 +1,106 @@
# 📝 Crispy Goat Microcopy Guide Client Projects
For client-facing websites, our copy must reflect **their tone**, not ours. That said, all Crispy Goat projects share one thing: **copy that feels human, intentional, and never robotic.**
---
## 🧠 General Tone & Voice
- Clear, direct, and human
- Friendly but not casual unless the brand calls for it
- No marketing clichés or AI-sounding nonsense
- Helpful microcopy beats witty microcopy — but well take both
- Tone should reflect confidence, not desperation
---
## ✅ General Writing Principles
- Keep sentences short and clear
- Prefer active voice
- Use contractions (“youre,” “well”) unless it feels off-brand
- Avoid jargon unless its native to the audience
- Avoid anything that sounds like ChatGPT 3.5 wrote it in a rush
---
## ✍️ Button Copy
| Purpose | Text Examples |
|------------------|----------------------------------|
| Primary CTA | `Get Started`, `Book a Demo`, `Explore Plans` |
| Secondary | `Learn More`, `See How It Works` |
| Form Submit | `Send Message`, `Submit Inquiry` |
| Danger / Delete | `Delete`, `Remove`, `Yes, Im Sure` |
---
## 📋 Form Microcopy
- Labels must be clear and expected
- `Full Name`, `Email Address`, `Company`
- Placeholders may add a touch of tone
- `you@domain.com`, `Let us know what you're looking for`
- Error messages:
- `This field is required.`
- `Please enter a valid email address.`
- `Passwords must match.`
---
## 📭 Empty States
- No data:
`No records yet. Check back soon.`
- Search no match:
`We couldnt find anything. Try a different filter.`
- Form not started:
`Fill in the basics to get started.`
---
## 🚫 What to Avoid
- “Welcome to our website”
- “Please dont hesitate to contact us”
- “Innovative solutions for modern problems”
- “We pride ourselves on excellence”
- Any vague industry filler phrases
---
## 💬 Footer & Utility Copy
- `© 2025 [Client Name]. All rights reserved.`
- `Built with care by Crispy Goat.` (Optional tag)
- `Made in [Location] · Powered by [Tech or Platform]` (Optional, clean)
---
## 🎨 Optional Personality Touches (Use Sparingly)
If the brand tone allows a little playfulness:
- 404 Page:
`Looks like you took a wrong turn. Lets get you back.`
- Confirmation screen:
`We got your message. Someone will reach out soon.`
- Easter egg:
`Nice hover. Youve got good taste.`
---
## 🧠 Summary
Client-facing copy should:
- Reflect their brand voice first
- Be smart and human, never stiff or soulless
- Help the user, not distract them
- Include subtle personality — but keep it *their* personality
---
If you're unsure, ask:
> Would this sound natural coming from a person, or does it feel like filler?
If its filler, rewrite it.

View File

@@ -0,0 +1,119 @@
# 📝 Crispy Goat Microcopy Guide
This is how Crispy Goat talks — on buttons, forms, error states, and empty spaces. The tone is smart, blunt, self-aware, and never trying too hard.
---
## 🧠 General Voice & Tone
- **Confident. Minimal. Blunt.**
- A little dry or deadpan — but never robotic
- Never say more than you need to. Ever.
- Be clever *only if* it doesnt slow the user down
- Humor should feel unforced. A wink, not a punchline.
- If it sounds like a brochure or a startup pitch deck, its wrong.
---
## 🧩 Common Microcopy Patterns
### Buttons
| Intent | Text |
|---------------|-------------------------|
| Primary CTA | `Lets Go` / `Show Me` |
| Secondary | `No Thanks` / `Not Now` |
| Submit Form | `Send It` / `Do the Thing` |
| Danger | `I Know What Im Doing` |
| Obvious Joke | `Absolutely Not` (for a cancel/close button) |
### Form Fields
- Placeholder:
`Your Email (we probably wont write back)`
- Label:
`Name (real or fake, we dont care)`
- Submit:
`Fire It Off`
### Errors
- `Something broke. Were not surprised.`
- `Try again, or dont.`
- `You missed a required field. Embarrassing.`
- `Thats not a real email. You knew that.`
### Empty States
- **No results**:
`Nothing here. Maybe its you.`
- **No events yet**:
`Quiet for now. Were plotting.`
- **Form incomplete**:
`Youre not done. We believe in you, barely.`
### 404 Page
```
You went too far. Even goats know their limits.
```
---
## 🎨 Footer Copy Examples
- `Crispy Goat. Est. 🤷‍♂️`
- `Built with real code and no patience.`
- `Good work. Bad attitude.`
- `Crafted in the mountains. Released into the wild.`
---
## 🤫 Hidden Copy / Easter Eggs
- Console log: `console.warn("We told you not to inspect.")`
- Hover alt text: `"This link goes places. Spiritually."`
- Form easter egg: If someone enters `asdf` or fake text, show:
`Try harder. Or just leave.`
---
## ✅ Style Rules
- Use sentence case (not Title Case)
- Avoid exclamation marks (unless sarcastic)
- Never use “submit,” “enter,” “click here,” or “subscribe”
- Use periods for tone. Theyre blunt.
- Dont write instructions unless theyre funny *and* helpful
---
## 💬 Example Voice in Context
```html
<h2>Were probably not taking clients.</h2>
<p>But if youre insistent, go ahead. We dare you.</p>
<button>Make the Case</button>
```
```html
<label>Email</label>
<input placeholder="We probably wont reply">
```
---
## 🧼 Dont You Dare
- “We value your business”
- “Lets build something great together”
- “Innovative solutions”
- “Our team of experts”
- Anything that sounds like a pitch deck from 2012
---
## 🧠 Summary
Crispy Goat copy should:
- Say only whats needed — with style
- Be proud, dry, and on the edge of rude
- Never sound like youre trying to win the client
- Make someone laugh once, raise an eyebrow twice, and trust you anyway
If it reads like a job application or a startup homepage, rewrite it.

View File

@@ -0,0 +1,93 @@
# 🎨 CrispyGoat Design System UI Style Guide
This guide defines the visual identity for all CrispyGoat properties. It ensures design consistency, professionalism, and that unmistakable “CrispyGoat feel.”
---
## 🧱 Layout & Spacing
- Use an **8pt spacing scale**: `8, 16, 24, 32, 48, 64, 96`
- All sections must use consistent vertical spacing
- **Content containers**:
- Max width: `1440px`
- Horizontal padding: `32px`
- Center-aligned on wide screens
- **Cards / Panels**:
- Internal padding: `24px` minimum
- Internal spacing (gap): `16px`
- Vertical spacing between cards: `32px`
---
## 🖋 Typography
- **Font Family**: `Inter`, fallback `sans-serif`
- **Base Font Size**: `16px`, `line-height: 1.5`
- **Font Scale**:
- `h1`: `48px`
- `h2`: `36px`
- `h3`: `28px`
- `h4`: `22px`
- **Margins**:
- Headings must have `margin-bottom: 16px`
- Paragraphs use `margin-bottom: 16px`
---
## 🎛 Buttons & Inputs
- **Buttons**:
- Min height: `48px`
- Border-radius: `12px`
- Font: `Inter`, semi-bold
- Padding: `0 24px`
- Use high-contrast states (hover, focus, disabled)
- **Inputs**:
- All form elements must have associated `<label>`
- Padding: `12px 16px`
- Border-radius: `8px`
- Border: `1px solid #CCC`
- On focus: use visible outline (`2px solid` or shadow)
---
## 🌘 Light & Dark Modes
- **Dark mode is primary**: It reflects our hand-crafted identity.
- **Light mode** must feel white-label — neutral, polished, elegant.
- **Do not invert** components — manually design both modes.
- Backgrounds:
- Dark: `#111` to `#1A1A1A`
- Light: `#FFFFFF`, sections use `#F7F7F7`
- Text contrast: Use WCAG-compliant ratios at all times.
---
## 🖼 Imagery & Visual Elements
- **Use full-bleed images** on hero and feature sections
- **Icons** must be vector-based (SVG preferred)
- Images must have rounded corners: `16px`
- Avoid drop shadows unless intentional and consistent
---
## ⚠️ Do Not
- Do not use unstyled system fonts
- Do not break the spacing scale
- Do not mix inconsistent border radii
- Do not rely on default button/input styles
- Do not allow console logs in production
---
## ✅ Summary
CrispyGoat designs should feel:
- Considered
- Balanced
- High-end (like a modern mountain interior designer)
- Strict in rules, generous in feel
Use this guide for all visual QA, prompt-based evaluations, and auto-theming pipelines.

View File