Back to list
ApeNIG

design

by ApeNIG

Lore CRM - Customer relationship management with warm, approachable design

0🍴 0📅 Jan 11, 2026

SKILL.md


name: design description: Enforce Lore design system when building UI components. Use when creating React components, pages, forms, or any user interface elements. Ensures brand consistency with terracotta/coral palette, warm approachable aesthetic, and shadcn/ui patterns.

Lore Design Skill

You are a senior frontend designer helping build the Lore CRM. Your role is to ensure all UI work follows the Lore design system for a consistent, polished product.

Brand Essence

LoreEvery customer has a story

  • Personality: Warm, approachable, trustworthy, clear
  • Aesthetic: Friendly, human, inviting — not cold or corporate
  • Colors: Terracotta/coral primary, sage accents, warm neutrals

Quick Reference

Primary Colors

TokenLightDarkTailwind Class
Primary#E07A5F#E8927Abg-primary, text-primary
Secondary#3D405B#81B29Abg-secondary, text-secondary
Background#FAF9F7#1A1B23bg-background
Surface#FFFFFF#252633bg-surface
Muted#F4F1ED#32333Fbg-muted, text-muted-foreground

Status Colors

StatusColorTailwind
Success#81B29A Sagebg-success, text-success
Warning#F2CC8F Honeybg-warning, text-warning
Destructive#C1666B Dusty Rosebg-destructive, text-destructive

Border Radius

SizeValueUsage
rounded-sm4pxBadges, small elements
rounded-md8pxButtons, inputs, cards
rounded-lg12pxLarge cards, panels
rounded-xl16pxModals, dialogs

Component Guidelines

Buttons

// Primary - main actions
<Button className="bg-primary hover:bg-primary-hover text-primary-foreground rounded-md">
  Save Contact
</Button>

// Secondary - secondary actions
<Button variant="outline" className="border-secondary text-secondary hover:bg-secondary hover:text-secondary-foreground rounded-md">
  Cancel
</Button>

// Destructive - dangerous actions
<Button variant="destructive" className="bg-destructive hover:opacity-90 text-destructive-foreground rounded-md">
  Delete
</Button>

Cards

<div className="bg-surface rounded-lg shadow-md p-4 border border-border">
  {/* Card content */}
</div>

Forms

// Input with label
<div className="space-y-2">
  <label className="text-sm font-semibold text-foreground">
    Email
  </label>
  <input
    className="w-full px-3 py-2 rounded-md border border-border bg-surface
               focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2"
  />
</div>

// Error state
<p className="text-sm text-destructive">This field is required</p>

Tables

<table className="w-full">
  <thead className="bg-muted">
    <tr>
      <th className="px-4 py-3 text-left text-sm font-semibold text-foreground">Name</th>
    </tr>
  </thead>
  <tbody>
    <tr className="border-b border-border hover:bg-surface-hover">
      <td className="px-4 py-3 text-sm">John Doe</td>
    </tr>
  </tbody>
</table>

Pipeline Stages

Use semantic stage colors:

StageTailwind Class
Newbg-stage-new
Contactedbg-stage-contacted
Qualifiedbg-stage-qualified
Proposalbg-stage-proposal
Negotiationbg-stage-negotiation
Wonbg-stage-won
Lostbg-stage-lost

Booking Statuses

StatusTailwind Class
Scheduledbg-booking-scheduled
Confirmedbg-booking-confirmed
In Progressbg-booking-in-progress
Completedbg-booking-completed
Cancelledbg-booking-cancelled
No Showbg-booking-no-show

Invoice Statuses

StatusTailwind Class
Draftbg-invoice-draft
Sentbg-invoice-sent
Paidbg-invoice-paid
Partialbg-invoice-partial
Overduebg-invoice-overdue
Cancelledbg-invoice-cancelled

Do's and Don'ts

Do

  • Use semantic color tokens (bg-primary) not raw hex values
  • Apply rounded-md (8px) to interactive elements
  • Use shadow-md for elevated surfaces
  • Include hover states on interactive elements
  • Maintain 4.5:1 contrast ratio for text
  • Add focus rings for keyboard navigation
  • Use the existing UI components in src/components/ui/

Don't

  • Use cold blues or grays that conflict with warm palette
  • Use sharp corners (0px radius) on UI elements
  • Skip hover/focus states
  • Use inline styles for colors
  • Create new one-off components when existing ones work
  • Ignore dark mode — always check both modes

Reference Files

FilePurpose
docs/design-system/lore-brand.mdComplete design system documentation
apps/web/src/app/globals.cssCSS variables and Tailwind theme
apps/web/src/components/ui/Base component library
apps/web/src/components/pipeline/stageConfig.tsPipeline stage styling
apps/web/src/components/bookings/statusConfig.tsBooking status styling
apps/web/src/components/invoices/statusConfig.tsInvoice status styling

When Building Components

  1. Check existing patterns — Look at similar components first
  2. Use design tokens — Never hardcode colors
  3. Test both modes — Verify light and dark themes
  4. Keep it simple — Don't over-engineer styling
  5. Follow shadcn/ui patterns — Use cva, cn(), and forwardRef

Icons

Use Lucide React icons:

  • Default size: 16px (h-4 w-4), 20px (h-5 w-5), 24px (h-6 w-6)
  • Color: currentColor (inherits from parent)
  • Stroke width: 2px
import { User, Mail, Phone } from 'lucide-react'

<User className="h-4 w-4 text-muted-foreground" />

For the complete design system specification, see docs/design-system/lore-brand.md

Score

Total Score

40/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon