Rent-a-Car Dashboard Theme Implementation Guide

Complete instructions for integrating the design system into your application

Design System Overview

Color Palette

The design system uses a consistent color palette defined as CSS variables:

Primary #3a86ff
Success #10b981
Warning #f59e0b
Danger #ef4444
Dark #1e293b
:root {
                    --primary: #3a86ff;
                    --primary-dark: #2563eb;
                    --secondary: #64748b;
                    --success: #10b981;
                    --warning: #f59e0b;
                    --danger: #ef4444;
                    --info: #3b82f6;
                    --dark: #1e293b;
                    --light: #f8fafc;
                    --gray: #94a3b8;
                    --card-bg: rgba(255, 255, 255, 0.8);
                    --card-border: rgba(255, 255, 255, 0.2);
                    --card-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
                    --transition: all 0.3s ease;
                    --border-radius: 16px;
                    }

Typography

The design uses the Inter font family with different weights:

  • Primary font: Inter, system-ui, -apple-system, sans-serif
  • Code font: 'Courier New', monospace
  • Font weights: 300, 400, 500, 600, 700
font-family: 'Inter', system-ui, -apple-system, sans-serif;
                    font-weight: 400; /* Regular */
                    font-weight: 500; /* Medium */
                    font-weight: 600; /* Semi-bold */
                    font-weight: 700; /* Bold */

Implementation Steps

1. CSS Variables Setup

Add the CSS variables to your :root selector in your main CSS file:

/* Define color variables */
                    :root {
                    --primary: #3a86ff;
                    --primary-dark: #2563eb;
                    --secondary: #64748b;
                    --success: #10b981;
                    --warning: #f59e0b;
                    --danger: #ef4444;
                    --info: #3b82f6;
                    --dark: #1e293b;
                    --light: #f8fafc;
                    --gray: #94a3b8;
                    --card-bg: rgba(255, 255, 255, 0.8);
                    --card-border: rgba(255, 255, 255, 0.2);
                    --card-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
                    --transition: all 0.3s ease;
                    --border-radius: 16px;
                    }

                    /* Dark mode support */
                    @media (prefers-color-scheme: dark) {
                    :root {
                    --dark: #f8fafc;
                    --light: #1e293b;
                    --gray: #64748b;
                    --card-bg: rgba(30, 30, 36, 0.8);
                    --card-border: rgba(255, 255, 255, 0.1);
                    --card-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
                    }
                    }

2. Dependencies

Include these dependencies in your HTML head section:

<!-- Font Awesome Icons -->
                    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">

                    <!-- Google Fonts -->
                    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">

3. Component Structure

Use this HTML structure for dashboard cards:

<div class="stat-card">
                    <div class="stat-card-header">
                    <div class="icon-wrapper cars-icon">
                    <i class="fas fa-car"></i>
                    </div>
                    <div class="card-actions">
                    <button class="card-action-btn"><i class="fas fa-sync"></i></button>
                    <button class="card-action-btn"><i class="fas fa-expand"></i></button>
                    </div>
                    </div>
                    <div class="stat-card-content">
                    <div class="stat-info">
                    <h3>42</h3>
                    <p>Total Vehicles in Fleet</p>
                    <div class="trend up">
                    <i class="fas fa-arrow-up"></i> 12% from last month
                    </div>
                    </div>
                    <!-- Additional components like charts, progress bars -->
                    </div>
                    <div class="card-footer">
                    <button class="action-btn">
                    <i class="fas fa-list"></i> View Details
                    </button>
                    </div>
                    </div>

4. Responsive Design

Use these media queries for responsive layouts:

/* Tablet devices */
                    @media (max-width: 1024px) {
                    .stats-grid {
                    grid-template-columns: repeat(2, 1fr);
                    }
                    }

                    /* Mobile devices */
                    @media (max-width: 768px) {
                    .stats-grid {
                    grid-template-columns: 1fr;
                    }

                    .header {
                    flex-direction: column;
                    text-align: center;
                    }
                    }

                    /* Small mobile devices */
                    @media (max-width: 480px) {
                    .stat-card {
                    padding: 16px;
                    }

                    .action-btn {
                    width: 100%;
                    }
                    }

Key Components

Stat Cards

Glassmorphism effect with data visualization

Navigation

Responsive sidebar with mobile support

Dashboard Layout

Grid-based responsive layout system

Interactive Elements

Buttons, toggles, and action controls

Implementation Tips

CSS Variables

Use the CSS variables consistently throughout your application for theming. This makes it easy to change the design system later.

Mobile-First Approach

Implement the mobile design first, then use media queries to enhance the experience on larger screens.

Component Reusability

Create reusable CSS classes for cards, buttons, and other UI elements to maintain consistency.

Performance Optimization

Consider using CSS minification and bundling for production to improve loading times.

How to Communicate with AI Assistants

Effective Prompt Structure

When asking AI assistants to implement components, use this structure:

  1. Context: "I'm building a Rent-a-Car management application using PHP with a MySQL database."
  2. Design Reference: "Please use the glassmorphism design system with the provided CSS variables."
  3. Component Specification: "Create a car listing component with image, title, status badge, and action buttons."
  4. Technical Requirements: "The component should be responsive and use the defined color variables."

Example Implementation Request

Here's how to ask for a specific component:

Create a customer management page for my Rent-a-Car application
                    with the following requirements:

                    - Use the glassmorphism design system with the CSS variables provided
                    - Display customers in a responsive card grid layout
                    - Each card should show: avatar, name, contact info, and status badge
                    - Include search and filter functionality at the top
                    - Implement responsive design for mobile devices
                    - Use Font Awesome icons for actions (edit, delete, view details)