rhineofficialsite Svelte Themes

Rhineofficialsite

Rhine Official Site - Developer Portfolio with Python, PHP, Laravel, React, Svelte

Rhine Official Site

Enterprise-grade multi-service platform built with modern web technologies.


šŸ“‹ Overview

Rhine Official Site is a production-ready enterprise platform demonstrating full-stack development capabilities across multiple technologies while providing real business value.

Key Features

  • šŸ›’ E-commerce - Product catalog, shopping cart, checkout
  • šŸŒ Travel Booking - Destination discovery and booking
  • šŸ“ Portfolio - Project showcase with filtering
  • šŸ‘„ User Dashboard - Profile, orders, file management
  • šŸ“ž Contact System - Form with database storage
  • šŸ” Authentication - Secure login with Supabase Auth
  • šŸ“Š Admin Panel - User and content management

šŸ—ļø Architecture

Tech Stack

Layer Technology Purpose
Frontend Next.js 14, React 18 UI Framework
Styling Tailwind CSS Responsive design
Language TypeScript Type safety
Backend Supabase Database, Auth, Storage
CDN Cloudflare DNS, Pages, R2
CI/CD GitHub Actions Automated deployment

Infrastructure

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│                    Cloudflare                        │
│  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”  │
│  │    DNS      │  │   Pages     │  │     R2      │  │
│  │  (Domains)  │  │  (Frontend) │  │  (Storage)  │  │
│  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
                          │
                          ā–¼
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│                     Supabase                         │
│  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”  │
│  │  PostgreSQL  │  │    Auth     │  │   Storage   │  │
│  │  (Database)  │  │ (Users/Roles)│  │  (Files)    │  │
│  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

šŸš€ Quick Start

Prerequisites

  • Node.js 18+
  • npm or yarn
  • Git

Local Development

# Clone repository
git clone https://github.com/Rhine-Solution/rhineofficialsite.git
cd rhineofficialsite

# Install dependencies
npm install

# Run development server
npm run dev

# Open http://localhost:3000

Environment Variables

Create .env.local:

NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key

šŸ“ Project Structure

rhineofficialsite/
ā”œā”€ā”€ app/                    # Next.js App Router
│   ā”œā”€ā”€ (public)/          # Public pages
│   ā”œā”€ā”€ (auth)/            # Authentication
│   ā”œā”€ā”€ (dashboard)/       # User dashboard
│   └── (admin)/           # Admin panel
ā”œā”€ā”€ components/            # React components
│   ā”œā”€ā”€ ui/               # Base UI components
│   ā”œā”€ā”€ layout/           # Layout components
│   └── features/         # Feature components
ā”œā”€ā”€ lib/                   # Utilities
│   ā”œā”€ā”€ supabase.ts       # Supabase client
│   └── utils.ts          # Helper functions
ā”œā”€ā”€ public/                # Static assets
ā”œā”€ā”€ memory.md             # Project documentation
ā”œā”€ā”€ roadmap.mmd           # Project roadmap
└── README.md             # This file

šŸ”§ Available Scripts

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

šŸ“Š Database Schema

Core Tables

Table Description
users User accounts with roles
products E-commerce catalog
orders Customer orders
order_items Order line items
appointments Booking system
contacts Contact form submissions

RLS Policies

All tables have Row Level Security enabled with policies for:

  • Public read access for products
  • Authenticated access for user data
  • Admin-only for management operations

šŸŒ Deployment

Production URLs

Service URL Platform
Main Site https://www.rhinesolution.com Cloudflare Pages
PHP Shop https://shop.rhinesolution.com Vercel (PHP)
Next.js App https://rhineofficialsite.vercel.app Vercel

Auto-Deployment

  • Frontend (Cloudflare Pages): Automatic on push to main
  • Shop (Vercel PHP): Automatic on push to main

Manual Deployment

# Build the project
npm run build

# Deploy to Cloudflare Pages
npx wrangler pages deploy dist

šŸ“ˆ Features Status

Feature Status Notes
User Authentication āœ… Complete Supabase Auth
Contact Form āœ… Complete Database storage
Product Catalog āœ… Complete From Supabase
Shopping Cart āœ… Complete Session-based
User Dashboard āœ… Complete With file upload
Travel Booking šŸ”¶ In Progress Next.js integration
Admin Panel ā³ Planned Phase 2
Unified App šŸ”¶ In Progress Migration to Next.js

šŸ¤ Contributing

  1. Fork the repository
  2. Create feature branch (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Open Pull Request

šŸ“„ License

MIT License - see LICENSE file for details.


šŸ“š Documentation



Built with ā¤ļø using Next.js, Supabase, and Cloudflare.

Top categories

Loading Svelte Themes