1
0
Fork 0
mirror of https://github.com/homarr-labs/dashboard-icons.git synced 2025-09-06 15:58:18 +02:00
dashboard-icons/web
2025-04-22 14:21:48 +02:00
..
public feat(website): visually enhance website 2025-04-17 18:05:07 +02:00
src feat: integrate PostHog for tracking when no icons are found in search 2025-04-22 14:21:48 +02:00
.gitignore feat: Add website (#1157) 2025-04-16 16:18:20 +02:00
biome.json Format codebase 2025-04-17 18:05:08 +02:00
components.json feat: Add website (#1157) 2025-04-16 16:18:20 +02:00
next.config.ts feat: Add website (#1157) 2025-04-16 16:18:20 +02:00
package.json Update pnpm approved builds 2025-04-18 15:25:55 +02:00
pnpm-lock.yaml Add og image generator 2025-04-18 13:57:28 +02:00
postcss.config.mjs feat: Add website (#1157) 2025-04-16 16:18:20 +02:00
README.md feat: Add website (#1157) 2025-04-16 16:18:20 +02:00
tsconfig.json feat: Add website (#1157) 2025-04-16 16:18:20 +02:00

Dashboard Icons Web App

A web application to browse, search, and download icons from the Dashboard Icons collection.

Features

  • Browse through a curated collection of beautiful dashboard icons
  • Search icons by name, aliases, or categories
  • View icon details including author, formats, and variants
  • Download icons in different formats (SVG, PNG, WebP)
  • Copy icon URLs directly to your clipboard
  • Responsive design that works on mobile, tablet, and desktop
  • Dark mode support

Tech Stack

  • Next.js 15 - React framework with App Router
  • TypeScript v5 - Type-safe JavaScript
  • Tailwind CSS - Utility-first CSS framework
  • Shadcn UI - Reusable components built with Radix UI and Tailwind

Project Structure

src/
├── app/                      # Next.js App Router
│   ├── api/                  # API routes
│   │   └── icons/            # Icons browsing and detail pages
│   │       ├── [icon]/       # Dynamic icon detail page
│   │       │   ├── components/   # Icon-specific components
│   │       │   ├── error.tsx     # Error handling
│   │       │   ├── loading.tsx   # Loading state
│   │       │   └── page.tsx      # Icon detail page
│   │       ├── components/       # Icons page components
│   │       ├── loading.tsx       # Loading state
│   │       └── page.tsx          # Icons browse page
│   ├── globals.css           # Global styles
│   ├── layout.tsx            # Root layout
│   ├── page.tsx              # Homepage
│   └── theme-provider.tsx    # Theme provider component
├── components/               # Shared components
│   ├── ui/                   # UI components (from shadcn/ui)
│   ├── header.tsx            # App header
│   └── theme-switcher.tsx    # Theme switcher
├── lib/                      # Utility functions
│   ├── api.ts                # API utilities
│   └── utils.ts              # General utilities
└── types/                    # TypeScript type definitions
    ├── icons.ts              # Icon-related types
    └── index.ts              # Type exports

Development

Prerequisites

  • Node.js 18+
  • pnpm

Installation

  1. Clone the repository
  2. Install dependencies:
    pnpm install
    
  3. Create a .env file with the following variables:
    GITHUB_TOKEN=your_github_token
    
  4. Start the development server:
    pnpm dev
    

Build

pnpm build

Deployment

The application is optimized for deployment on Vercel.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.