.github | ||
.idea | ||
build | ||
dev | ||
res | ||
src | ||
tests | ||
.gitattributes | ||
.gitignore | ||
codecept.bat | ||
codeception.yml | ||
composer.json | ||
composer.lock | ||
LICENSE | ||
README.md |
Lightning Tracker is a work-in-progress issue tracker built for PHP 7.4+ and MySQL 5.6+.
I do not recommend using the tracker at this moment. The current version lacks a fully-fledged permission system and many upcoming major features.
Installation Guide
Server Requirements
- PHP 7.4+
- pdo
- pdo_mysql
- mbstring
- json
- intl
- MySQL 5.6+
- InnoDB
- Apache
- mod_rewrite
- mod_deflate (optional)
You should be able to install Lightning Tracker on other server software, such as nginx or IIS, but you will have to replicate the behavior of .htaccess
on your own.
Installation
Official Releases
- Download an official release
- Copy everything inside the downloaded archive to your web server
- Create a new InnoDB database
- Visit your web server and enter your configuration and credentials
From Source
- Clone the repository
- Run the
gulp
task inside the/build/
folder - Copy everything inside the newly created
/out/
folder to your web server - Create a new InnoDB database
- Visit your web server and enter your configuration and credentials
Notes
- Base URL must be identical to the URL leading to the main page, including the protocol (
http://
orhttps://
). The field is pre-filled with the URL you used to access it, and the default value should work. - If the installation page appears without any styles, you may need to edit your Apache settings (or
.htaccess
if you do not have access to the server configuration) to include a path to the tracker installation folder. For example, if you place the tracker into a folder calledtracker
, you may need to change:- This line:
RewriteCond %{REQUEST_URI} !^/~resources/
- To this:
RewriteCond %{REQUEST_URI} !^/tracker/~resources/
- This line:
Source Code
Test Server
The project is setup so that http://localhost
maps to /server/www/
in the repository root folder. If you use PhpStorm, it should automatically upload modified files to this folder.
To enable debug mode, which bypasses manual installation, caching, and required minification of resources, copy all files from /dev/
to /server/www/
. You will also need a MySQL server with the following credentials:
- Host:
localhost
- User:
lt
- Password:
test
- Database:
tracker
Automated Testing
The project uses the Codeception test framework. Before you proceed, make sure you have php
, composer
, and gulp
installed in your PATH.
- Run
composer install
in the repository root folder to install dependencies - Setup a web server as outlined in the Test Server section above
- Create a MySQL database named
tracker_test
and grant thelt
user all privileges:GRANT ALL PRIVILEGES ON tracker_test.* to 'lt'@'localhost';
- Run the
gulp prepareTests
task in the/build/
folder - Run the tests by running the following command in the repository root folder:
- Windows:
codecept run
- (Otherwise):
php vendor/codeception/codeception/codecept run
- Windows:
If you use PhpStorm, steps 4 and 5 are included under the provided Test
run configuration. You may also use the Test (Debug)
configuration which runs in debug mode.