Project Overview
Primary Goals
Generate qualified leads, showcase services & portfolio, build brand authority, enable seamless content management.
Target Markets
USA, Australia, India. Targeting startups, SMEs and enterprise clients across all verticals.
Total Pages
17 production pages + admin panel + API backend. Static HTML + FastAPI CMS backend.
Performance
Lighthouse 90+ target. Pages load under 2 seconds. CDN-ready, GZIP enabled, lazy loading.
Sitemap Structure
Page-wise Functional Documentation
Primary landing page. Converts visitors to leads via hero CTA, service preview and testimonials.
Each service page follows the same layout: description → tech stack → process → pricing → FAQ → CTA.
Admin Panel
noindex,nofollow prevents search indexing.
| Module | Description | Endpoints | Status |
|---|---|---|---|
| 📊 Dashboard | Stats overview: total leads, applications, posts, jobs with unread counts | GET /api/admin/stats | Live |
| 📬 Contact Leads | View, filter, search enquiries. Status: unread → read → replied. Mailto reply. | GET/PATCH/DELETE /api/admin/contacts | Live |
| 💼 Applications | Career pipeline. Status: new → reviewed → shortlisted → rejected → hired. | GET/PATCH/DELETE /api/admin/applications | Live |
| 📝 Blog Posts | Full CRUD. Auto-slug. Publish toggle. Category, excerpt, content, author. | GET/POST/PUT/DELETE /api/admin/blog | Live |
| 💼 Job Listings | Full CRUD. Department, location, type, salary, description, requirements. | GET/POST/PUT/DELETE /api/admin/jobs | Live |
| 🔍 SEO Console | Meta tags per page, sitemap.xml management | — | Planned |
| ⚙️ Settings | Branding, social links, SMTP config | — | Planned |
Technical Stack
Full infrastructure currently deployed and running in production.
Infrastructure Topology
Security Documentation
- ✓SSL / TLS via Let's Encrypt (HTTPS enforced)
- ✓Google reCAPTCHA v3 on all forms
- ✓Rate limiting (5/min contact, 3/min careers)
- ✓HTMLt input sanitization with bleach
- ✓Token-auth protected admin panel
- ✓Admin panel noindex / nofollow
- ✓CORS restricted to production origins
- ✓Environment variables for secrets (.env)
- ✓Parameterised SQL queries (SQLAlchemy ORM)
- ✓IP logging on form submissions
- ☐UFW / Firewalld server-level firewall
- ☐Daily automated backups (pgdump)
- ☐SMTP email alerts on suspicious activity
- ◌Fail2Ban brute-force protection
- ◌WAF (Cloudflare or ModSecurity)
SEO Documentation
- ✓Unique meta title + description per page
- ✓Open Graph tags (og:title, og:description, og:image)
- ✓Twitter Card meta tags
- ✓JSON-LD schema (Organization, Service, Article)
- ✓XML sitemap (sitemap.xml)
- ✓robots.txt configured
- ✓Google Analytics 4 (GA4) integrated
- ✓Canonical URLs set
- ✓HTTPS (Google ranking signal)
- ✓Mobile-responsive design
- ☐Google Search Console verified
- ☐Core Web Vitals monitoring
- ☐Bing Webmaster Tools
- ◌Structured data for FAQs (FAQPage schema)
- ◌Hreflang for multi-language
Performance Optimization
- ✓Intersection Observer scroll animations
- ✓CSS variables (single source of truth)
- ✓Minified inline CSS approach
- ✓Google Fonts with preconnect
- ✓No heavy JS frameworks (vanilla JS)
- ✓GZIP enabled via Nginx
- ✓FastAPI async endpoints
- ✓PostgreSQL connection pool (pool_pre_ping)
- ☐Image compression (WebP conversion)
- ☐Nginx static file caching headers
- ☐Lazy loading for images
- ◌Redis caching for API responses
- ◌CDN (Cloudflare) for static assets
Deployment Documentation
/var/www/digiinnovativesolutions/ · Backend: /opt/digi-api/
Static Frontend
Pure HTML/CSS/JS files served directly by Nginx. Deploy via scp from local to /var/www/.
Backend API
Docker Compose stack at /opt/digi-api/. Two services: db (PostgreSQL) + api (FastAPI).
Nginx Proxy
master_proxy_nginx container. Forwards /api/ requests to the API service on the shared Docker network.
Frontend Deploy (SCP)
Backend Deploy & Restart
Database Migration
Full Deployment Checklist
docker compose up -d --build from /opt/digi-api/.docker exec master_proxy_nginx nginx -s reloadcurl https://digiinnovativesolutions.com/api/health → should return {"status":"ok"}.API Reference
X-Admin-Token: <token>
| Method | Endpoint | Description | Auth |
|---|---|---|---|
| GET | /api/health | Health check | Public |
| POST | /api/contact | Submit contact form (rate 5/min) | reCAPTCHA |
| POST | /api/careers | Submit career application (rate 3/min) | reCAPTCHA |
| GET | /api/blog | List published blog posts | Public |
| GET | /api/blog/{slug} | Get single blog post | Public |
| GET | /api/jobs | List active job listings | Public |
| GET | /api/admin/stats | Dashboard stats | Admin |
| GET | /api/admin/contacts | List all contact submissions | Admin |
| PATCH | /api/admin/contacts/{id} | Update status | Admin |
| DELETE | /api/admin/contacts/{id} | Delete submission | Admin |
| GET | /api/admin/applications | List all career applications | Admin |
| POST | /api/admin/blog | Create blog post | Admin |
| PUT | /api/admin/blog/{id} | Update blog post | Admin |
| DELETE | /api/admin/blog/{id} | Delete blog post | Admin |
| POST | /api/admin/jobs | Create job listing | Admin |
| PUT | /api/admin/jobs/{id} | Update job listing | Admin |
| DELETE | /api/admin/jobs/{id} | Delete job listing | Admin |
Development Roadmap
Core Website
- 17-page static website
- Mobile responsive design
- SSL + HTTPS
- GA4 + Schema markup
- WhatsApp button
- Sitemap + robots.txt
Backend & CMS
- FastAPI + PostgreSQL
- Contact + career forms → DB
- reCAPTCHA v3
- Rate limiting + sanitization
- Admin CMS panel
- Blog + Jobs CRUD
Enhancement
- Blog public rendering (API)
- Resume file upload
Advanced Features
Maintenance Plan
Monthly
Database backup, security patch review, SSL certificate check, dependency updates.
Quarterly
Full SEO audit, Lighthouse performance report, Core Web Vitals review, content refresh.
Bug Fixes
Critical bugs fixed within 24h. Non-critical addressed in weekly deploy cycle.
Security Monitoring
Admin token rotation every 90 days. Log review for unusual form submission patterns.
ssh -i ~/digi_vps root@72.61.240.17 · Backend: /opt/digi-api/