krz/brand-bench
A dynamic brand documentation generator with Ollama integration.
clone: git clone https://gitbay.org/krz/brand-bench.git
1export interface BrandInputs {
2 name: string;
3 category: string;
4 purpose: string;
5 audience: string;
6 tone: string[];
7 avoid: string[];
8 notes: string;
9}
10
11export interface ToneGuidance {
12 attributes: string[];
13 voiceNotes: string;
14 avoidList: string[];
15 examplePhrases: string[];
16}
17
18export interface VisualDirection {
19 id: string;
20 name: string;
21 description: string;
22 palette: string;
23 typography: string;
24 references: string;
25}
26
27export interface LogoConcept {
28 id: string;
29 title: string;
30 concept: string;
31 mark: string;
32 execution: string;
33}
34
35export interface UsageExample {
36 context: string;
37 text: string;
38}
39
40export interface TypographyToken {
41 label: string;
42 size: string;
43 weight: string;
44 lineHeight: string;
45 usage: string;
46}
47
48export interface Typography {
49 primary: string;
50 secondary: string;
51 mono: string;
52 pairNote: string;
53 scale: TypographyToken[];
54}
55
56export interface ColorSwatch {
57 id: string;
58 name: string;
59 hex: string;
60 role: string;
61}
62
63export interface ColorPalette {
64 swatches: ColorSwatch[];
65}
66
67export interface BrandOutputs {
68 overview: string;
69 positioning: string;
70 tone: ToneGuidance;
71 titles: string[];
72 subtitles: string[];
73 taglines: string[];
74 visualDirections: VisualDirection[];
75 palette: ColorPalette;
76 typography: Typography;
77 logoConcepts: LogoConcept[];
78 usageExamples: UsageExample[];
79 constraints: string[];
80}
81
82export interface LockedSections {
83 overview: boolean;
84 positioning: boolean;
85 tone: boolean;
86 messaging: boolean;
87 visual: boolean;
88 palette: boolean;
89 typography: boolean;
90 logo: boolean;
91 usage: boolean;
92 constraints: boolean;
93}
94
95export interface WorkspaceState {
96 inputs: BrandInputs;
97 outputs: BrandOutputs | null;
98 edits: Partial<BrandOutputs>;
99 locked: LockedSections;
100}