New Project Setup
Git Repository
If you're creating a Blender or Spoon application, first clone its main repository and remove the .git
folder. This will be the base application for your new project.
Create a repository on the Spatie organization on GitHub using the repo naming rules.
Example: spatie/guidelines.spatie.be
Lastly, update the .env.example
file with values relevant to the project (database name, app url, our Slack webhook url, etc.)
Server
- Provision a new server on Forge. Use a kebab-cased version of the domain name for the droplet (example:
guidelines-spatie-be
) - Create a new site with root
/current/public
- Ensure the name of the database makes sense
- Run our ansible scripts on the freshly provisioned server
- Start one or two queue workers:
default
, and if using Blendermedia_queue
- Update the relevant
.env
variables. Don't forget to add the necessary service API keys later. - Enable backups in BackupPC for the project
- Update our shared
.ssh/config
file, so we can SSH to servers without specifying a username
Services
Our Blender sites use a few third party services. Here's a checklist of what needs to be set up.
Unless specified otherwise, use the website's domain name as its identifier (API key name, property name, etc.)
- Create a new Sendgrid API key
- Create a new Google Analytics property
- Create a new Google Tag Manager container
- Create a constant containing the Universal Analytics ID
- Set up a tag for Google Analytics pageviews
- Set up Bugsnag for Laravel
- Set up Bugsnag for JavaScript