syntro / ssto
The SilverStripe Framework Installer for Syntro Projects
Installs: 88
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 1
Open Issues: 3
Language:Scheme
Type:silverstripe-recipe
Requires
- php: >=7.4.0
- silverstripe/login-forms: 4.9.0
- silverstripe/recipe-cms: 4.13.0
- silverstripe/recipe-plugin: ^1.2
- syntro/recipe-elemental-bootstrap: 1.1.2
- syntro/silvershare: 1.0.4
- syntro/silverstripe-seo: 2.2.1
- wilr/silverstripe-googlesitemaps: 2.2.1
Requires (Dev)
This package is auto-updated.
Last update: 2024-12-03 16:24:46 UTC
README
Syntro Silverstripe SSTO (from the abbreviation for Single-stage-to-orbit) provides a prepackaged recipe for starting a new Silverstripe project from scratch. Featured are:
- bootstrap based styling
- webpack based build tooling
- elemental editor with some standard blocks to get you started
📯 Getting started
To get started, simply run: (see ssdev for more info on our devenv.)
npx ssdev init -r syntro/ssto:^2 projectname
After installation, consult the checklist to make the newly created project your own. Then, you should replace this part of the readme with a guide on how to clone the new project
🖥 Serving Silverstripe
To start the server via docker, run
npx ssdev serve
This will start a host and database container running your project. To stop it, run
npx ssdev down
🎨 Theming
-> Refer to the 📖 theming docs
🎠Testing
By default, this recipe supplies PHPUnit, PHPCS and PHPStan for testing. you can run the tests by executing:
npx ssdev run -- vendor/bin/phpunit
npx ssdev run -- vendor/bin/phpstan analyse --memory-limit=1G -l4 -c phpstan.neon app/src/
npx ssdev run -- vendor/bin/phpcs app/
npx ssdev run -- vendor/bin/phpcbf app/
🆕 Commiting new Things
We recommend using the Gitflow Workflow (for big teams) or the Git Feature Branch Workflow (for small teams). When creating new PRs with features, use the "squash and merge" option and prefix the resulting commit with (it helps adding the prefix to the PR title):
add:
when something new is addedfix:
when something is fixedchange:
when something is changeddeprecate:
when something will be removedremove:
when something was removed- (
Bump:
for dependency updates)
Following this makes releasing easier and allows using an automatically generated changelog.
🚀 Releasing
After you have a deployable application / website, you can deploy it to a server. We recommend you follow these steps (which will incidentally also trigger the production deployment job):
- Make sure all tests pass
- Run
npm run release --next="x.x.x"
- Commit the changes as
release/x.x.x
and push them - Create a new release
x.x.x
on Github
âž• More Infos
Check out the following for more informations: