Skip to content

AWSSBG-at-SRMIST/Official-Website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

26 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AWS Student Builder Group at SRMIST Website

A modern and scalable AWS Student Builder Group at SRMIST Website built with TypeScript, Tailwind CSS v4, and shadcn/ui. This website is designed for production-ready applications with a clean architecture, reusable components, and developer-friendly tooling.

✨ Features

Core Features

  • Next.js 16.1.1 with App Router and React 19
  • TypeScript for strong type safety
  • React Compiler enabled for automatic performance optimizations
  • ESLint configured with Next.js best practices

UI & Styling

  • Tailwind CSS v4 with PostCSS integration
  • shadcn/ui component system powered by Radix UI
  • Lucide React icon library
  • Class Variance Authority for scalable component variants
  • tailwind-merge and clsx for conditional styling

Developer Experience

  • Responsive design utilities and a custom mobile detection hook
  • react-hot-toast for elegant notifications
  • js-cookie for cookie management
  • Clean folder structure with reusable components and utilities

πŸ“¦ Tech Stack

Core

Technology Version Description
Next.js 16.1.1 React framework with App Router
React 19.2.3 UI library
TypeScript ^5 Static typing

Styling & UI

  • Tailwind CSS ^4
  • shadcn/ui
  • Radix UI
  • Lucide React
  • Class Variance Authority (CVA)
  • tailwind-merge
  • clsx

Development Tools

  • ESLint ^9
  • Babel React Compiler
  • PostCSS

πŸš€ Getting Started

1. Clone the Repository

git clone https://github.com/AWSSBG-SRMIST/club-website
cd club-website

2. Install Dependencies

npm install

or

yarn install

or

pnpm install

3. Start the Development Server

npm run dev

or

yarn dev

or

pnpm dev

4. Open the Application

Navigate to:

http://localhost:3000

πŸ“œ Available Scripts

Command Description
npm run dev Start the development server
npm run build Build the application for production
npm run start Start the production server
npm run lint Run ESLint checks

πŸ“ Project Structure

club-website/
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ file.svg
β”‚   β”œβ”€β”€ globe.svg
β”‚   β”œβ”€β”€ next.svg
β”‚   β”œβ”€β”€ vercel.svg
β”‚   └── window.svg
β”‚
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ favicon.ico
β”‚   β”‚   β”œβ”€β”€ globals.css
β”‚   β”‚   β”œβ”€β”€ layout.tsx
β”‚   β”‚   └── page.tsx
β”‚   β”‚
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   └── ui/
β”‚   β”‚       β”œβ”€β”€ badge.tsx
β”‚   β”‚       β”œβ”€β”€ button.tsx
β”‚   β”‚       β”œβ”€β”€ card.tsx
β”‚   β”‚       β”œβ”€β”€ carousel.tsx
β”‚   β”‚       β”œβ”€β”€ dialog.tsx
β”‚   β”‚       β”œβ”€β”€ input.tsx
β”‚   β”‚       β”œβ”€β”€ select.tsx
β”‚   β”‚       β”œβ”€β”€ separator.tsx
β”‚   β”‚       β”œβ”€β”€ sheet.tsx
β”‚   β”‚       β”œβ”€β”€ sidebar.tsx
β”‚   β”‚       β”œβ”€β”€ skeleton.tsx
β”‚   β”‚       └── tooltip.tsx
β”‚   β”‚
β”‚   β”œβ”€β”€ hooks/
β”‚   β”‚   └── use-mobile.ts
β”‚   β”‚
β”‚   └── lib/
β”‚       └── utils.ts
β”‚
β”œβ”€β”€ components.json
β”œβ”€β”€ eslint.config.mjs
β”œβ”€β”€ next.config.ts
β”œβ”€β”€ package.json
β”œβ”€β”€ postcss.config.mjs
└── tsconfig.json

βš™οΈ Configuration Highlights

Next.js

  • App Router enabled
  • React Compiler enabled
  • Strict TypeScript mode
  • Path aliases configured
@/* β†’ ./src/*

Tailwind CSS

  • Tailwind CSS v4
  • PostCSS integration
  • CSS Variables enabled
  • Zinc color palette
  • New York shadcn/ui style

shadcn/ui

  • React Server Components compatible
  • Radix UI primitives
  • Lucide React icons
  • Accessible by default

ESLint

  • Next.js Core Web Vitals rules
  • TypeScript support
  • Optimized build directory ignores

🎨 Included UI Components

Layout

  • Card
  • Separator
  • Sheet
  • Sidebar

Forms

  • Button
  • Input
  • Select

Feedback

  • Badge
  • Skeleton
  • Tooltip
  • Dialog

Navigation

  • Carousel

Utilities

  • useIsMobile() hook
  • cn() utility helper

All components are built with:

  • Accessibility-first design
  • Full TypeScript support
  • Tailwind CSS styling
  • CVA-based variants

πŸ“± Responsive Design

This code follows a mobile-first approach and includes:

  • Tailwind responsive utilities
  • Mobile detection hook
  • Adaptive layouts
  • Default mobile breakpoint at 768px

πŸ”§ Customization

Add New shadcn/ui Components

npx shadcn@latest add <component-name>

Customize Theme Colors

Modify:

src/app/globals.css

or update:

components.json

Path Aliases

Import modules cleanly using:

import Button from "@/components/ui/button";

instead of:

import Button from "../../components/ui/button";

πŸ“š Useful Resources

  • Next.js Documentation
  • React Documentation
  • Tailwind CSS Documentation
  • shadcn/ui Documentation
  • Radix UI Documentation
  • TypeScript Documentation

❀️ Author

Built and maintained by Aakarsh.

Releases

No releases published

Packages

 
 
 

Contributors