Skip to content

Polish UI, Arcade branding, bun migration, and session fixes#5

Merged
teallarson merged 1 commit intomainfrom
teallarson/ui-polish-brand-assets
Mar 2, 2026
Merged

Polish UI, Arcade branding, bun migration, and session fixes#5
teallarson merged 1 commit intomainfrom
teallarson/ui-polish-brand-assets

Conversation

@teallarson
Copy link
Copy Markdown
Collaborator

Summary

  • Brand assets: Official Arcade A mark SVG in Next.js header, login page, and all langchain Flask templates; app/icon.png + favicon.svg for favicons
  • Dark mode & theme switcher: Arcade red as primary color in dark theme, ThemeProvider + sun/moon toggle for Next.js; full dark mode for langchain (Tailwind CDN class strategy, Inter font, flash-free persistence, JS-generated card dark styles)
  • Langchain UI polish: ShieldAlert/AlertTriangle SVGs replace emoji in gate cards, full-width CTA buttons, chat panel removed (not included for now)
  • Session fix: app/page.tsx converted to server component that redirects authenticated users to dashboard; getSession() auth guard on /api/auth/arcade/connect for ai-sdk and mastra
  • Bun migration: All generated template commands updated from npm/npx → bun/bunx in template.json, README.md.hbs, and CLAUDE.md; CI smoke tests updated to oven-sh/setup-bun@v2

Test plan

  • Scaffold ai-sdk template, verify: bun commands work, login page shows Arcade logo + favicon, dark mode defaults on, theme toggle switches modes, returning users stay logged in
  • Scaffold mastra template, same checks
  • Scaffold langchain template, verify: Arcade logo and favicon show, dark mode works and persists, gate card uses SVG icon + full-width button, dashboard loads without chat panel
  • CI passes (lint, format, smoke tests)

🤖 Generated with Claude Code

**Brand & UI**
- Replace makeshift triangle logo with official Arcade A mark SVG in Next.js header and login page
- Add `app/icon.png` (Arcade App Icon) as Next.js favicon
- Add official Arcade A mark + favicon.svg to all langchain Flask templates
- Dark mode: set Arcade red as `--primary` in dark theme; add `ThemeProvider` + sun/moon toggle to Next.js
- Dark mode for langchain: Tailwind CDN dark class strategy, flash-free theme persistence, Inter font via Google Fonts CDN, dark variants for all structural elements and JS-generated cards (task, stats, auth prompts)
- Polish langchain gate cards: replace emoji icons with ShieldAlert/AlertTriangle SVGs, full-width CTA buttons, consistent card border treatment
- Remove chat panel from langchain dashboard (not included for now)

**Session & auth fixes**
- `app/page.tsx` converted to server component with `getSession()` check → redirects to `/dashboard` if already authenticated (fixes sign-out-on-every-visit bug)
- Extract `LoginForm` client component from page
- Add `getSession()` auth guard to ai-sdk and mastra `/api/auth/arcade/connect` routes → returns 401 if unauthenticated

**Bun migration**
- All generated template install/migrate/dev commands updated from npm/npx → bun/bunx in `template.json`, `README.md.hbs`, and `CLAUDE.md` for ai-sdk and mastra
- CI smoke tests updated to use `oven-sh/setup-bun@v2` and bun commands; lint-and-build job stays on npm

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@teallarson teallarson marked this pull request as ready for review March 2, 2026 22:07
@teallarson teallarson merged commit 6053e62 into main Mar 2, 2026
@teallarson teallarson deleted the teallarson/ui-polish-brand-assets branch March 2, 2026 22:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant