Fleetora · Quickstart
Fleetora Quickstart, as shipped in the download
The QUICKSTART.txt in the download — the same steps your delivery email carries.
FLEETORA — QUICKSTART
=====================
Vehicle & fleet register. Self-hosted PHP 8 + MySQL/MariaDB or SQLite.
No Composer, no build step, no external services.
1 · WHAT YOU NEED
-----------------
* PHP 8.0 or newer with PDO (pdo_mysql or pdo_sqlite)
* MySQL/MariaDB, OR nothing at all if you use SQLite
* Any web server that serves PHP
2 · INSTALL (2 minutes)
-----------------------
a. Upload the "app" folder to your server.
b. Point a domain or subdomain at it.
c. Open it in a browser. The installer runs automatically.
d. Choose SQLite (zero config) or enter your MySQL details.
e. Create your admin account. Done.
The installer writes config.php. If you would rather write it yourself,
copy config.sample.php to config.php and fill it in.
3 · TAKE A LOOK FIRST
---------------------
With PHP on your own machine:
cd app
php -S localhost:8080
Then open http://localhost:8080 and follow the installer.
Or with Docker, from inside the app folder:
docker compose -f deploy/compose.yml up -d
Load the sample fleet from Settings -> Demo data. It contains a vehicle in
every state — expired paperwork, a service due by distance, one that cannot
be scheduled yet because the vehicle has no odometer reading — so you can see
what the register is actually for.
(demo login: admin@fleetora.app / admin123 — change it)
4 · WEB SERVER SNIPPETS
-----------------------
Apache — the shipped .htaccess handles routing. Just:
<VirtualHost *:80>
ServerName fleet.example.com
DocumentRoot /var/www/fleetora/app
<Directory /var/www/fleetora/app>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
nginx:
server {
listen 80;
server_name fleet.example.com;
root /var/www/fleetora/app;
index index.php;
location / { try_files $uri /index.php?$query_string; }
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ ^/(data|config\.php) { deny all; }
}
5 · FIRST FIVE MINUTES IN THE APP
---------------------------------
1. Settings -> Document types. Rename them to what YOUR operation keeps.
Fleetora ships neutral names on purpose: vehicle compliance is called
something different in every country and Fleetora does not pretend to
know yours.
2. Add a vehicle, or import a spreadsheet (Vehicles -> Import CSV — it runs
a dry run first and writes nothing until you confirm).
3. Add a document with its expiry. It appears on the home screen, ranked.
4. Schedule a service. Set an interval in days, in distance, or both.
5. Log an odometer reading. Distance-based services can only be scheduled
once a reading exists — until then they honestly say "unknown".
6. Set your warning windows in Settings. What counts as "due soon" is your
judgement, not ours.
6 · GOING FURTHER
-----------------
* API.md — REST API, signed webhooks, and the MCP endpoint for assistants.
* Settings -> API & Webhooks — mint a key. Choose "Read only" for anything
that should answer questions but never change anything.
* Settings -> Calendar feed — subscribe any calendar to the deadline list.
The link is a secret; treat it like a password and revoke it when done.
* Settings -> Outbound mail — driver notices, through your own SMTP, off
until you switch them on.
* Backup & restore — JSON export always; a byte-exact .sqlite download on
SQLite installs. Restore previews the diff before it commits.
7 · HONEST LIMITS
-----------------
* Fleetora records what you enter. It reads no telematics box and queries no
licensing authority, insurer or manufacturer.
* It is not legal or compliance advice. The document types you track and the
intervals you set are yours to decide.
* A service tracked by distance has no due DATE until a reading exists.
Fleetora says so rather than estimating one.
* Distances are never converted between miles and kilometres. Each vehicle
keeps the unit its own dashboard shows.
8 · SUPPORT
-----------
README.md covers the design decisions. Run `php tests/run.php` to prove the
install against its own suite.
← Back to Fleetora · Manual · API · Test run