Introduction

Dreams Money Thumbnail DreamsPOS - POS & Inventory Management Admin Dashboard Template

A point of sale admin template can help organize and track inventory in a business. The template includes fields for items, quantities, prices, and descriptions. It also includes fields for customer information.

Contact Support Create Support ticket

Requirements

System Overview

The Dreams POS template requires a modern web server environment with Symfony 7.0+ framework support, PHP 8.2+ compatibility, essential extensions, and development tools for optimal performance and development experience.

Core Technologies
Backend Framework

Symfony 7.3

Frontend Framework

Bootstrap 5.3.8

Core Language

PHP 8.4

System Requirements
Node.js

vite for asset management

PHP Extensions

intl, pdo, xml, ctype, iconv, json, mbstring, openssl, session, tokenizer

Composer

Latest version for dependency management

Development Tools

Symfony CLI, Vite, Terminal

Development Tools
Local Server

XAMPP/WAMP/MAMP

Version Control

Git

Web Browser

Any modern browser

Important Note

Ensure all PHP extensions are enabled in your server configuration. For production deployment, consider using a managed hosting service that supports Symfony 7+ and PHP 8.2+.

Features

Core Features
Product Management

Seamless product browsing with dynamic search, smart filters, and visually rich catalogs.

Inventory Control

Real-time stock tracking, batch management, and low-stock notifications.

Billing & Invoices

Generate professional invoices, manage payments, and track sales history.

Point of Sale

Fast checkout process with barcode scanning, discounts, and multiple payment options.

Supplier & Purchase Management

Manage suppliers, track purchase orders, and maintain procurement records.

Reports & Analytics

Detailed sales, purchase, and inventory reports with real-time business insights.

Technical Features
Symfony Framework

Modern PHP MVC architecture

Composer Management

Dependencies & autoloading

Doctrine ORM

Powerful database abstraction

Twig Templating

Fast, secure, and flexible templates

Routing System

Powerful & flexible URL routing

Service Container

Dependency injection & configuration

Debugging Tools

Symfony Profiler & Web Debug Toolbar

Bundles & Reusability

Reusable Symfony bundles and components.

Performance

Optimized cache & HTTP handling

UI/UX Features
Modern Design

Creative and contemporary UI

Responsive Bootstrap 5.3.8

Mobile-first responsive design

SCSS Styling

Advanced CSS preprocessing

Font Awesome & Tabler

Comprehensive icon libraries

Easy Customization

Color and font customization

W3C Validated

Cross-browser compatibility

Symfony Project Structure

Project Overview

This Symfony project follows the standard directory structure, separating application code, configuration, templates, and assets for better organization and maintainability.

dreamspos/ (Root Project)
symfony/ (Main Application)
template/ (template files)
assets/ (Frontend assets)
css/
Stylesheets
img/
Images & Icons
fonts/
Font files
js/
JavaScript Files
scss/
Sass Source Files
plugins/
Third-party Libraries
app.js (Dummy Entry file)
bin/ (Binary files)
console (Symfony console)
phpunit (PHPUnit test runner)
config/ (Configuration Files)
packages/ (Bundle configurations)
routes/ (Route definitions)
bundles.php
preload.php
routes.yaml
services.yaml
migrations/ (Database migrations)
VersionYYYYMMDDHHMMSS.php (Auto-generated migration files)
VersionYYYYMMDDHHMMSS_AddUserTable.php
VersionYYYYMMDDHHMMSS_AddProductTable.php
public/ (Web root)
build/ (Compiled assets)
css/
Stylesheets
img/
Images & Icons
fonts/
Font files
js/
JavaScript Files
scss/
Sass Source Files
plugins/
Third-party Libraries
app.js (Dummy Entry file)
index.php
src/ (Source Code)
Controller/
HomeController.php (Main application controller)
Entity/ (Doctrine entities)
Repository/ (Data access layer)
Twig/
TitleExtension.php (Custom Twig extension for page titles)
Kernel.php
templates/ (Twig templates)
layouts/ (Layout templates)
auth_base.html.twig (Authentication layout)
base.html.twig (Main application layout)
partials/ (Reusable components)
body.html.twig
footer.html.twig
head-css.html.twig
horizontal-sidebar.html.twig
loader.html.twig
main-wrapper.html.twig
modal-popup.html.twig
sidebar.html.twig
theme-settings.html.twig
title-meta.html.twig
topbar.html.twig
twocolumn-sidebar.html.twig
vendor-scripts.html.twig
index.html.twig
products.html.twig
customers.html.twig
*.html.twig
tests/ (Test suites)
Entity/
Functional/
bootstrap.php
WebTestCase.php
.env (Environment variables)
.gitignore
composer.json (PHP dependencies)
package.json (Package dependencies)
phpunit.dist.xml
symfony.lock
vite.config.js (Vite configuration)
compose.yaml
compose.override.yaml
importmap.php
Legend
Directories
Symfony Twig Files
PHP Files
JavaScript Files
CSS Files
Git Files
SCSS Files
JSON Files
Node.js Files
Image Files
yaml Files
Other Files

Symfony Template Structure

templates/layouts/base.html.twig: Main Layout Template

This file serves as the main layout template using Symfony's Twig templating engine. It provides the common HTML structure and includes partial views for consistent page elements.

Uses {% include 'partials/...' %} for partial includes and {% block content %}{% endblock %} for content injection.

    
<!DOCTYPE html>
{% include 'partials/theme-settings.html.twig' %}

<head>
    {% include 'partials/title-meta.html.twig' %}
    {% include 'partials/head-css.html.twig' %}
</head>

{% include 'partials/body.html.twig' %}
    {% include 'partials/loader.html.twig' %}

    <!-- Start Main Wrapper -->
    {% include 'partials/main-wrapper.html.twig' %}

		{% include 'partials/topbar.html.twig' %}
		{% include 'partials/sidebar.html.twig' %}
		{% include 'partials/horizontal-sidebar.html.twig' %}
		{% include 'partials/twocolumn-sidebar.html.twig' %}

        {% block content %}{% endblock %}

		{% include 'partials/modal-popup.html.twig' %}
    </div>
    <!-- End Main Wrapper -->

    {% include 'partials/vendor-scripts.html.twig' %}
</body>
</html>
    

templates/layouts/auth_base.html.twig: Authentication Layout

This layout is specifically designed for authentication pages (login, register, password reset, etc.) that don't require the main navigation menu.

It extends the base layout but overrides the content area to provide a clean, focused interface without the main menu.

    
<!DOCTYPE html>
{% include 'partials/theme-settings.html.twig' %}

<head>
	{% include 'partials/title-meta.html.twig' %}
	{% include 'partials/head-css.html.twig' %}
</head>

{% include 'partials/body.html.twig' %}
	{% include 'partials/loader.html.twig' %}

	<!-- Start Main Wrapper -->
	{% include 'partials/main-wrapper.html.twig' %}

		{% block content %}{% endblock %}

	</div>
	<!-- End Main Wrapper -->

	{% include 'partials/vendor-scripts.html.twig' %}
</body>
</html>
    

templates/page/index.html.twig: Content Page Template

Each view extends the main layout using {% extends 'layouts/base.html.twig' %} and defines content blocks with {% block content %}.

This approach provides clean separation of concerns and maintains consistent layout across all pages while allowing flexible content.

    
{% extends 'layouts/base.html.twig' %}

{% block content %}

    <!-- Page content goes here -->
    <div class="page-wrapper">

        <div class="content">
            <!-- Your page content -->
        </div>

		{% include 'partials/footer.html.twig' %}

    </div>

{% endblock %}
    
Twig Templating Engine

This project uses Twig, a modern template engine for PHP. Key features include:

  • Template inheritance with {% extends %} and {% block %} tags
  • Automatic HTML escaping for security
  • Template includes with {% include %}
  • Built-in filters and functions for content manipulation

Installation Guide

Follow these steps to set up DreamsPOS Symfony application on your local development environment. This guide covers environment setup, Symfony installation, and configuration.

Installation Steps
1
System Requirements

Ensure you have the required software installed for Symfony 7.0+:

PHP 8.2+
Database (MySQL/MariaDB)
Composer
Tip: Install Symfony CLI for better development experience https://symfony.com/download
2
Install Dependencies

Open terminal/command prompt in the project root directory and run:

composer install
Note: If "composer install" fails due to memory limit issues, clearing the Symfony cache with more memory, then re-run Composer:
php -d memory_limit=512M bin/console cache:clear
3
Start Development Server

Before starting the server, make sure to configure your database connection in .env or .env.local:

Start the Symfony development server and access the application:

symfony server:start

Or use PHP's built-in server:

php -S localhost:8000 -t public/
Access the application at:
http://localhost:8000
4
Build Frontend Assets

Install Node.js dependencies and build frontend assets:

npm install
npm run build
Note: This will compile all frontend assets (CSS, JavaScript, images) for production

Sass, Scss Installation

Overview

Sass (Syntactically Awesome Style Sheets) is a CSS preprocessor that extends CSS with variables, nesting, mixins, and more. This guide covers the installation and setup of Sass for the DreamsPOS template.

Prerequisites
Node.js Installation

Before installing Sass, ensure you have Node.js installed on your system:

Installation Steps
1
Install NPM Package Manager

Install the latest version of npm package manager:

npm install -g npm@latest
Note: This ensures you have the latest npm version
2
Install Sass Globally

Install Dart Sass globally using npm:

npm install -g sass
3
Verify Installation

Check if Sass is installed correctly:

sass --version
Compilation Methods
Method Description Default Sass Command npm Script Command
One-time Compilation (Production)

Compile SCSS files once for production with minified output

sass assets/scss/main.scss:assets/css/style.css --style=compressed npm run sass
Watch Mode (Development)

Automatically recompile on file changes for real-time development

sass assets/scss/main.scss:assets/css/style.css --watch npm run sass:watch
Run Without Source Map (Production/Optional)

Compile SCSS without generating source maps, ideal for production builds

sass assets/scss/main.scss:assets/css/style.css --style=compressed --no-source-map npm run sass:no-map
Best Practices
Development
  • Use watch mode for real-time updates
  • Enable source maps for debugging
  • Organize SCSS with partials
Production
  • Use compressed output style
  • Minimize file size
  • Optimize for performance

Dynamic Title Feature

Overview

The Dreams POS Symfony application implements an intelligent title generation system using a Twig extension that analyzes route names and converts them into user-friendly page titles. This system processes route names through multiple transformation steps to create readable, properly formatted titles.

File Location: src/Twig/TitleExtension.php
This Twig extension contains the title generation logic
Key Features
Extensible

Easily extendable with custom title generation rules

Route Name Processing

Processes route names by removing common prefixes and suffixes

Title Formatting

Converts route names to properly formatted page titles

Twig Integration

Easily accessible in Twig templates via the page_title function

Smart Acronym Detection

Automatically detects and formats common acronyms in route names

Examples
  • index → "Admin Dashboard"
  • account-statement → "Account Statement"
  • ban-ip-address → "Ban IP Address"
  • ui-alerts → "Alerts"
  • chart-js → "JS Charts"
  • reste-password-1 → "Reste Password"
How It Works
  1. The system captures the current route name from the Symfony router
  2. Removes common prefixes (like 'app_') and numeric suffixes
  3. Converts underscores and hyphens to spaces
  4. Applies proper title case formatting and handles acronyms
  5. Processes special cases and exceptions
  6. Returns the formatted title for display in the template
Title Format

All generated titles follow this consistent format:

<title> {Generated Title} | Dreams POS - Inventory Management & Admin Dashboard Template</title>
Example Output

For expense-category

Expense Category | DreamsPOS - Inventory Management & Admin Dashboard Template

Note

The system automatically handles title generation using Symfony Controllers. For custom acronyms and suffixes like "Icons" or "Charts", you may need to manually add them to the title generation logic in src/Twig/TitleExtension.php.

RTL Language Support

Overview

The application provides comprehensive RTL (Right-to-Left) language support for languages like Arabic, Hebrew, and Persian. It uses Twig templating to conditionally load RTL-specific styles and assets.

RTL Implementation

RTL support is implemented through the following components:

RTL CSS Loading

The application uses Twig conditionals in templates/partials/head-css.html.twig to load the appropriate CSS file based on the current route:

{# Load regular Bootstrap CSS for non-RTL pages #}
{% if page not in ['layout-rtl'] %}
    <link rel='stylesheet' href="{{ asset('build/css/bootstrap.min.css') }}">
{% endif %}

{# Load RTL Bootstrap for RTL pages #}
{% if page == 'layout-rtl' %}
    <link rel="stylesheet" href="{{ asset('build/css/bootstrap.rtl.min.css') }}">
{% endif %}
RTL Layout Structure

The application uses a dedicated RTL layout template that can be extended by other templates when RTL support is needed. The RTL layout includes:

  • RTL-specific CSS classes and overrides
  • Right-aligned navigation and UI elements
  • Mirrored layout for RTL languages
Key Features
  • Twig-Powered Conditional Loading - Dynamically loads RTL or LTR styles based on the current route
  • Bootstrap RTL Support - Leverages Bootstrap's built-in RTL CSS framework
  • Asset Versioning - Uses Symfony's asset versioning for cache busting
  • Webpack Integration - Seamless integration with Webpack Encore for asset management
  • Page-Based Detection - Automatically detects RTL pages and loads appropriate stylesheets
Note

The conditional CSS loading automatically detects RTL pages and loads appropriate Bootstrap stylesheets. This approach ensures that RTL-specific styles are only loaded when needed, improving performance and maintainability.

Typography

h1. Bootstrap heading

h2. Bootstrap heading

h3. Bootstrap heading

h4. Bootstrap heading

h5. Bootstrap heading
h6. Bootstrap heading

Icons

Use Font Awesome icons with spesific class


	<!DOCTYPE html>
	<html lang="en">
		<head>
			<link rel="stylesheet" href="{{ asset('build/plugins/fontawesome/css/fontawesome.min.css') }}">
			<link rel="stylesheet" href="{{ asset('build/plugins/fontawesome/css/all.min.css') }}">
		</head>
	</html>


	<i class="fas fa-times"></i>
	<i class="fas fa-chevron-down"></i>
	<i class="fa-regular fa-user"></i>
	

FAQs

With one purchase code you can use it on one domain name. You need to get new license for every new domain name, please check Envato Help Page for more information about licenses.

If you need support, or if you're facing any problems, please contact us via Envato Support
Please note that our respond can take up to 2 business days.

  • Availability to answer questions, Answering technical questions about item’s features, Assistance with reported bugs and issues, Help with included 3rd party assets.
  • Any customization request will be ignored.
  • Please make sure to read more about the support policy.

Support

If this documentation does not address your questions, please feel free to contact us via email at Item Support Page

We are in the GMT+5:30 time zone and typically respond to inquiries on weekdays within 12-24 hours. Please note that in rare cases, the response time may extend to 48 hours, especially during holiday seasons.

Note:

We strive to offer top-notch support, but it's only available to verified buyers and for template-related issues such as bugs and errors. Custom changes and third-party module setups are not covered.

Don’t forget to Rate DreamsPos!
Please take a moment to rate our product on Themeforest. Your support means a lot to us. Just go to your Themeforest Profile > Downloads Tab, and you can leave a review for our script. Thank you!

License

DreamsPos is developed by Dreams Technologies and is available under both Envato Extended & Regular License options.

Regular License

Usage by either yourself or a single client is permitted for a single end product, provided that end users are not subject to any charges.

Extended License

For use by you or one client in a single end product for which end users may be charged.

What are the main differences between the Regular License and the Extended License?

Note

If you operate as a freelancer or agency, you have the option to acquire the Extended License, which permits you to utilize the item across multiple projects on behalf of your clients.

Do you need a customized application for your business?

If you need a customized application for your business depends on your specific requirements and goals, Please contact us.

Customization can be the key to success, ensuring your project perfectly aligns with your unique goals and requirements.

Don't Miss Out on the Benefits of Customization!

Unlock the potential of your project. It's time to ensure that your project isn't just another cookie-cutter solution but a truly unique and effective one.

Discover how customization can make a difference in your project's success. Let's create a solution that's as unique as your vision!

  • We'll tailor the application to meet your specific needs and preferences.
  • We will upload your website to the server and ensure it is live.
thanks

Thank You

Thank you once again for downloading DreamsPos.
We hope you're enjoying your experience, and we kindly request that you take a moment to share your valuable review and rating with us.

Review Link:https://themeforest.net/downloads