✨ Interactive Landing Page
|
🔮 3D Customizer Studio
|
🛍️ Product Catalogue & Shop
|
📊 Admin Analytics Dashboard
|
Ensure you have the following installed on your machine:
Navigate into the backend workspace and spin up the development API:
# 1. Navigate to the backend directory
cd backend
# 2. Install dependencies
npm install
# 3. Setup environment variables (Create .env based on .env.example)
# Add keys for JWT, Stripe, Cloudinary, AWS S3
cp .env.example .env
# 4. Generate Prisma client & initialize database (SQLite by default)
npx prisma generate
npx prisma migrate dev --name init
# 5. Seed the product catalog
npm run prisma:seed # Seeds the database with products and admin user
# 6. Start NestJS server in watch mode
npm run start:dev
The backend API will boot up on http://localhost:3001
Navigate to the web workspace and run the client-side server:
# 1. Navigate to the web directory
cd ../web
# 2. Install dependencies
npm install
# 3. Setup client environment variables
# Ensure NEXT_PUBLIC_API_URL points to http://localhost:3001
cp .env.local.example .env.local
# 4. Start Next.js development server
npm run dev
Open your browser and visit http://localhost:3000
adminadminThe stack is fully containerized and production-ready. You can build the stack using Docker or host it directly on a Hostinger VPS.
To run the full backend, frontend, and database locally in production containers:
backend/prisma/schema.prisma to switch the database provider to postgresql (or use a managed PostgreSQL service).docker-compose -f docker-compose.prod.yml up --build -d
Deploy the system directly on a Hostinger VPS with Nginx, Nginx Proxy, and Let’s Encrypt SSL.
Connect to your Hostinger VPS via terminal:
ssh root@YOUR_VPS_IP_ADDRESS
Install the application prerequisites:
# Update server
sudo apt update && sudo apt upgrade -y
# Install Git
sudo apt install git -y
# Install Docker & Docker Compose
sudo apt install docker.io docker-compose -y
sudo systemctl enable docker
sudo systemctl start docker
Clone the repository and set up environment files:
cd /var/www
git clone https://github.com/Rushikesh5102/BeyondTee.git
cd BeyondTee
# Configure Backend
nano backend/.env
# (Paste database URL, Cloudinary secrets, Hostinger SMTP info. Ctrl+X, Y, Enter)
# Configure Frontend
nano web/.env.local
# (Paste production backend URL NEXT_PUBLIC_API_URL and nextauth configurations. Ctrl+X, Y, Enter)
Boot up the stack in detached background mode:
sudo docker-compose -f docker-compose.prod.yml up --build -d
Verify container status:
sudo docker ps
Set up Nginx as a reverse proxy:
# Install Nginx and SSL tools
sudo apt install nginx -y
sudo apt install certbot python3-certbot-nginx -y
# Configure Nginx proxy rules
sudo nano /etc/nginx/sites-available/beyondtee
Paste this configuration (replace yourdomain.in with your domain):
server {
server_name yourdomain.in www.yourdomain.in;
# Route /api traffic to the NestJS Backend (Port 3001)
location /api/ {
proxy_pass http://localhost:3001/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
# Route all other traffic to the Next.js Frontend (Port 3000)
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Enable the configurations and restart Nginx:
sudo ln -s /etc/nginx/sites-available/beyondtee /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
Obtain a free SSL certificate for secure HTTPS:
sudo certbot --nginx -d yourdomain.in -d www.yourdomain.in
Beyondtee/
├── backend/ # NestJS backend API
│ ├── prisma/ # Database schemas and seeds
│ ├── src/ # Core application source code
│ └── Dockerfile # Backend deployment container
├── web/ # Next.js customizer client
│ ├── public/ # Static assets and icons
│ ├── src/ # Next.js pages & React components
│ └── Dockerfile # Frontend deployment container
├── docs/ # Screenshots and assets
└── docker-compose.yml # Local stack orchestration