A modern, responsive website for First Responder Fencing - a veteran and first responder owned fencing business specializing in fence installation, repairs, staining, and pressure washing services.
- Framework: React 18 with TypeScript
- Build Tool: Vite
- Styling: Tailwind CSS
- UI Components: shadcn/ui (Radix UI primitives)
- Routing: React Router v6
- State Management: TanStack Query (React Query)
- Form Handling: React Hook Form with Zod validation
- Icons: Lucide React
- Node.js 18+ (or Bun)
- npm, yarn, pnpm, or bun package manager
- Clone the repository:
git clone <repository-url>
cd first-responder-fencing- Install dependencies:
npm install
# or
bun install- Start the development server:
npm run dev
# or
bun dev- Open your browser and navigate to
http://localhost:5173
npm run dev- Start development servernpm run build- Build for productionnpm run build:dev- Build in development modenpm run preview- Preview production build locallynpm run lint- Run ESLint
src/
├── assets/ # Images and static assets
├── components/ # React components
│ ├── ui/ # shadcn/ui components
│ └── ... # Feature components (Header, Hero, Services, etc.)
├── hooks/ # Custom React hooks
├── lib/ # Utility functions
├── pages/ # Page components
└── main.tsx # Application entry point
This project uses:
- TypeScript for type safety
- ESLint for code linting
- Tailwind CSS for styling with custom theme configuration
- Path aliases (
@/) for cleaner imports
npm run buildThe production build will be output to the dist/ directory, ready to be deployed to any static hosting service.