ÛÛ
ÛÛÛ ÛÛ ÛÛÛÛÛÛÛ ÛÛ ÛÛ ÛÛ ÛÛ ÛÛÛÛÛÛÛ
ÛÛÛÛ ÛÛ° ÛÛ°°°°°° ÛÛ ÛÛ°° ÛÛ° ÛÛ° ÛÛ°°°°°°
ÛÛ°ÛÛ ÛÛ° ÛÛÛÛ ÛÛÛ°° ÛÛ° ÛÛ° ÛÛÛÛÛÛÛ 5
ÛÛ° ÛÛÛÛ° ÛÛ°°° ÛÛ°ÛÛ ÛÛ° ÛÛ° °°°°ÛÛ°
ÛÛ° ÛÛÛ° ÛÛÛÛÛÛÛ ÛÛ°° ÛÛ ÛÛÛÛÛ°° ÛÛÛÛÛÛÛ°
°° °°° °°°°°°° °° ÛÛ °°°°° °°°°°°°
°°
Written by Christian Cable.
This is the code that powers the old-school style injoke of a BBS at https://nexus5.org.uk.
The web version of Nexus has run in one form or another since the ultra-futuristic year of 2001. It was inspired by the UCLAN CompSoc BBS of the mid-90s where I happily misspent much of my university days.
This current version is built using the Laravel framework by Taylor Otwell
composer install
cp .evn.example .env
- Edit .env; add your datbase info and sensible values for the NEXUS_*
php artisan migrate
yarn
yarn run production
php artisan nexus:install
Nexus supports bootstrap themes.
These can be externally hosted css files (such as the excellent ones at Bootswatch) or built within nexus. Nexus ships with a Default theme and an example 'Excelsior' theme.
To enable the Excelsior theme
php artisan nexus:theme add --name=Excelsior --path='/css/excelsior.css'
To add external themes from Bootswatch...
php artisan nexus:theme add --name=darkly --path='https://bootswatch.com/4/darkly/bootstrap.min.css'
php artisan nexus:theme add --name=slate --path='https://bootswatch.com/4/slate/bootstrap.min.css'
php artisan nexus:theme add --name=united --path='https://bootswatch.com/4/united/bootstrap.min.css'
php artisan nexus:theme add --name=solar --path='https://bootswatch.com/4/solar/bootstrap.min.css'
php artisan nexus:theme add --name=sketchy --path='https://bootswatch.com/4/sketchy/bootstrap.min.css'
php artisan nexus:theme add --name=materia --path='https://bootswatch.com/4/materia/bootstrap.min.css'
php artisan nexus:theme add --name=minty --path='https://bootswatch.com/4/minty/bootstrap.min.css'
Themes can be removed by
php artisan nexus:theme remove --name=minty
Users who use a removed theme have their theme set to the default.
Nexus uses Laravel Sail for development.
A number of useful tasks are included to aid in development. Prefix the commands below with ./vendon/bin/sail
where required.
PHP and javascript tests are provided. Coverage is nowhere near complete. Pull requests here are extremely welcome.
sail artisan test
- unit and some feature testssail artisan dusk
- browser based tests
Static analysis is provided using the larastan package. To run an analysis of the code run:
sail npm run larastan
PHP is written to confirm to Laravel's coding standards. To check the status of all the files within app
run:
sail pint app