2025-09-29 03:16:13 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:12:11 -06:00
2025-09-29 03:16:13 -06:00
2025-09-29 03:12:11 -06:00

Shane Simpson Portfolio

This is a Next.js 15 application built with TypeScript, Tailwind CSS, and shadcn/ui, serving as a portfolio website.

Features

  • Modern UI: Built with shadcn/ui components for a sleek and accessible user interface.
  • Responsive Design: Utilizes Tailwind CSS for a mobile-first and responsive layout.
  • Theme Toggling: Includes a theme toggle for light/dark mode functionality.
  • Smooth Scrolling: Integrated Lenis for smooth scrolling experiences.
  • Collapsible Sections: Interactive collapsible areas for content organization.
  • Dynamic Studio Strip: A component to display a strip of studios or projects.

Technologies Used

  • Next.js 15 (App Router): React framework for building performant web applications.
  • React 19: JavaScript library for building user interfaces.
  • TypeScript: Strongly typed superset of JavaScript for enhanced code quality.
  • Tailwind CSS: Utility-first CSS framework for rapid UI development.
  • shadcn/ui: Reusable UI components built with Radix UI and Tailwind CSS.
  • Lenis: A smooth scrolling library.

Getting Started

To run this project locally, follow these steps:

  1. Clone the repository:

    git clone https://git.biohazardvfx.com/Nicholai/shane-simpson.git
    cd shane-simpson
    
  2. Install dependencies:

    npm install
    # or yarn install
    # or pnpm install
    
  3. Run the development server:

    npm run dev
    # or yarn dev
    # or pnpm dev
    

    Open http://localhost:3000 with your browser to see the result.

Project Structure

.
├── public/                 # Static assets
├── src/
│   ├── app/                # Next.js App Router (layout, pages, global styles)
│   │   ├── favicon.ico
│   │   ├── globals.css
│   │   ├── layout.tsx
│   │   └── page.tsx
│   ├── components/         # Reusable UI components
│   │   ├── collapsible-area.tsx
│   │   ├── studios-strip.tsx
│   │   ├── theme-toggle.tsx
│   │   ├── footer/
│   │   │   └── site-footer.tsx
│   │   ├── providers/      # Context providers
│   │   │   ├── lenis-root.tsx
│   │   │   └── theme-provider.tsx
│   │   └── ui/             # shadcn/ui components
│   │       ├── aspect-ratio.tsx
│   │       ├── badge.tsx
│   │       ├── breadcrumb.tsx
│   │       ├── button.tsx
│   │       ├── card.tsx
│   │       ├── scroll-area.tsx
│   │       ├── separator.tsx
│   │       └── tabs.tsx
│   ├── lib/                # Utility functions and configurations
│   │   ├── links.ts
│   │   └── utils.ts
│   └── types/              # TypeScript custom type definitions
│       └── css.d.ts
├── .gitignore              # Git ignore file
├── components.json         # shadcn/ui configuration
├── eslint.config.mjs       # ESLint configuration
├── next.config.ts          # Next.js configuration
├── package.json            # Project dependencies and scripts
├── postcss.config.mjs      # PostCSS configuration
└── tsconfig.json           # TypeScript configuration
Description
No description provided
Readme 114 KiB
Languages
TypeScript 89%
CSS 10.2%
JavaScript 0.8%