Initial commit
This commit is contained in:
commit
50b7789d88
17
.editorconfig
Normal file
17
.editorconfig
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# This file is used by editors and IDEs to unify coding standards
|
||||||
|
# @see http://EditorConfig.org
|
||||||
|
# @standards PHP: http://www.php-fig.org/psr/psr-2/
|
||||||
|
root = true
|
||||||
|
|
||||||
|
# Default configuration (applies to all file types)
|
||||||
|
[*]
|
||||||
|
charset = utf-8
|
||||||
|
end_of_line = lf
|
||||||
|
insert_final_newline = true
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
indent_size = 4
|
||||||
|
indent_style = space
|
||||||
|
|
||||||
|
# Markdown customizations
|
||||||
|
[*.md]
|
||||||
|
trim_trailing_whitespace = false
|
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
/output_*/
|
||||||
|
/vendor/
|
21
LICENSE
Normal file
21
LICENSE
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2017 Oliver Davies
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
50
README.md
Normal file
50
README.md
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
# Sculpin Skeleton
|
||||||
|
|
||||||
|
A minimal, generic skeleton project for the [Sculpin][1] static site generator.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
1. Download the project by running `composer create-project opdavies/sculpin-skeleton --no-interaction --no-progress --prefer-dist my-sculpin-site`.
|
||||||
|
1. Run `cd my-sculpin-site` to change into the project directory, and `composer watch` to generate and serve the site.
|
||||||
|
1. Start adding content to `source/index.md`.
|
||||||
|
1. Add more content, settings, layouts, includes etc as needed.
|
||||||
|
|
||||||
|
## Scripts
|
||||||
|
|
||||||
|
This project includes some custom Composer scripts that you can use rather than running `vendor/bin/sculpin` directly, and that include some additional default options.
|
||||||
|
|
||||||
|
These are:
|
||||||
|
|
||||||
|
- `composer generate` and `composer dev` - These generate the site in the development mode.
|
||||||
|
- `composer watch` - Generates and serves the site in development mode, watching for any changes.
|
||||||
|
- `composer prod` - Generates the site in production mode.
|
||||||
|
|
||||||
|
You can still pass additional options by separating the command and options with `--`. For example, running `composer watch -- --port=8002` would run the default watch command but also update the server port:
|
||||||
|
|
||||||
|
```
|
||||||
|
composer watch -- --port=8002
|
||||||
|
> composer generate -- --server --watch '--port=8002'
|
||||||
|
> sculpin generate --clean --no-interaction '--server' '--watch' '--port=8002'
|
||||||
|
Deleting /Users/opdavies/Code/Personal/sculpin-skeleton/output_dev
|
||||||
|
Detected new or updated files
|
||||||
|
Generating: 100% (1 sources / 0.00 seconds)
|
||||||
|
Converting: 100% (1 sources / 0.20 seconds)
|
||||||
|
Formatting: 100% (1 sources / 0.00 seconds)
|
||||||
|
Processing completed in 0.27 seconds
|
||||||
|
Starting Sculpin server for the dev environment with debug true
|
||||||
|
Development server is running at http://localhost:8002
|
||||||
|
Quit the server with CONTROL-C.
|
||||||
|
```
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
- The `posts` content type is disabled by default. Re-enable it if needed by removing `enabled: false` from `app/config/sculpin_kernel.yml`.
|
||||||
|
|
||||||
|
[1]: https://sculpin.io
|
||||||
|
[2]: https://getcomposer.org/doc/06-config.md#process-timeout
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
[MIT][0]
|
||||||
|
|
||||||
|
[0]: https://github.com/opdavies/sculpin-skeleton/blob/master/LICENSE
|
3
app/config/sculpin_kernel.yml
Normal file
3
app/config/sculpin_kernel.yml
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
sculpin_content_types:
|
||||||
|
posts:
|
||||||
|
enabled: false
|
2
app/config/sculpin_site.yml
Normal file
2
app/config/sculpin_site.yml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
name: 'My New Sculpin Site'
|
||||||
|
locale: en
|
3
app/config/sculpin_site_prod.yml
Normal file
3
app/config/sculpin_site_prod.yml
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
imports:
|
||||||
|
- sculpin_site.yml
|
29
composer.json
Normal file
29
composer.json
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
"name": "opdavies/sculpin-skeleton",
|
||||||
|
"description": "A skeleton Sculpin site.",
|
||||||
|
"license": "MIT",
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Oliver Davies",
|
||||||
|
"homepage": "https://www.oliverdavies.uk",
|
||||||
|
"role": "Developer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"sculpin/sculpin": "^3.0"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"dev": "composer run-script generate",
|
||||||
|
"generate": "sculpin generate --clean --no-interaction",
|
||||||
|
"prod": "composer run-script generate -- --env prod",
|
||||||
|
"watch": [
|
||||||
|
"Composer\\Config::disableProcessTimeout",
|
||||||
|
"composer run-script generate -- --watch --server"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "2.1-dev"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
12
source/_layouts/app.html.twig
Normal file
12
source/_layouts/app.html.twig
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="{{ site.locale|default('en') }}">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<title>{{ site.name|default('Sculpin Skeleton') }}</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{% block body %}{% endblock %}
|
||||||
|
</body>
|
||||||
|
</html>
|
5
source/_layouts/default.html.twig
Normal file
5
source/_layouts/default.html.twig
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
{% extends 'app' %}
|
||||||
|
|
||||||
|
{% block body %}
|
||||||
|
{% block content %}{% endblock %}
|
||||||
|
{% endblock %}
|
4
source/index.md
Normal file
4
source/index.md
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
---
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
Hello, World!
|
Loading…
Reference in a new issue