Skip to content

curletteDX/minimo-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Uniform Next.js Starter - Minimo version

A clean, elegant Next.js starter project integrated with Uniform headless CMS. This project demonstrates modern web development patterns with comprehensive documentation, making it perfect for learning, prototyping, or building production websites.

๐Ÿš€ Features

  • ๐ŸŽจ Modern Design: Clean, responsive UI built with Tailwind CSS
  • ๐Ÿ“ Uniform CMS: Visual editing with drag-and-drop components
  • ๐Ÿ“ฑ Mobile-First: Responsive design that works on all devices
  • โšก Performance: Optimized for speed and SEO with image transformations
  • ๐Ÿงฉ Component Library: No component library
  • ๐Ÿ“š Content Management: Structured Article and Author content types
  • ๐Ÿ–ผ๏ธ Asset Optimization: Automatic image resizing and optimization
  • ๐ŸŽฎ Component Playground: Interactive sandbox for testing and learning
  • ๐ŸŽ“ Educational: Extensive code comments for learning
  • ๐Ÿ”ง Developer Experience: TypeScript, ESLint, and modern tooling

๐Ÿ—๏ธ Architecture

Page Structure

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚     Header      โ”‚ โ† Navigation & Mobile Menu
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                 โ”‚
โ”‚   Main Content  โ”‚ โ† Dynamic Uniform Components
โ”‚   (flexible)    โ”‚
โ”‚                 โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚     Footer      โ”‚ โ† Always at bottom (sticky footer)
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Component Categories

๐Ÿ—๏ธ Layout Components

  • Header - Responsive navigation with mobile menu
  • Footer - Clean footer with links and copyright
  • Page - Main page layout with header/body/footer slots

๐Ÿ“„ Content Components

  • Section - Versatile content section with 6 variants (hero, content, feature, testimonial, callout, minimal)
  • Text - Simple text content component
  • RichText - Advanced rich text content with formatting
  • CTA - Call-to-action buttons with styling options

๐Ÿ–ผ๏ธ Media Components

  • Image - Responsive images with optimization
  • ImageFeature - Image cards with icons and descriptions
  • ImageHero - Full-screen hero with background images
  • Video - Video player with title and description

๐Ÿงฉ Navigation Components

  • NavigationLink - Smart navigation links (desktop/mobile aware)
  • FooterNavLink - Simple footer navigation links

๐Ÿ› ๏ธ Getting Started

Prerequisites

  • Node.js 18+
  • npm
  • Uniform account and project

Installation

  1. Clone and install dependencies:
git clone <repository-url>
cd light-starter
npm install
  1. Set up environment variables:
cp .env.example .env

Add your Uniform credentials:

UNIFORM_API_KEY=your_api_key_here
UNIFORM_PROJECT_ID=your_project_id
UNIFORM_PREVIEW_SECRET=light-starter
  1. Push components to Uniform:
# Push component definitions to your Uniform project
npm run uniform:push
# or
npx uniform sync push
  1. Start development server:
npm run dev

Open http://localhost:3000 to see your site.

  1. Access the component playground: Visit http://localhost:3000/uniform-playground to test components in a sandbox environment with responsive design tools.

๐ŸŽฏ Development Commands

# Development
npm run dev           # Start development server
npm run build         # Build for production
npm run start         # Start production server

# Uniform Sync
npm run uniform:pull  # Pull latest data from Uniform
npm run uniform:push  # Push local changes to Uniform

# Code Quality
npm run lint          # Run ESLint

๐Ÿ“ Project Structure

src/
โ”œโ”€โ”€ components/
โ”‚   โ”œโ”€โ”€ content/        # Content components  
โ”‚   โ”œโ”€โ”€ layout/         # Layout components
โ”‚   โ”œโ”€โ”€ media/          # Image/video components
โ”‚   โ”œโ”€โ”€ page/           # Page layout components
โ”‚   โ”œโ”€โ”€ playground/     # Uniform playground
โ”‚   โ””โ”€โ”€ ui/             # Base UI components
โ”œโ”€โ”€ contexts/           # React contexts
โ”œโ”€โ”€ hooks/              # Custom React hooks
โ”œโ”€โ”€ lib/                # Utilities and helpers
โ”œโ”€โ”€ pages/              # Next.js pages
โ”œโ”€โ”€ styles/             # Global styles
โ”œโ”€โ”€ uniformContext/     # Uniform context configuration
โ””โ”€โ”€ utilities/          # Canvas clients and utilities
uniform-data/           # Uniform project data (components, content types, etc.)

๐ŸŽจ Component Variants

Section Component Variants

The Section component demonstrates the power of variant-based design:

๐Ÿ”— Uniform Integration

Visual Editing

  • Components are registered with Uniform for visual editing
  • UniformSlots create editable areas for content authors
  • UniformText and UniformRichText enable inline editing
  • Asset parameters support image and video uploads

Content Management

  • Drag-and-drop component building
  • Real-time preview in Uniform Canvas
  • No-code content editing for non-technical users
  • Version control and publishing workflows

Content Types

The project includes structured content types for rich content management:

  • Article - Blog posts with title, content, tags, category, and metadata
  • Author - Author profiles with bio, avatar, and social links

Developer Features

  • TypeScript integration with Uniform types
  • Component pattern support for content reuse
  • Responsive design with device-specific visibility rules
  • Performance optimization with automatic asset transformations

๐Ÿ“š Learning Resources

Code Comments

Every component includes extensive documentation:

  • Purpose and use cases
  • Uniform-specific features
  • Responsive design patterns
  • Performance considerations
  • Best practices

Key Concepts Demonstrated

  • React Patterns: Hooks, Context, Component composition
  • TypeScript: Interface definitions, type safety
  • Uniform CMS: Component registration, slots, parameters, content types
  • Content Architecture: Structured content with Article and Author types
  • Component Modularity: Breaking complex components into focused modules
  • Asset Management: Optimized image handling with transformations
  • Responsive Design: Mobile-first, Tailwind CSS
  • Performance: Image optimization, code splitting
  • Accessibility: ARIA labels, semantic HTML, alt text
  • Internationalization: Editable text labels for multi-language support

๐Ÿš€ Deployment

Vercel (Recommended)

# Install Vercel CLI
npm i -g vercel

# Deploy
vercel

# Set environment variables in Vercel dashboard

Other Platforms

This Next.js app can be deployed to any platform supporting Node.js:

  • Netlify
  • AWS Amplify
  • Railway
  • DigitalOcean App Platform

๐Ÿค Contributing

This project follows modern development practices:

  1. Code Style: ESLint + Prettier configuration
  2. TypeScript: Strict mode enabled
  3. Component Structure: Consistent patterns across all components
  4. Documentation: Comprehensive comments for educational value
  5. Testing: Ready for test integration

๐Ÿ“„ License

MIT License - feel free to use this project for learning, prototyping, or building your own applications.

๐Ÿ†˜ Support


Built with โค๏ธ using Next.js, Uniform, and Tailwind CSS

About

Clone of light-starter without the components

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors