Skip to content

Commit bbdb291

Browse files
committed
feat(cripto): Community Org build page — blueprint header and honest client-work copy
Blueprint header (deep blue, technical-drawing grid) for the built-from- scratch story. Copy rewritten from the real repo: the stack is Vite/React/ TS/SCSS/Tailwind (was wrongly listed as Next.js), the project is commissioned client work delivered end to end, with the redesign-via- refactor arc, conversion flows (WhatsApp/Calendly), learned section and evidence slots for before/after screenshots. Meta becomes CLIENT WORK.
1 parent b16b6c8 commit bbdb291

3 files changed

Lines changed: 68 additions & 9 deletions

File tree

app/cripto/_data.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export type BuildPr = {
5050
// Optional per-build detail treatment. Only skatehive uses it today; the other
5151
// builds render the plain (paper) header. Keeps the shared component generic.
5252
export type BuildFlavor = {
53-
header?: "matrix" | "noggles"; // special header treatment (else plain paper)
53+
header?: "matrix" | "noggles" | "blueprint"; // special header treatment (else plain paper)
5454
titleParts?: [string, string]; // two-font split, e.g. ["Skate", "Hive"]
5555
poweredBy?: "hive" | "nouns"; // subtle "Built on X / Powered by X" glyph line
5656
evidenceSlots?: number; // number of empty media slots when `media` is empty
@@ -154,12 +154,17 @@ export const contributions: Contribution[] = [
154154
index: "02",
155155
slug: "community-org",
156156
title: "Community Org",
157-
meta: "PLATFORM · 2025",
157+
meta: "CLIENT WORK · 2025",
158158
role: "dev",
159159
href: "https://community-org-beta.vercel.app/",
160160
accent: "--c-blue",
161161
font: "mono",
162-
stack: ["Next.js", "TypeScript", "Vercel"],
162+
stack: ["Vite", "React", "TypeScript", "SCSS", "Tailwind", "Vercel"],
163+
flavor: {
164+
header: "blueprint",
165+
titleParts: ["Community ", "Org"],
166+
evidenceSlots: 3, // before / after screenshots of the redesign
167+
},
163168
},
164169
{
165170
index: "03",

app/cripto/_i18n.ts

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -78,10 +78,17 @@ const en = {
7878
},
7979
"community-org": {
8080
overview:
81-
"Website for Community Org, a tech company connecting communities and organizations through digital solutions.",
81+
"Commissioned website for Community Org, a tech company connecting communities and organizations. Built solo, end to end, and delivered to the client — this deploy is the live demo.",
8282
points: [
83-
"Built the site with Next.js and TypeScript",
84-
"Responsive UI and deploy on Vercel",
83+
"Built the entire site from scratch (0→1) with Vite, React and TypeScript",
84+
"Implemented a full redesign through a structured refactor — new visual system, same product",
85+
"Conversion flows: plan modals with WhatsApp contact and Calendly scheduling",
86+
"Dark mode, scroll-triggered animations and mobile-first UX",
87+
],
88+
learned: [
89+
"Owning a product end to end — architecture, UI, deploy and months of iteration",
90+
"Turning a redesign into code: refactoring a working codebase without breaking it",
91+
"Conversion-focused UI — scheduling and chat entry points that turn visits into contacts",
8592
],
8693
},
8794
gnars: {
@@ -210,10 +217,17 @@ const pt: CriptoDictionary = {
210217
},
211218
"community-org": {
212219
overview:
213-
"Site da Community Org, empresa de tecnologia que conecta comunidades e organizações por meio de soluções digitais.",
220+
"Site sob encomenda para a Community Org, empresa de tecnologia que conecta comunidades e organizações. Construído solo, de ponta a ponta, e entregue ao cliente — este deploy é a demo ao vivo.",
214221
points: [
215-
"Desenvolvi o site com Next.js e TypeScript",
216-
"UI responsiva e deploy na Vercel",
222+
"Construí o site inteiro do zero (0→1) com Vite, React e TypeScript",
223+
"Implementei um redesign completo via refatoração estruturada — novo sistema visual, mesmo produto",
224+
"Fluxos de conversão: modais de planos com contato via WhatsApp e agendamento Calendly",
225+
"Dark mode, animações on-scroll e UX mobile-first",
226+
],
227+
learned: [
228+
"Ser dono de um produto de ponta a ponta — arquitetura, UI, deploy e meses de iteração",
229+
"Transformar um redesign em código: refatorar uma base funcionando sem quebrá-la",
230+
"UI focada em conversão — agendamento e canais de contato que transformam visita em lead",
217231
],
218232
},
219233
gnars: {

app/cripto/builds/[slug]/BuildDetail.tsx

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,46 @@ export default function BuildDetail({ slug }: { slug: BuildSlug }) {
189189
{b.dragHint}
190190
</span>
191191
</div>
192+
) : flavor?.header === "blueprint" ? (
193+
/* deep-blue "blueprint" header — Community Org flavor (built from scratch) */
194+
<div className="relative isolate overflow-hidden p-6 md:p-10 min-h-[240px] md:min-h-[300px] flex flex-col justify-end bg-[#16255e]">
195+
{/* technical drawing grid: fine cells + stronger guide lines */}
196+
<div
197+
aria-hidden
198+
className="absolute inset-0 -z-10"
199+
style={{
200+
backgroundImage: [
201+
"linear-gradient(rgba(245,242,233,0.07) 1px, transparent 1px)",
202+
"linear-gradient(90deg, rgba(245,242,233,0.07) 1px, transparent 1px)",
203+
"linear-gradient(rgba(245,242,233,0.13) 1px, transparent 1px)",
204+
"linear-gradient(90deg, rgba(245,242,233,0.13) 1px, transparent 1px)",
205+
].join(","),
206+
backgroundSize: "24px 24px, 24px 24px, 120px 120px, 120px 120px",
207+
}}
208+
/>
209+
{/* bottom fade so the title reads cleanly */}
210+
<div className="absolute inset-0 -z-10 bg-gradient-to-t from-[#16255e] via-transparent to-transparent" />
211+
212+
<div className="flex items-center gap-4">
213+
<span className="c-mono text-[13px] text-[var(--c-white)]/50">
214+
{build.index}
215+
</span>
216+
<span className="c-mono text-[10px] tracking-[0.14em] uppercase text-[var(--c-white)]/50">
217+
{metaLine}
218+
</span>
219+
</div>
220+
221+
<h1
222+
className={`mt-4 text-[clamp(36px,8vw,80px)] leading-[0.95] ${fontClass[build.font]}`}
223+
>
224+
<span className="text-[var(--c-white)]">
225+
{flavor.titleParts?.[0] ?? build.title}
226+
</span>
227+
{flavor.titleParts?.[1] && (
228+
<span className="text-[#8fa5ff]">{flavor.titleParts[1]}</span>
229+
)}
230+
</h1>
231+
</div>
192232
) : (
193233
/* default paper header */
194234
<div className="p-6 md:p-10 bg-[var(--c-paper)]">

0 commit comments

Comments
 (0)