2025-12-28 00:46:08 +11:00
2025-12-27 21:03:18 +11:00
2025-12-28 00:46:08 +11:00
2025-12-27 22:21:17 +11:00

🚀 Web Page Performance Test

A modern, sleek web application template by Beyond Cloud Technology with automated Proxmox deployment capabilities.

License: MIT Node.js Auto-Deploy


Features

  • 🎨 Modern Design: Beautiful glassmorphism UI with gradient accents
  • 🌙 Dark Theme: Eye-friendly dark color scheme
  • 📱 Responsive: Optimized for all device sizes
  • Fast: Nginx + Node.js Express for optimal performance
  • 🔄 Auto-Sync: Automatically syncs with GitHub every 5 minutes
  • 🔐 Secure: Credentials never committed to Git
  • 📊 Git Badge: Live display of deployed version
  • 🚀 One-Click Deploy: Automated Proxmox deployment

📦 What's Included

  • Frontend: Modern HTML5 + CSS3 with premium design system
  • Backend: Express.js server with Git info API
  • Deployment: Fully automated Proxmox deployment scripts
  • Auto-Sync: Cron-based GitHub synchronization
  • Service Management: Systemd (more reliable than PM2)
  • Reverse Proxy: Nginx configuration included

🚀 Quick Start (Proxmox Deployment)

Prerequisites

  • Proxmox TurnKey Linux Node.js container
  • SSH access (root password)
  • GitHub Personal Access Token

Deploy in 3 Steps

  1. Create your credentials file:

    Copy-Item deploy-config.TEMPLATE.json deploy-config.json
    # Edit deploy-config.json with your server IP, password, and GitHub token
    
  2. Run deployment:

    .\deploy-local.ps1
    
  3. Done! 🎉

    • Access your app at http://YOUR_SERVER_IP
    • Push to GitHub, wait 5 minutes, updates deploy automatically!

📖 Need help? See QUICKSTART.md or DEPLOYMENT.md


🛠️ Local Development

Install Dependencies

npm install

Run Development Server

npm run dev

Run Production Server

npm start

The application will be available at http://localhost:3000


📁 Project Structure

Web-Page-Performance-Test/
├── 📄 index.html              # Main HTML file
├── 🎨 styles.css              # Design system & styling
├── ⚙️ script.js               # Frontend JavaScript
├── 🖥️ server.js               # Express server
├── 📦 package.json            # Dependencies
├── 🔒 .gitignore              # Git exclusions
│
├── 📚 Documentation
│   ├── README.md              # This file
│   ├── QUICKSTART.md          # Quick deployment guide
│   ├── DEPLOYMENT.md          # Detailed deployment docs
│   └── PROXMOX_DEPLOY_TEMPLATE.md  # Reference template
│
└── 🚀 Deployment Scripts
    ├── deploy-config.TEMPLATE.json  # Credentials template
    ├── deploy-local.ps1             # Local automation (Windows)
    ├── deploy-server.sh             # Server setup script (Linux)
    └── auto-sync.sh                 # Auto-sync cron job

🔄 Auto-Sync System

After deployment, your server automatically:

  • Checks GitHub every 5 minutes
  • Pulls latest changes if available
  • Installs new dependencies if needed
  • Restarts the application
  • Does nothing if no changes (efficient!)

View Sync Logs

ssh root@YOUR_SERVER_IP
tail -f /var/log/web-page-performance-test-autosync.log

🎨 Design System

Color Palette

  • Primary: Indigo (#6366f1)
  • Secondary: Purple (#8b5cf6)
  • Success: Green (#10b981)
  • Backgrounds: Dark theme (#0a0e1a, #131829, #1a2035)

Typography

  • Primary Font: Inter (Google Fonts)
  • Monospace: JetBrains Mono

Features

  • Glassmorphism effects with backdrop blur
  • Smooth transitions and animations
  • Responsive design (mobile-first)
  • Modern gradients and shadows

🖥️ Server Architecture

┌─────────────────────────────────────┐
│         Nginx (Port 80)             │
│    Reverse Proxy + Static Files     │
└─────────────┬───────────────────────┘
              │
              ▼
┌─────────────────────────────────────┐
│     Node.js Express (Port 3000)     │
│      API Endpoints + Routing        │
└─────────────────────────────────────┘
              │
              ▼
┌─────────────────────────────────────┐
│     Systemd Service Management      │
│   Auto-restart + Boot Persistence   │
└─────────────────────────────────────┘
              │
              ▼
┌─────────────────────────────────────┐
│   Cron Job (Every 5 Minutes)        │
│   Auto-sync with GitHub Repo        │
└─────────────────────────────────────┘

📊 API Endpoints

GET /api/git-info

Returns current Git commit information

Response:

{
  "commitId": "abc1234",
  "commitAge": "2 hours ago",
  "error": false
}

🔐 Security

  • Credentials Protected: deploy-config.json is gitignored
  • Token Removal: GitHub token removed from server after clone
  • Systemd Service: Runs with proper permissions
  • Nginx Proxy: Shields backend from direct access
  • Memory-Only Storage: Credentials stored in memory during deployment only

🛡️ Systemd vs PM2

This project uses Systemd instead of PM2 for:

  • Native Linux integration
  • Better logging with journalctl
  • More reliable auto-restart
  • Boot persistence without extra configuration
  • Lower memory footprint
  • System-wide process management

📊 Monitoring & Logs

Application Logs

journalctl -u web-page-performance-test -f

Auto-Sync Logs

tail -f /var/log/web-page-performance-test-autosync.log

Nginx Logs

tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log

Service Status

systemctl status web-page-performance-test
systemctl status nginx

🔧 Troubleshooting

Application won't start

journalctl -u web-page-performance-test -n 50
systemctl restart web-page-performance-test

Auto-sync not working

# Check cron job
crontab -l | grep auto-sync

# Run manually
cd /var/www/web-page-performance-test
./auto-sync.sh

Nginx issues

nginx -t                    # Test configuration
systemctl restart nginx

Git authentication errors

cd /var/www/web-page-performance-test
git remote -v              # Should show HTTPS URL
git pull origin main       # Test manually

🤝 Contributing

This is a template project for Beyond Cloud Technology projects. Feel free to:

  • Fork and modify for your needs
  • Submit issues for bugs
  • Suggest improvements

📺 YouTube

Watch tutorials and project walkthroughs on our channel: @beyondcloudtechnology


📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


🙏 Acknowledgments

  • TurnKey Linux for excellent Proxmox templates
  • Proxmox VE for virtualization platform
  • Node.js and Express for the backend
  • Nginx for reverse proxy capabilities

📞 Support

For issues or questions:

  1. Check DEPLOYMENT.md for detailed deployment info
  2. Check QUICKSTART.md for quick reference
  3. Review the troubleshooting section above
  4. Open an issue on GitHub

Made with ❤️ by Beyond Cloud Technology

YouTubeGitHub

Description
No description provided
Readme GPL-3.0 4.5 MiB
Languages
JavaScript 59.1%
HTML 22.8%
CSS 8.8%
PowerShell 5.6%
Shell 3.7%