Dehmice Web
A full-stack, production-ready website and content management system for Dehmice, a dedicated remote staffing and call center company. Built with PHP 8.2+, MySQL/MariaDB, and vanilla HTML/CSS/JS â n
About the Project
A full-stack, production-ready website and content management system for Dehmice, a dedicated remote staffing and call center company. Built with PHP 8.2+, MySQL/MariaDB, and vanilla HTML/CSS/JS â no frameworks, no build step required.
Platform Overview
Dehmice serves B2B clients looking to outsource customer support, administrative work, fleet dispatching, property management coordination, and technical helpdesk to dedicated college-educated remote staff.
Color Identity: White #FFFFFF · Charcoal #252E39 · Coral #EA6F66
Design: 0px border-radius, no box-shadows, editorial-style typography â sharp, spacious, and business-professional
Stack: PHP 8.2+ · MySQL / MariaDB · Vanilla CSS · Vanilla JS · cPanel / Hostinger compatible
Project Architecture
Dehmice/
âââ index.php # Homepage (fully dynamic, DB-driven)
âââ about.php # About & leadership page
âââ careers.php # Job listings page
âââ job-detail.php # Single job + application form (resume upload)
âââ contact.php # Contact & inquiry form
âââ cost-savings.php # ROI Calculator landing page
âââ property-management.php # Property management service detail page
âââ dispatching-nemt.php # Dispatching & NEMT service detail page
âââ submit-testimonial.php # Public testimonial submission form
âââ page.php # CMS page renderer (Privacy, Terms, Cookie Policy)
â
âââ admin/
â âââ index.php # Admin router â all admin views loaded here
â âââ login.php # Admin login page
â âââ includes/
â â âââ header.php # Admin shell, CSS, shared widgets (color picker, dropzone)
â â âââ footer.php
â âââ views/
â âââ dashboard.php # Ops overview: counts, recent leads, recent applications
â âââ leads.php # Contact submissions & inquiry pipeline
â âââ applications.php # Job applications & resume management
â âââ services.php # Service offerings CRUD
â âââ pricing.php # Pricing plan tiers CRUD
â âââ testimonials.php # Testimonials + moderation queue
â âââ careers.php # Job listings CRUD
â âââ clients.php # Client logos (image upload + inline SVG)
â âââ team.php # Leadership team profiles
â âââ gallery.php # Workplace gallery photo uploads
â âââ faqs.php # FAQ accordion content
â âââ pages.php # CMS pages (Privacy Policy, Terms of Service...)
â âââ media.php # Media library & asset browser
â âââ settings.php # Site & theme settings (colors, WhatsApp, SMTP)
â âââ users.php # Admin user accounts & RBAC
â âââ activity.php # Audit activity log
â
âââ includes/
â âââ bootstrap.php # Core: constants, helpers, DB init
â âââ functions.php # e(), url(), asset(), setting(), flash()
â âââ floating-buttons.php # WhatsApp & call floating buttons (settings-driven)
â âââ header.php # Public site navigation & top banner
â âââ footer.php # Public site footer
â
âââ config/
â âââ database.php # PDO singleton (reads .env)
â
âââ css/
â âââ variables.css # Design tokens (colors, type scales, spacing)
â âââ reset.css # CSS reset & typography baseline
â âââ layout.css # Grid, containers, nav, hero, sections
â âââ components.css # Buttons, cards, calculator, forms, FAQ, modals
â
âââ js/
â âââ main.js # Calculator, tabs, modals, FAQ accordions, form validation
â
âââ uploads/ # User-uploaded files (gitignored â created on first upload)
â âââ clients/ # Client logo images
â âââ gallery/ # Workplace & culture photos
â âââ resumes/ # Job application resume files
â âââ media/ # General media assets
â
âââ database.sql # Complete schema + seed data (run once)
âââ .env.example # Environment variable template â copy to .env
âââ .env # Local environment config (gitignored)
âââ README.md # This file
âââ DEPLOY.md # Production deployment guide
Admin Panel Sections
| Section | What it does | |---|---| | Dashboard | Live counts: inquiries, applications, pending reviews, published services | | Leads & Inquiries | All contact form submissions â status pipeline: New â Contacted â Qualified â Converted | | Job Applications | Resume downloads, candidate status (New / Reviewing / Interviewed / Hired / Rejected), notes | | Services | Full CRUD for all service offerings shown on the homepage and service pages | | Pricing & Calculator | Manage pricing plan tiers and ROI calculator role presets | | Testimonials | Moderation queue â approve, edit, feature, or reject public submissions | | Careers & Jobs | Post/manage open positions, toggle Live / Draft / Closed | | Client Logos | Upload PNG/JPG/WebP/SVG logo image files, or paste inline SVG code | | Team Members | Leadership profiles shown on the About page | | Workplace Gallery | Photo uploads for operations/culture sections | | FAQs | FAQ accordion content â add, edit, reorder, draft/publish | | CMS Pages | Editable legal & static pages (Privacy Policy, Terms of Service, Cookie Policy) | | Media Library | Browse and manage all uploaded site assets | | Site & Theme Settings | Brand colors (HSV color picker), contact info, WhatsApp message text, SMTP config, hero card metrics | | Admin Users | Create / manage admin accounts with role-based access control | | Audit Log | Full tamper-evident trail of all admin actions |
Admin Roles (RBAC)
| Role | Access Level |
|---|---|
| super_admin | Full access â users, settings, destructive operations |
| content_manager | CMS, services, careers, gallery, FAQs, testimonials |
| sales_agent | Leads & inquiries view/update only |
Creating Your First Real Admin Account
The initial seed account in
database.sql(admin@dehmice.com) uses a demo password hash that may not verify correctly. Create your own account immediately.
Method 1 â Via the Admin Panel (easiest)
- Log in at
/admin/login.phpwith the seed credentials - Go to Admin Users in the sidebar â + Add New User
- Enter your real name, email address, set Role =
Super Admin (Full Access), and enter a strong password - Click Save User Account â your new account is live immediately
- Sign out and log in with your new credentials
- Return to Admin Users and delete the seed
admin@dehmice.comaccount
Method 2 â Directly via phpMyAdmin
-- First, generate a password hash by running this in PHP: -- php -r "echo password_hash('YourStrongPassword123!', PASSWORD_BCRYPT);" INSERT INTO `users` (`name`, `email`, `password_hash`, `role`, `status`) VALUES ( 'Your Full Name', 'you@yourdomain.com', '$2y$12$PASTE_YOUR_GENERATED_HASH_HERE', 'super_admin', 'active' );
Method 3 â One-liner via SSH / PHP CLI
# SSH into your server, then: php -r " \$hash = password_hash('YourPassword', PASSWORD_BCRYPT); echo \"INSERT INTO \`users\` (\`name\`, \`email\`, \`password_hash\`, \`role\`, \`status\`) VALUES ('Admin Name', 'you@domain.com', '\$hash', 'super_admin', 'active');\"; " # Copy the output SQL and run it in phpMyAdmin or MySQL CLI
Environment Configuration
Copy .env.example to .env and fill in your values:
APP_ENV=production APP_URL=https://yourdomain.com DB_HOST=localhost DB_NAME=dehmice_db DB_USER=db_username DB_PASS=db_password UPLOADS_PATH=/home/youraccount/public_html/uploads
Database Setup
- Create a MySQL database in cPanel â MySQL Databases
- Import
database.sqlvia phpMyAdmin â Import tab - This seeds: all 6 services, 3 pricing tiers, sample FAQs, calculator presets, default settings, and the initial admin user
Key Configurable Settings (Admin â Site & Theme Settings)
| Setting | Description | |---|---| | Brand Colors | Custom HSV color picker â real-time preview, saves on Submit | | WhatsApp Pre-filled Message | The text pre-loaded in WhatsApp when visitors click the floating button | | Hero Card Metrics | Response time, CSAT %, weekly coverage hours, monthly cost shown in the hero illustration | | SMTP | Outgoing email server config for lead notifications and contact confirmations | | Floating Buttons | Enable/disable WhatsApp and phone call floating buttons independently | | Company Info | Name, phone, email, address, social links |
Design Tokens
| Token | Value | Purpose |
|---|---|---|
| --color-primary | #EA6F66 | Coral â CTAs, highlights, key borders |
| --color-primary-dark | #D95A51 | Hover states for coral elements |
| --color-text | #252E39 | Charcoal â headings and body text |
| --color-bg | #FFFFFF | Page backgrounds |
| --color-surface-subtle | #F9FAFB | Alternating section backgrounds |
| --color-border | #E5E7EB | Hairline dividers and input borders |
| --radius-* | 0px | Strictly rectangular â all components |
| --shadow-* | none | No box-shadows anywhere |
Notes
- No emojis â All iconography uses inline SVG icons; no emoji characters on any page
- No external JS libraries â Color picker, drag-and-drop file dropzone, calculator, modals, and FAQ all built in vanilla JS
- Logo upload â Client logos accept PNG/JPG/WebP/SVG image uploads; uploaded image takes display priority over SVG code
- WhatsApp message â Fully configurable from the admin panel; URL-encoded into the
wa.melink at render time
License
Private project for Dehmice Call Center & Remote Staffing. All rights reserved.
Project Timeline
Technologies
External Links
Related Projects
Projects built with similar technologies.
Online Html Editor And Viewer
The Online HTML Editor and Viewer is a simple web application built with Flask that allows users to write and preview HTML code in real-time.
Qrgen
A premium, feature-rich QR Code Generator engineered with Python (Flask) and a pristine Glassmorphism frontend.
Examina Ai
Using AI, It transforms raw study materials into structured, verified examination sets with support for institutional export formats like Moodle XML.