# Front End Skill

> Brief description of what this Skill does and when to use it (project)

- Skill: `majiayu000/front-end-skill` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add majiayu000/front-end-skill`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/front-end-skill/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/front-end-skill

---


# Next.js Frontend Development

## When to Use This Skill

Activate this skill when working on frontend tasks in `packages/nextjs/`:
- Creating or modifying React components
- Styling with Tailwind CSS
- Building new pages or layouts
- Implementing animations and interactions
- Working with UI/UX improvements

## Project Context

SplitHub is a tap-to-pay bill splitting app. The frontend should feel:
- **Instant & Responsive** — NFC tap interactions need snappy feedback
- **Trustworthy** — Financial app requires clean, confident design
- **Effortless** — Hide complexity, make payments feel magical

## Aesthetic Guidelines

### Avoid "AI Slop"

Generic AI-generated designs are immediately recognizable. Avoid:
- Overused fonts: Inter, Roboto, Open Sans, Lato, system fonts
- Cliché color schemes: purple gradients on white backgrounds
- Predictable layouts and cookie-cutter component patterns
- Space Grotesk (overused in AI outputs)

Make creative, distinctive choices that surprise and delight.

### Typography

Typography signals quality instantly. Use distinctive fonts from Google Fonts.

**Good choices:**
- Code aesthetic: JetBrains Mono, Fira Code
- Editorial: Playfair Display, Crimson Pro
- Technical: IBM Plex family, Source Sans 3
- Distinctive: Bricolage Grotesque, Newsreader, Syne, Outfit, Archivo

**Pairing principles:**
- High contrast = interesting (display + monospace, serif + geometric sans)
- Use weight extremes: 100/200 vs 800/900, not 400 vs 600
- Size jumps of 3x+, not 1.5x

Load fonts via `next/font/google` in layout files.

### Color & Theme

- Commit to a cohesive aesthetic with CSS variables
- Dominant colors with sharp accents > timid, evenly-distributed palettes
- Draw inspiration from IDE themes, cultural aesthetics, or unexpected sources
- Dark themes work well for financial/tech apps

### Motion & Animation

- Use `framer-motion` (available as `motion` in this project) for React animations
- Focus on high-impact moments: orchestrated page loads with staggered reveals
- One well-designed animation-delay sequence > scattered micro-interactions
- CSS transitions for simple hover/focus states
- Provide tactile feedback for NFC tap interactions

### Backgrounds & Depth

Create atmosphere rather than defaulting to solid colors:
- Layer CSS gradients
- Subtle geometric patterns
- Contextual effects matching the aesthetic
- Use opacity and blur for depth

## Technical Stack

- **Framework**: Next.js 15 with App Router
- **Styling**: Tailwind CSS
- **Animation**: Framer Motion (`motion`)
- **Fonts**: `next/font/google`
- **Path alias**: `~~/*` resolves to `packages/nextjs/`

## Component Locations

```
packages/nextjs/
├── app/                    # Pages (App Router)
├── components/
│   ├── settle/            # Payment flow UI
│   ├── credits/           # POS terminal UI
│   ├── activity/          # Activity/receipt UI
│   ├── expense/           # Expense forms
│   ├── home/              # Dashboard components
│   └── scaffold-eth/      # Wallet components
├── hooks/                  # Custom React hooks
└── services/              # API/data services
```

## Implementation Checklist

When creating frontend components:

1. [ ] Check existing components in `packages/nextjs/components/` for patterns
2. [ ] Use distinctive typography (never Inter/Roboto)
3. [ ] Apply consistent color theme via CSS variables or Tailwind config
4. [ ] Add purposeful animations for key interactions
5. [ ] Ensure mobile-first responsive design
6. [ ] Provide loading/error states with visual feedback
7. [ ] Test NFC-related flows feel instant and satisfying

