Skip to content

Thundercloud12/DevsClub-web-forked

 
 

Repository files navigation

DevsClub Web — Nuxt Migration

This repository contains the migration of the DevsClub website from Next.js to Nuxt 3.

Built using:

  • Vue 3
  • Nuxt 3
  • TypeScript
  • pnpm
  • Husky
  • Commitlint
  • Prettier

Tech Stack

Technology Purpose
Nuxt 3 Full-stack Vue framework
Vue 3 Frontend framework
TypeScript Type safety
pnpm Package manager
Husky Git hooks
Commitlint Commit message enforcement
Prettier Code formatting
lint-staged Staged file formatting

Project Setup

Clone Repository

git clone <repo-url>
cd vue-migration

Install Dependencies

Using pnpm:

pnpm install

During installation, pnpm may ask to approve build scripts.

Run:

pnpm approve-builds

Approve:

  • esbuild
  • @parcel/watcher

Development Server

Start the local development server:

pnpm dev

Application runs on:

http://localhost:3000

Production Build

Build the application for production:

pnpm build

Preview production build locally:

pnpm preview

Code Quality & Git Hooks

This project uses:

  • Husky
  • Commitlint
  • Prettier
  • lint-staged

to maintain clean commits and consistent formatting.


Commit Message Convention

All commits must follow the Conventional Commits format:

type: message

Examples:

git commit -m "feat: add authentication flow"
git commit -m "fix: resolve navbar overflow"
git commit -m "chore: configure husky"

Allowed commit types:

  • feat
  • fix
  • chore
  • docs
  • style
  • refactor
  • perf
  • test
  • build
  • ci
  • revert

Branch Naming Convention

Branch names must follow:

type/branch-name

Examples:

feature/auth-system
fix/mobile-navbar
chore/husky-setup
refactor/api-cleanup

Allowed branch prefixes:

  • feature
  • fix
  • chore
  • docs
  • refactor
  • style
  • test

Protected Branch Rules

Direct pushes to main are blocked locally using Husky hooks.

Please create feature branches and open Pull Requests instead.

Example workflow:

git checkout -b feature/login-page
git commit -m "feat: add login page"
git push origin feature/login-page

Formatting

Format the project manually:

pnpm format

Prettier automatically formats staged files during commits.


Linting

Run lint checks:

pnpm lint

Recommended VS Code Extensions

  • Vue - Official
  • Prettier
  • ESLint
  • Tailwind CSS IntelliSense

Deployment

Nuxt supports deployment on:

  • VPS
  • Docker
  • Vercel
  • Netlify
  • Cloudflare
  • Node servers

Build output is generated inside:

.output/

Learn More

About

Official Website for TSEC Dev's Club

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Vue 86.0%
  • TypeScript 12.7%
  • CSS 1.3%