d0c33c31a84a26f78063690a4270739c73e3f14e
All checks were successful
Deploy Spot / deploy (push) Successful in 34s
Spot Project
Spot & GPX integration
Dependencies
- npm 18+
- composer
- php-mbstring
- php-imagick
- php-gd
- php-mysql
- php-exif
- ffprobe & ffmpeg
- STARTTLS Email Server (use Gmail if none available)
- Optional: Geo Caching Server (WMTS Caching Service)
PHP Configuration
- max_execution_time = 300
- memory_limit = 500M
- post_max_size = 4G
- upload_max_filesize = 4G
- max_file_uploads = 50
Getting started
- Clone Git onto web server
- composer install
- npm install webpack
- npm run dev
- Update php.ini parameters
- Copy timezone data: mariadb-tzinfo-to-sql /usr/share/zoneinfo | mariadb -u root mysql
- Copy settings-sample.php to settings.php and populate
- Go to #admin and create a new project, feed & maps
- Add a GPX file named <project_codename>.gpx to /geo/
Local Development
When developing Spot and the sibling objects library together, install dependencies through the local Composer manifest:
COMPOSER=composer.dev.json composer update
This makes Composer link vendor/franzz/objects to ../objects and autoload that namespace directly from the local source path. Production continues to use composer.json, which installs franzz/objects from its Git repository. Commit and publish objects changes before updating/deploying a Spot version that relies on them.
To Do List
- Add mail frequency slider
- Use WMTS servers directly when not using Geo Caching Server
- Allow HEIF picture format
- Garmin InReach Integration
Description
Languages
PHP
37.8%
Vue
28.1%
JavaScript
19%
SCSS
12.8%
HTML
2.2%