Install Git and Docker (with Compose)
Clone the repository using git clone https://github.com/april-knights/Squire.git
.
Create a Reddit application and set the redirect URI to http://localhost/login/reddit/callback
.
The other fields can be set to anything
Copy .env.default
to .env
and modify the Reddit client ID and secret to the values you got from Reddit
Run docker compose up --build
in the .docker
directory. Once everything is initialized properly, you can reach the page at http://localhost/
While the project is running, run the following commands in another window (in the .docker
directory) to have better coding assistance:
docker compose exec app php artisan ide-helper:generate
docker compose exec app php artisan ide-helper:meta # Only if you use PHPStorm
docker compose exec app php artisan ide-helper:models
Dev Setup (running directly)
Install git
, php
, composer
and npm
.
Clone the repository using git clone https://github.com/april-knights/Squire.git
.
Enter the Squire
directory and run composer install
.
Copy .env.example
to .env
and modify whatever you need.
Start the development server using php artisan serve
While the project is running, run the following commands in another window (in the .docker
directory) to have better coding assistance:
php artisan ide-helper:generate
php artisan ide-helper:meta # Only if you use PHPStorm
php artisan ide-helper:models
Install the required Javascript dependencies using npm install
.
Run npm run dev
to recompile css and js files.
Automatically recompile CSS/JS and refresh browser
Change the redirect_uri in .env
and on reddit to 127.0.0.1:3000
.
Run npm run watch
. Whenever you make a change to the application, your browser is automatically reloaded.
Properly set up your webserver.
Install git
, php
and composer
.
Clone the repository using git clone https://github.com/april-knights/Squire.git
.
Enter the Squire
directory and run composer install --optimize-autoloader --no-dev
.
Install the required Javascript dependencies using npm install
.
Run npm run prod
to generate the minified static files.
Copy .env.prod
to .env
and set up the DB connection and Reddit API.
Run php artisan key:generate
to generate an app key for secure session storage.
Run php artisan config:cache
to combine all config files into a single one. Rerun this whenever you make changes to .env
!
Point your webserver to squire/public
.