🏨 Chuti Resort Gazipur - Dynamic Website

A dynamic, content-managed resort website for Chuti Resort Gazipur, built with Next.js 13 (App Router) and PostgreSQL. The site serves dynamic content from a database and is deployed on Railway.com with automated CI/CD from GitHub.

  • 🔧 Tech Stack: Next.js 13, React 18, Node.js, PostgreSQL, Sass, Bootstrap
  • 🌍 Live Website: chutiresort.com
  • 📌 Type: Dynamic Full-Stack Web Application
  • 👨‍💻 Role: Full-Stack Developer
  • ☁️ Deployment: Railway.com (Auto-deploy from GitHub)
  • 🏢 Client: Chuti Resort Ltd. (Part of Chuti Group)

📋 Project Overview

Chuti Resort Gazipur is a premier eco-resort located just 18 km from Dhaka Airport, nestled in the lush greenery of Sukundi village on 54 bigha of land. The website serves as the resort's complete digital presence — showcasing accommodations, activities, dining, conference facilities, and booking information to potential guests.

Unlike a static website, this project is built as a fully dynamic application using Next.js 13 with the App Router. All website content — banners, sections, room details, activity descriptions — is stored in a PostgreSQL database and fetched dynamically via internal API routes. This means the resort team can update content without touching any code.

🚀 Tech Stack

Frontend
  • Next.js 13 (App Router)
  • React 18
  • Sass & Bootstrap
  • Swiper.js (Carousels)
  • React Photo Album
Backend
  • Next.js API Routes
  • Node.js Runtime
  • Server-Side Rendering
  • Dynamic Data Fetching
Database & Deployment
  • PostgreSQL (pg pool)
  • Railway.com (PaaS)
  • GitHub CI/CD
  • Auto-deployment

📁 Architecture & Data Flow

🗄️ Database Layer
PostgreSQL database stores all website content — banners, sections, room details, and activity info using a structured content table
🔌 API Routes
Next.js server-side API routes handle content fetching, content updates, and file upload operations
📄 Dynamic Pages
Pages are rendered dynamically (force-dynamic) fetching fresh content from the database on every request
🖼️ Media Management
File upload system for managing resort images, room photos, and promotional banners

✨ Key Features

  • 🌐 Fully Dynamic Content — All website content served from PostgreSQL, easily updatable without code changes
  • 🏠 Room Showcases — Detailed pages for all accommodation types (Family Cottage, Executive Suite, Royal Suite, Duplex Villa, and more)
  • 🎯 Activity Highlights — Nature & Outdoor, Kids Zone, Pool Area, Conference Hall, Restaurant, and more
  • 📱 Responsive Design — Optimized for all screen sizes with Bootstrap and custom Sass styling
  • 🖼️ Image Galleries — Beautiful photo albums and carousels powered by Swiper.js and React Photo Album
  • 📊 Server-Side Rendering — Next.js SSR ensures fast page loads and SEO-friendly content
  • 🔄 Content Management API — Internal API routes for fetching and updating website content dynamically
  • 📤 File Upload System — Dedicated upload endpoint for managing resort media assets

☁️ Deployment & CI/CD

The application is deployed on Railway.com with the Next.js app and PostgreSQL database running as separate services. The project is connected to GitHub with automatic deployment — every push to the main branch triggers an automatic rebuild and redeploy, ensuring the live site is always up-to-date with the latest changes.

  • 🚀 Auto-deployment — Git push to main triggers automatic rebuild and deploy on Railway
  • 🏗️ Multi-service setup — Next.js app and PostgreSQL database as separate Railway services
  • 🌐 Custom domain — Production site served at chutiresort.com
  • ⚡ Optimized builds — Next.js production build with optimized static assets

🔗 Part of Chuti Group Ecosystem

This project is part of the broader Chuti Group digital portfolio. Chuti Resort Gazipur has been providing world-class eco-lifestyle and hospitality services since 2012, and this website serves as its primary digital gateway — welcoming guests into a green kingdom of fun, relaxation, and togetherness.

"A fully dynamic resort website that combines the power of Next.js 13 and PostgreSQL to deliver a content-managed, SEO-optimized, visually stunning digital experience — deployed with automated CI/CD on Railway.com for seamless updates and reliability."