Back to Explore
DevOps ProjectPipeline Active

GitHub Actions CI + Vercel CD

Every push to main triggers GitHub Actions to lint and validate, then Vercel automatically deploys the new version — zero manual steps.

How It Works

This portfolio uses a split CI/CD strategy. GitHub Actions handles the Continuous Integration (validating code quality), while Vercel handles the Continuous Deployment (building and serving the app globally).

CI — GitHub Actions
  • Checkout code
  • Install dependencies
  • Run ESLint
  • Build validation
CD — Vercel
  • Detects push to main
  • Optimized Next.js build
  • Global CDN deployment
  • Preview URLs for PRs

Pipeline Simulation

Click Run Pipeline to simulate the full flow. The first 4 steps run on GitHub Actions; the last 2 are handled automatically by Vercel.

Pipeline Simulation

GitHub Actions (CI) → Vercel (CD)

GitHub Actions CI
git push
Developer pushes to main
Checkout
actions/checkout@v4
ESLint
npm run lint
Build Check
npm run build
Vercel CD
Vercel Deploy
Auto-triggered by Vercel
Live 🚀
titiswahyudi.space

GitHub Actions Workflow

The CI workflow is defined at .github/workflows/ci-cd.yml. It runs on every push and pull request to main, catching lint errors and build failures before Vercel deploys.

.github/workflows/ci-cd.yml
name: CI — Lint & Build Check

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  validate:
    name: Lint & Build Check
    runs-on: ubuntu-latest

    steps:
      - name: Checkout repository
        uses: actions/checkout@v4

      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: "20"
          cache: "npm"

      - name: Install dependencies
        run: npm ci

      - name: Run ESLint
        run: npm run lint

      - name: Build Next.js app
        run: npm run build

Vercel Auto Deployment

Vercel is connected directly to the GitHub repository. Once a push lands on main, Vercel automatically picks it up, runs an optimized Next.js build, and deploys it globally via its edge CDN.

Automatic Deployments
Every push to main triggers a production deployment with zero configuration.
Preview Deployments
Every pull request gets its own unique preview URL for review before merging.
Zero Config Next.js
Vercel is built by the Next.js team — it understands the framework natively and optimizes accordingly.
Global Edge CDN
Assets are served from the edge closest to each visitor for maximum performance.

Tech Stack

GitHub Actions
CI Runner
Vercel
CD Platform
Next.js 15
Application
ESLint
Code Quality
Node.js 20
Runtime
GitHub
Source Control
See it in action

Check the live GitHub workflow runs