Compare commits

..

695 commits

Author SHA1 Message Date
79fcd69ab6 Add build-configs.yaml
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-10-06 08:54:27 +01:00
b33edd649f Add build-configs.yaml
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-10-06 08:54:27 +01:00
d3e70b9754 Merge dransible/main 2025-10-03 22:04:21 +01:00
ad3af7d318 Move all files to deploying-php-ansible-ansistrano/demo/ 2025-10-03 22:04:20 +01:00
3d0c221599 Move slides 2025-10-03 22:03:20 +01:00
db2c860d4e Merge workshop-drupal-automated-testing/main 2025-10-02 23:52:05 +01:00
086b4a8c52 Move all files to workshop-drupal-automated-testing/drupalcamp-london-2020/ 2025-10-02 23:52:04 +01:00
f204491923 Merge phpsw-sculpin-demo/main 2025-10-02 23:48:39 +01:00
66a7f44c1e Move all files to taking-flight-with-tailwind-css/demo/phpsw/ 2025-10-02 23:48:38 +01:00
c1a2e361de Merge sculpin-talk-demo/main 2025-10-02 23:45:35 +01:00
d8ae557445 Move all files to taking-flight-with-tailwind-css/demo/phpnw/ 2025-10-02 23:45:34 +01:00
3fceb4c2b4 Merge workshop-tailwind-css/main 2025-10-02 23:40:19 +01:00
fc8813a5c9 Move all files to workshop-tailwind-css/demo/florida-drupalcamp/ 2025-10-02 23:40:19 +01:00
feff81c15d Update DrupalCamp Florida demo 2025-10-02 23:36:35 +01:00
a42a904f0d Merge drupalcamp-dublin/main 2025-10-02 23:26:19 +01:00
593af57cea Move all files to test-driven-drupal/demo/drupalcamp-dublin-2017/ 2025-10-02 23:26:18 +01:00
c935231fe9 Merge workshop-tailwind-css-static/main 2025-10-02 23:19:07 +01:00
d34019b2bc Move all files to workshop-tailwind-css/demo/florida-drupalcamp-static/ 2025-10-02 23:19:06 +01:00
8923500c4a Merge workshop-tailwind-css/main 2025-10-02 23:17:30 +01:00
60d3cfc742 Move all files to workshop-tailwind-css/demo/florida-drupalcamp/ 2025-10-02 23:17:29 +01:00
863f0bac8c Merge wp-tailwind/main 2025-10-02 23:13:01 +01:00
40f4352cd7 Merge wordcamp-bristol-2019/main 2025-10-02 23:13:01 +01:00
6ec0007820 Move all files to taking-flight-with-tailwind-css/demo/wp-tailwind/ 2025-10-02 23:13:01 +01:00
7cc2622551 Move all files to taking-flight-with-tailwind-css/demo/wordcamp-bristol-2019/ 2025-10-02 23:13:00 +01:00
c3abf150a2 Move slides 2025-10-02 23:11:24 +01:00
e89bee6191 Merge working-with-workspace/main 2025-10-02 23:03:56 +01:00
b3d22ce6f4 Move all files to working-with-workspace/demo/ 2025-10-02 23:03:55 +01:00
6ccaead857 Move slides 2025-10-02 23:01:51 +01:00
1d401246d2 Automated commit
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-10-02 12:35:10 +01:00
0ccc967ca8 Merge drupal-london/main 2025-10-02 12:31:37 +01:00
695d8b0299 Move all files to test-driven-drupal/demo/drupal-london/ 2025-10-02 12:31:37 +01:00
a365987e61 Move slides 2025-10-02 12:28:08 +01:00
c6ba52f454 Merge decoupling-drupal-vuejs/main 2025-10-02 12:23:38 +01:00
92cba01aa5 Move all files to decoupling-drupal-vuejs/demo/ 2025-10-02 12:23:37 +01:00
0c1d5d02e1 Automated commit
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-10-02 12:09:06 +01:00
ba2bf10bea Automated commit
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-10-02 12:04:23 +01:00
e85167d5eb Merge reading-college/main 2025-10-02 08:59:28 +01:00
8b2fabb6b7 Move all files to reading-college/demo/ 2025-10-02 08:59:27 +01:00
6a249ef924 Move slides 2025-10-02 08:59:06 +01:00
6d27fa23ac Merge demo/main 2025-10-02 08:40:59 +01:00
638f0cc20f Move all files to building-static-websites-sculpin/demo/ 2025-10-02 08:40:59 +01:00
2604bce65d Move slides 2025-10-02 08:38:57 +01:00
27399cd4d1 Merge code/main 2025-10-02 08:13:03 +01:00
8447b33ec8 Move all files to code/ 2025-10-02 08:13:02 +01:00
d5a5a9e5c7 Merge docs/main 2025-10-02 08:13:01 +01:00
87437b684a Root commit for monorepo branch main 2025-10-02 08:13:01 +01:00
39acad502c Move all files to docs/ 2025-10-02 08:13:01 +01:00
6891a7517a Re-organise
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-09-25 21:52:45 +01:00
34a2740106 Update build scripts
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-09-25 21:50:05 +01:00
b6facbcbf9 Ignore .pdf files
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-09-25 21:48:00 +01:00
bfb67e4010 Updates for unified.diff 2025-09-25 21:02:56 +01:00
b2803aac2d Add marp dev shell
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-09-25 12:03:41 +01:00
d509e167da Automated commit
Signed-off-by: Oliver Davies <oliver@oliverdavies.uk>
2025-08-20 19:30:09 +01:00
7a7604d330 Add slides for Reading College 2025-08-18 23:07:51 +01:00
8f6c432f86 Add .nvim.lua 2025-05-09 12:58:48 +01:00
9bb0b58dfd Initial commit 2025-05-08 23:29:06 +01:00
1fe424eb29 Refactor 2025-04-17 20:22:09 +01:00
96d5a66001 Refactor jq command 2025-04-17 17:20:23 +01:00
a2d09e114b Remove font files
These are now managed via Nix.
2025-04-16 07:16:23 +01:00
a4415a9c90 Refactor 2025-04-16 00:04:51 +01:00
e24d2df83f Remove font files, use fonts from the Nix store 2025-04-15 23:54:12 +01:00
68869f59e7 Rename shared to shared-assets 2025-04-15 23:54:12 +01:00
2094b1ba2e Split installPhase and buildPhase 2025-04-12 07:45:28 +01:00
6f98c753c2 Build slides with Nix 2025-04-12 07:45:28 +01:00
e80aee1deb Updates for PHP Thames Valley 2025-04-11 18:15:43 +01:00
4c7d05faad Add speakers and talks 2025-03-20 18:03:32 +00:00
ccfd866f59 Initial commit 2025-03-20 18:03:32 +00:00
ff651197b8 Updates for Drupal London 2024-11-20 16:40:52 +00:00
0db961b741 Remove the hard-coded talk count 2024-11-20 13:23:17 +00:00
cdd7a466d2 Refactor to a repository 2024-11-20 13:23:17 +00:00
eae47a9c87 Test the talk count 2024-11-20 13:23:17 +00:00
fa691746f0 Ensure it returns a 200 response 2024-11-20 13:23:17 +00:00
5036f657b3 Initial commit 2024-11-20 13:23:17 +00:00
Oliver Davies
4006603e3c
Update presentations URL 2024-09-11 09:51:14 +01:00
Oliver Davies
5b6ccc01d0
Delete src/building-static-websites-sculpin/snippets.lua 2024-09-11 09:44:57 +01:00
5b41902ec6 Add snippets for demo 2024-09-06 01:41:02 +01:00
d7e55e84cc Updates for PHP Berkshire 2024-09-06 01:40:48 +01:00
70be1348db Update flake dependencies 2024-09-04 01:46:58 +01:00
43b8fdfd9c Updates for PHP Berkshire 2024-08-28 15:03:32 +01:00
d2530a138a Add a vim keybinding to generate the currently
...open talk
2024-08-09 21:56:05 +01:00
5cab3659f4 Fix stylesheet name 2024-08-09 21:12:54 +01:00
a679fe98dd Update README 2024-07-23 22:23:41 +01:00
24e3e387b1 Remove justfile 2024-07-23 22:19:50 +01:00
6f53f8c026 Update for BrumPHP 2024-05-23 22:45:43 +01:00
cb4b396577 Update Tailwind CSS talk for DrupalCamp Ghent 2024-05-11 13:35:43 +02:00
ad467a8700 Consistent indentation
This was done by executing this command:

```
find src -type f -name '*.rst' -exec sed -Ei 's/^  :/    :/g' {} \;
```
2024-05-10 22:41:07 +02:00
4de38d0276 Remove instances of .. page::
Replace instances of `.. page::` with:

```rst
.. raw:: pdf

    PageBreak
```

This reduces my usage on the `preprocess` functionality I'd like to
remove.

This was done by executing this command:

```
find src -type f -name '*.rst' \
  -exec sed -Ei 's/.. page::$/.. raw:: pdf\n\n    PageBreak/g' {} \;
```
2024-05-10 22:37:50 +02:00
4f888eb6ec Remove duplicated style files
The canonical versions of my style files are stored within `src/styles`,
and these are the ones that should be used as they have the latest
changes and have been converted to the YAML format.

This commit removes any styles within the individual talk directories.
2024-05-10 22:35:54 +02:00
179e27f1b7 Update Test Driven Drupal for DrupalCamp Ghent 2024-05-10 18:16:08 +02:00
7fdeffb1af Update justfile recipes
* Hide the `default` recipe by renaming it to `_default` (recipes
  prefixed with an underscore are hidden from `just --list`.
* Re-add the `present` recipe for presenting with `pdfpc`, but making
  the duration a required argument.
* Add a `watch` recipe that watches files for changes and re-generates
  the PDF. This is based on a given path,
  e.g. `./src/test-driven-drupal`, and optionally allows for overriding
  the rst filename if I only want to watch a specfic source file, such
  as `demo.rst`.
2024-05-10 10:08:04 +01:00
d814d86808 Fix bullet point positioning 2024-05-10 09:12:01 +01:00
9f10128230 Allow for compiling other files
Instead of assuming we're always compiling from `slides.rst`, make the
filename dynamic so it can build whatever files are needed.

For example, to generate the demo slides for Test Driven Drupal, I can
run:

```shell
just generate-pdf ./src/test-driven-drupal demo.rst
```

If no filename is specified, default to `slides.rst` and all the slides
will be compiled.
2024-05-09 15:19:01 +01:00
8b47c24889 Update syntax highlighting styles 2024-05-09 13:57:30 +01:00
ea3fcd0704 Use the talk path instead of just the name
Pass the path to the talk directory - e.g.
`just generate ./src/test-driven-drupal` instead of just the talk
name/slug.

This doesn't change where the files are sourced from or output, but this
makes it easier to use `just generate` as I can use tab completion when
executing the command - making it quicker and less prone to typos.
2024-05-09 11:06:40 +01:00
4f6ca80035 Update stylesheets 2024-05-09 10:45:06 +01:00
6ef6c8359d Add texlive which includes pdfjam 2024-04-26 13:35:10 +01:00
9f15e2389f Add PHPSW talk 2024-04-21 23:08:08 +01:00
d3c7984925 Add justfile 2024-04-21 23:07:57 +01:00
72118c1903 Reformat flake 2024-04-21 23:07:32 +01:00
5e443e3d6e Add speaker information 2024-02-14 10:40:34 +00:00
28391c1296 Initial commit 2024-02-14 10:40:32 +00:00
72b22b41a8 Consolidate Build Configs talk slides 2024-01-25 15:49:14 +00:00
fa99025778 Update run tasks 2024-01-25 15:49:02 +00:00
c5e1da11f7 Fix missing speaker notes in pdfpc 2024-01-25 15:34:40 +00:00
70d330aa1b Add slides for PHP Munich 2024-01-24 12:17:35 +00:00
6d8f1db01f Add Build Configs lightning talk 2024-01-23 14:38:02 +00:00
17951f1fc9 build: add new task 2023-11-01 22:38:55 +01:00
3279719cfe feat(run): add thumbnails:generate task 2023-10-20 00:44:44 +02:00
d55df5ca18 chore: add .git-blame-ignore-revs
Add a file of commit SHAs that can be ignored when running commands like
`git blame`.

This can be enabled with the following command:

$ git config blame.ignoreRevsFile .git-blame-ignore-revs

See https://moxio.com/blog/ignoring-bulk-change-commits-with-git-blame.
2023-10-18 00:23:01 +02:00
51c5f5759d refactor: move into src 2023-10-18 00:21:35 +02:00
675e89e9d1 docs: DrupalCon updates 2023-10-17 13:16:57 +02:00
6cf7d0fee4 docs: add TechConnect talk 2023-10-11 20:08:29 +01:00
1f271a2655 chore: updates
* Update `run` tasks to use the Nix Flake instead of Docker.
* Output PDFs into a `dist` directory and name them as the talk name.
* Move the stylesheets into a common place.
2023-10-11 20:02:32 +01:00
d9f3cae654 build(flake): switch to 23.05 stable 2023-10-11 19:22:13 +01:00
1586971eea build(flake): remove just 2023-10-11 19:22:13 +01:00
596684a71d build(flake): use direnv 2023-10-11 19:19:37 +01:00
9692827603 Archive old talks 2023-07-18 19:55:43 +01:00
12863a4f92 build(nix): use flake-parts 2023-05-06 12:24:30 +01:00
8b18e05fbc wip 2023-05-06 12:24:30 +01:00
63bf55b978 build: delete .rst.build_temp files 2023-02-23 15:09:41 +00:00
639de3a234 Updates before nor(DEV):con 2023-02-23 15:08:45 +00:00
de6303e55a build: ignore generated files 2023-02-23 15:07:43 +00:00
7dd48f3880 Updates before the Bristol Software meetup 2023-02-22 23:16:39 +00:00
e392af7acf
Delete create.sh 2023-02-16 09:53:45 +00:00
3da19375f6 Add demo 2023-02-15 07:56:04 +00:00
0ad2dafa89 justfile: include the preprocess rst2pdf plugin 2023-02-14 23:30:06 +00:00
9a3353b8a2 Generate both light and dark versions of slides 2023-01-12 17:21:57 +00:00
7a762182ef build: add nix flake for rst2pdf 2023-01-12 17:21:44 +00:00
6640ded8c3 update slides before PHP Stoke 2023-01-12 17:21:44 +00:00
9b9d15a0e0 Archive Working with Workspace 2023-01-11 02:00:44 +00:00
3f3260764e docs: add "Things about PHP" slides 2022-03-09 17:12:10 +00:00
260d2d6c58 feat: add pdf:present task 2021-12-09 21:16:49 +00:00
Oliver Davies
e796a6e2a9
Create demo.txt 2021-12-09 17:54:40 +00:00
017713a063 refactor: replace workspace.yml with run 2021-11-09 00:59:21 +00:00
c7fb60a2cf Add Jetbrains slide 2021-09-30 17:43:53 +01:00
78e3b999e0 Add September meetup slides 2021-09-30 10:34:06 +01:00
d754089b17 docs: Updated README 2021-09-07 21:34:50 +01:00
6246c137b4 refactor: Extract a navbar include 2021-09-07 21:20:00 +01:00
26ceec5f20 Sort events by date 2021-09-07 21:20:00 +01:00
3847f56beb Display events on a page 2021-09-07 21:20:00 +01:00
0506194323 Add events to a talk 2021-09-07 21:20:00 +01:00
17e8f767e8 Add a talk layout 2021-09-07 21:20:00 +01:00
bec52af3ca Display talks on the talks page 2021-09-07 21:20:00 +01:00
6e6fedee5d Add some talks 2021-09-07 21:20:00 +01:00
8a14bec664 Add a talks content type 2021-09-07 21:20:00 +01:00
2db13e1287 Use the page title as the h1 2021-09-07 21:20:00 +01:00
26c18bfaf6 Add the Talks page 2021-09-07 21:20:00 +01:00
da534d3210 Add menu links 2021-09-07 21:20:00 +01:00
6881587450 Update site name 2021-09-07 21:20:00 +01:00
9d3b6c6885 Initial commit 2021-09-07 21:19:59 +01:00
7e21321c2f Update Sculpin slides 2021-09-07 18:21:18 +01:00
78e1ccbd03 Add Sculpin slides 2021-08-19 21:12:39 +01:00
a266b46fc1 Experiment with dark mode slides 2021-06-30 12:07:33 +01:00
241752034a Add PHP South Wales intro slides 2021-06-30 11:31:06 +01:00
8c4b0632da Use the Docker image for rst2pdf 2021-06-14 22:51:36 +01:00
484f4da191 Update title slide 2021-06-14 22:51:36 +01:00
37172b421e Remove logo slides 2021-06-14 22:51:35 +01:00
a9772edc5d Add short slides for Ansible London meetup 2021-06-14 22:51:34 +01:00
7febcd03dc Update slide title 2021-06-14 22:51:33 +01:00
69d30df11e Split slides into sections 2021-05-23 23:54:43 +01:00
ed7d6ad172 Remove whitespace around images 2021-05-23 22:00:26 +01:00
6f32c87345 Add Ansible and Ansistrano slides 2021-04-23 20:17:29 +01:00
45f9c443c6 Put the note on the correct slide 2021-04-22 19:47:47 +01:00
340339df4b Update supported core versions 2021-04-22 19:47:46 +01:00
6d941cbe48 Update latest D7 version 2021-04-22 19:47:46 +01:00
9738028448 Reformat slides 2021-04-22 19:47:46 +01:00
05dbcb55fe Make the alias private 2021-04-22 14:30:59 +01:00
50a24fe305 Add PHP South Wales intro slides 2021-03-25 08:28:36 +00:00
4a82640271 init 2021-02-18 22:09:32 +00:00
0da8b14a52 Task 9 - Configure PurgeCSS
Use PurgeCSS to create a production version of the generated CSS.
2021-02-18 21:19:13 +00:00
204a5f931b Task 8 - Add responsive tweaks
Add a mobile navigation button, change text sizes, change the layout of
the sponsors block.
2021-02-18 21:19:13 +00:00
5f6f7bdb4a Add footer 2021-02-18 21:19:13 +00:00
6bd1f864ba Task 7 - Add sponsor styling 2021-02-18 21:19:13 +00:00
acac7e6ec1 Task 7 - Add sponsors 2021-02-18 21:19:13 +00:00
a024466201 Task 6 - Position stars 2021-02-18 21:19:13 +00:00
5ddcc845b3 Task 6 - Add stars 2021-02-18 21:19:13 +00:00
25a071e456 Task 6 - Position logo 2021-02-18 21:19:13 +00:00
ab8e3e1342 Task 6 - Add logo 2021-02-18 21:19:13 +00:00
237d1ce590 Task 6 - Add video classes 2021-02-18 21:19:13 +00:00
033276f85a Task 6 - Add video markup 2021-02-18 21:19:13 +00:00
b97482c642 Task 5 - Refactor menu items using a loop 2021-02-18 21:19:13 +00:00
97d4382dd3 Task 4 - Use updated classes 2021-02-18 21:19:13 +00:00
8dee798782 Task 4 - Add Bebas font 2021-02-18 21:19:13 +00:00
cb8ad1178a Task 4 - Add our own configuration 2021-02-18 21:19:13 +00:00
b032e99b31 Task 3 - Add navbar classes 2021-02-18 21:19:13 +00:00
0ca58316c0 Task 3 - Add navbar markup 2021-02-18 21:19:13 +00:00
a5dff0b493 Task 2 - Add intro text classes 2021-02-18 21:19:13 +00:00
4014f12395 Task 2 - Add intro text 2021-02-18 21:19:13 +00:00
d6a5af062a Remove old classes 2021-02-18 21:19:13 +00:00
11705f7a4c Task 1 - Add Tailwind CSS 2021-02-18 21:19:13 +00:00
d8a1616481 Add local environment with Docker Compose 2021-02-18 21:19:13 +00:00
f764004f89 Initial commit 2021-02-18 21:19:12 +00:00
be9513edc6 Add Tailwind workshop slides 2021-02-18 20:54:20 +00:00
7e82c2fd7e Revert "Rename directories"
This reverts commit 726386e976.
2021-02-11 17:56:42 +00:00
b032798d69 Revert "Rename directories"
This reverts commit 9f3226aec5.
2021-02-11 17:56:17 +00:00
ad40ba6d2d Fix spelling 2021-02-09 21:32:08 +00:00
aeb066e94c Fix indentation 2021-02-09 21:29:50 +00:00
cb5ed1f0b8 Remove line numbers from code snippets 2021-02-09 21:29:00 +00:00
5fda89278d Centre subtitle 2021-02-09 21:29:00 +00:00
38aa5d5d59 Remove some example slides 2021-02-09 21:29:00 +00:00
1b30b42829 Remove CDN link 2021-02-09 21:29:00 +00:00
18aab27851 Remove all .build_temp files 2021-02-09 21:29:00 +00:00
726386e976 Rename directories 2021-02-06 22:47:46 +00:00
9f3226aec5 Rename directories 2021-02-06 22:46:22 +00:00
a5bee4685a Update code syntax highlighting styles 2021-02-06 21:07:41 +00:00
fdd5b3138f Update Workspace slides for PHPNW 2021-02-02 20:48:52 +00:00
398fa3c547 Add workspace.yml
Add a workspace.yml file with commands for PDF generating and watching,
generating thumbnail images, and cleaning generated files.
2021-01-29 00:12:30 +00:00
d409742cfe Add rst2pdf slides 2021-01-28 23:33:44 +00:00
c78138b63d Add 'Taking Flight with Tailwind CSS' slides 2021-01-28 23:33:44 +00:00
6cf5e862ad Add 'Test Driven Drupal' slides 2021-01-28 23:33:44 +00:00
64dc136483 Update nodemon command 2021-01-28 23:33:44 +00:00
8ebbad1a85 Add link to talks page 2021-01-28 23:33:44 +00:00
cc6f7a3557 Define background mode in generate command 2021-01-28 23:33:44 +00:00
b84764c013 Add 'Upgrading to Drupal 9' slides 2021-01-28 23:33:44 +00:00
93df801f13 Add 'Working with Workspace' slides 2021-01-28 23:33:44 +00:00
6d17643b19 Add README 2021-01-02 13:19:54 +00:00
d38acd6876 Add description text and button 2020-12-27 13:15:27 +00:00
4018f9a6db Limit width on xl screens 2020-12-27 13:15:27 +00:00
b047ea3e4e Add Register Now button
Fixes #2
2020-12-27 13:15:26 +00:00
d7d778096e Add homepage header 2020-12-27 12:07:35 +00:00
7499a8817d Increase logo size on small screens 2020-12-27 12:07:17 +00:00
97925b0456 Override sm screen size 2020-12-27 12:07:17 +00:00
91cee26e71 Adjust navigation width on small screens 2020-12-27 12:07:17 +00:00
702b755319 Make child links toggleable 2020-12-27 12:07:17 +00:00
5a2df50e90 Make the mobile navigation toggleable 2020-12-27 12:07:17 +00:00
36a4eb2d92 Add Bebas Neue font 2020-12-27 12:07:17 +00:00
5fadbbccd0 Override Tailwind's default colours 2020-12-27 12:07:17 +00:00
641c61dd47 Add mobile navigation 2020-12-27 12:07:16 +00:00
cb79277374 Add and configure Tailwind CSS
Add and configure Tailwind CSS within the project, including adding npm
scripts for compiling the CSS, configuring purge settings, and adding
the `cssnano` library for minifying the CSS (which is run for production
builds).
2020-12-26 22:43:57 +00:00
cdb0e67eb3 Add the Home page 2020-12-26 22:43:56 +00:00
559ed8e908 Add README.rst 2020-12-26 22:20:19 +00:00
ca1886b0df Initial commit 2020-12-26 22:20:18 +00:00
b2dccb925e Delete old content 2020-12-23 20:33:26 +00:00
354fbe4128 Switch to rst
Convert README.md to README.rst.

This was done automatically using https://cloudconvert.com/md-to-rst,
and gives some features like the table of contents for free. It also
means that I can use tools like [rst2pdf](https://rst2pdf.org) to create
exportable versions and handouts.

GitHub also still renders it automatically too. :)
2020-12-23 20:10:01 +00:00
91aed1b171 Updates 2020-11-14 14:47:53 +00:00
0a1da40788 Fix the existing test 2020-11-14 12:52:36 +00:00
0c6fa6e60f Throw an Exception if it is the wrong type 2020-11-14 12:52:22 +00:00
4be8e02246 Only articles should be used for Posts
An Exception should be thrown if the node passed to the `Post` entity is
not an article.

> Drupal\Tests\my_module\Unit\Entity\PostTest::it_throws_an_exception_if_the_node_is_not_an_article
> Failed asserting that exception of type "InvalidArgumentException" is
thrown.
2020-11-14 12:44:42 +00:00
655c854a80 5e: Fix the kernel tests 2020-11-14 12:38:17 +00:00
8f8218260b 5d: Ensure the label will return the title 2020-11-14 10:09:38 +00:00
bd68420fc1 5d: Create a mock node
> TypeError: Return value of Drupal\my_module\Entity\Post::getTitle()
> must be of the type string, null returned
2020-11-14 10:09:38 +00:00
0b4c648ac6 5c: Return the node label 2020-11-14 10:09:38 +00:00
61664cb263 5c: Add the node as a constructor argument
> Undefined variable: node
2020-11-14 10:09:38 +00:00
1fe7119b5d 5b: Add getTitle() method
> Failed asserting that two strings are identical
2020-11-14 10:09:38 +00:00
07ad4dc2b1 5b: Check that it returns the post title
> Drupal\Tests\my_module\Unit\Entity\PostTest::it_returns_the_title
> Error: Call to undefined method Drupal\my_module\Entity\Post::getTitle()
2020-11-14 10:09:38 +00:00
cbd0176c37 5a: Add a unit test for the Post class 2020-11-14 10:09:38 +00:00
259f077f61 4m: Return a Post rather than a node 2020-11-14 10:09:38 +00:00
9aec327945 4l: Expect a custom Post class to be returned 2020-11-14 10:09:38 +00:00
290c8fbcba 4k: Sort articles before returning 2020-11-14 10:09:38 +00:00
91f7d094e7 4k: Articles are returned in the correct order 2020-11-14 10:09:38 +00:00
e925409f5f 4j: Add status condition to getAll() 2020-11-14 10:09:38 +00:00
a540f4ad32 4j: Only published articles are returned 2020-11-14 10:09:38 +00:00
2cae42ba3a 4i: Add type condition in getAll() method 2020-11-14 10:09:38 +00:00
910af32309 4i: Add page nodes too 2020-11-14 10:09:38 +00:00
1be8440519 4h: Ensure that only articles are returned 2020-11-14 10:09:38 +00:00
40228b36f4 4g: Add more assertions 2020-11-14 10:09:38 +00:00
3723a0af0e 4g: Install node_access table 2020-11-14 10:09:38 +00:00
b53cfec4dd 4g: Install config for the filter module 2020-11-14 10:09:38 +00:00
48c2724736 4g: Add an article 2020-11-14 10:09:38 +00:00
9b7d9b3feb 4f: Enable the node module 2020-11-14 10:09:38 +00:00
80a1f88b2c 4f: Enable autowiring for ArticleRepository 2020-11-14 10:09:38 +00:00
4dbb334a6f 4f: Use node storage within getAll() 2020-11-14 10:09:38 +00:00
f38f21fdc8 4e: Add getAll() method 2020-11-14 10:09:38 +00:00
f194015f30 4d: Add import and enable the module 2020-11-14 10:09:38 +00:00
a6a2ad22e4 4d: Add ArticleRepository as a service 2020-11-14 10:09:38 +00:00
699122e83a 4d: Create the ArticleRepository 2020-11-14 10:09:38 +00:00
3e46173860 4c: Try to load the ArticleRepository 2020-11-14 10:09:38 +00:00
48ab1c9209 4b: Test it returns blog posts 2020-11-14 10:09:38 +00:00
9484d924a1 3e: Add page text
Replace the empty render array with one that returns the expected text.
2020-11-14 10:09:38 +00:00
ef1e960f91 3e: Add more assertions
Add more assertions to ensure that the correct page title is returned as
well as some text on the page.

This fails as the expected test is not returned.
2020-11-14 10:09:38 +00:00
4583075a3e 3d: Add BlogPageController
Add the BlogPageController that is referenced within
`my_module.routing.yml`.

We will need to return a render array, but for now let’s return an empty
array.

The test now passes as we are getting the expected response code.
2020-11-14 10:09:38 +00:00
782648fef2 3c: Enable the node module
Enable the node module within the test to add the `access content`
permission.

This fails, and returns a 500 response code rather than the expected 200
response code.
2020-11-14 10:09:38 +00:00
c7ef94c0d5 3b: Add blog page route
Add a `my_module.routing.yml` file that adds the missing route for
`/blog`.

This fails, and returns a 403 response code rather than the expected 200
response code.
2020-11-14 10:09:38 +00:00
151803382e 3a: Add blog page functional test
Add the new `BlogPageTest` functional test to ensure that anonymous
users can access the `/blog` page.

This fails, and returns a 404 response code rather than the expected 200
response code.
2020-11-14 10:09:38 +00:00
9df597c965 2b: Admin page access for admin users
Ensure that users with the `access administration pages` permission can
access the site’s administration pages.
2020-11-14 10:09:38 +00:00
7e0a0c3762 2a: Admin page access for anonymous users
Ensure that anonymous users cannot access the site’s administration
pages.
2020-11-14 10:09:38 +00:00
fd921d3e4c 1d: Add first functional test
Ensure that anonymous users can view the site’s front page.
2020-11-14 10:09:38 +00:00
2dafec2f67 1b: Add my_module.info.yml
Add the my_module.info.yml file so that the module can be enabled.
2020-11-14 10:09:38 +00:00
e859418cbd Initial commit 2020-11-14 10:09:37 +00:00
fbf2171d25 Make the first blog test more generic 2020-11-14 00:39:39 +00:00
fb06cce56c Update the assertion count 2020-11-13 23:53:24 +00:00
1baead38fd Add opening PHP tags for new examples 2020-11-13 23:53:13 +00:00
e1e137f55e Replace instances of assertResponse 2020-11-13 23:52:51 +00:00
a029e6223c Update Composer test script 2020-11-13 22:19:57 +00:00
fa44d26bde Update first test 2020-11-13 22:16:36 +00:00
077631bd32 Remove unused keys 2020-11-13 21:17:52 +00:00
f9bf333977 Replace references to symfony CLI with DDEV 2020-11-13 21:14:49 +00:00
646fe86d15 Update SIMPLETEST_BASE_URL and SIMPLETEST_DB
Update the base URL to work inside DDEV, and the DB connection details
to use `/dev/shm` for better performance.
2020-11-13 20:47:16 +00:00
ccd5b423f6 Update local development documentation
Replace the Symfony web server documentation with DDEV, and PHP's local
web server.

This should be one less new thing for people to learn and should be more
familiar to Drupal developers.
2020-11-13 17:29:21 +00:00
712f2805d2 Update feedback email address 2020-11-13 16:27:52 +00:00
8f5254045f Finish demo 2020-09-09 17:33:50 +01:00
c4148c07d5 Initial commit 2020-09-09 17:33:12 +01:00
986ba5097d Remove Upgrade Status module 2020-09-02 13:45:40 +01:00
123bdd494d Add new config sync directory 2020-09-02 13:45:40 +01:00
869c6b2dca Add symfony/config as a dependency
Fixes this error:

> Error: Class
> 'Symfony\Component\Config\Resource\ClassExistenceResource' not found
> in
> Symfony\Component\DependencyInjection\Compiler\AutowirePass->createTypeNotFoundMessage()
2020-09-02 13:45:40 +01:00
da08c2cc15 Re-add Drush as a dependency 2020-09-02 13:45:40 +01:00
7c3c7d453e Update Drupal to 9.0.3 2020-09-02 13:45:40 +01:00
3eb0842da9 Remove Drush again 2020-09-02 13:45:40 +01:00
536857c6f3 Fix autowiring error
> Cannot autowire service "Drupal\simple_message\DisplaySimpleMessage":
argument "$messenger" of method "__construct()" references interface
"Drupal\Core\Messenger\MessengerInterface" but no such service exists.
You should maybe alias this interface to the existing "messenger"
service
2020-09-02 13:45:40 +01:00
17cabdc791 Update Admin Toolbar to 8.x-2.3 2020-09-02 13:45:40 +01:00
74d5ee2eba Remove Config Installer module
Removed as it has been deprecated as of Drupal 8.6, and there will be no
Drupal 9 compatible version.
2020-09-02 13:45:40 +01:00
fa8ea3bcad Re-add Drush as a dependency 2020-09-02 13:45:40 +01:00
36cf281907 Update Drupal core to 8.9.3 2020-09-02 13:45:40 +01:00
9777514811 Remove Drush temporarily
Without doing this, we are stuck on Drupal 8.9.0-beta2, rather than
upgrading to 9.0.3.
2020-09-02 13:45:34 +01:00
f45a16ef64 Update project name in composer.json 2020-09-02 09:58:16 +01:00
d46e091e98 Ignore the .vagrant directory 2020-09-02 09:42:31 +01:00
26a4ca66ef Return early for admin routes 2020-09-02 09:41:59 +01:00
08d28544e0 Use the release version for Drupal's deployment indentifier 2020-07-01 23:43:42 +01:00
7a4f3cdf4a Composer: optimise the autoloader 2020-06-16 22:51:49 +01:00
7dce492d27 Stop tasks always showing that something changed 2020-06-16 22:51:30 +01:00
6ba5810dbc D9 compatibility 2020-06-16 22:03:48 +01:00
eb0f90f479 Add a block of post-update tasks
Add tasks to run after the site has been updated, but only if the site
has not been installed from scratch.

There's no point in importing config or running database updates on a
freshly installed site.
2020-06-16 22:01:56 +01:00
7ebe1c52a4 Install base packages 2020-06-16 21:54:45 +01:00
f26c3fbd7d Revert "Update to Drupal 9"
Revert back so that we can continue to use the Config Installer module.

This reverts commit e5b86c7f39.
2020-06-16 21:53:55 +01:00
317d95a56c Enable SSH pipelining 2020-06-16 20:00:32 +01:00
2933a74013 Update images 2020-06-15 23:41:26 +01:00
9a820ecf4f Add placeholders for demos 2020-06-15 23:17:14 +01:00
Oliver Davies
e5b86c7f39 Update to Drupal 9 2020-06-15 22:49:33 +01:00
Oliver Davies
80ccac2d43 Export PDFs 2020-05-13 02:48:50 +01:00
Oliver Davies
66c6e5617a Stop running Prettier 2020-05-12 21:49:33 +01:00
Oliver Davies
0d5e034487 Update slides after NWDUG 2020-05-12 21:49:33 +01:00
Oliver Davies
4c0756d9aa Update slides after CMS Philly 2020-05-12 15:37:06 +01:00
4fd639507c Set roles path in project 2020-05-06 19:01:56 +01:00
Oliver Davies
6c960de854 Update hosts.yml format 2020-05-01 11:45:25 +01:00
Oliver Davies
b722d71ca9 Update the default site name 2020-05-01 11:44:54 +01:00
Oliver Davies
68ca1f63fe Add main.yml
Add a main.yml playbook that runs both provision.yml and deploy.yml.

This would be useful for first-time installations.
2020-05-01 11:21:36 +01:00
Oliver Davies
92f3e99e33 Replace custom role with the Galaxy one 2020-05-01 11:21:36 +01:00
026ac7928f Use YAML for better output 2020-05-01 09:53:45 +01:00
7cad32c9ef Add 5d: Refactor unit tests
Fixes #14
2020-03-19 23:39:01 +00:00
a13636a2f2 Use a method for sorting articles
Fixes #13
2020-03-19 23:23:41 +00:00
a1529f22d7 Add an alias for the entity type manager
Remove deprecation warnings

Fixes #12
2020-03-19 23:21:02 +00:00
f38ca67efb Place my_module within a custom directory
Fixes #11
2020-03-19 20:30:37 +00:00
33e92bbb1f
Add a note for non-Symfony server users 2020-03-19 11:06:39 +00:00
b6507ffd0e
Fix title and jump link 2020-03-19 11:02:38 +00:00
a03ec1360b Typo 2020-03-18 19:38:14 +00:00
9e3d3fd7ef 4g: Make it easier to see where the lines go
Fixes #4
2020-03-18 19:36:14 +00:00
ee1d9beb82 No need for prettier 2020-03-18 13:39:14 +00:00
04a19ec0fa Re-format paragraph text 2020-03-18 13:39:14 +00:00
714644a18c Remove the GitHub Action job 2020-03-18 13:39:14 +00:00
Oliver Davies
81640d24ed Run prettier 2020-03-14 23:39:56 +00:00
49b98d0681 Rename directories 2020-03-14 23:39:29 +00:00
ad22d86a2e Remove abstracts 2020-03-14 22:16:50 +00:00
Oliver Davies
602a01f0c7 Run prettier 2020-03-14 21:58:20 +00:00
e4444b405a Add prettier 2020-03-14 21:56:45 +00:00
44b7fb9842 Add missing use statement
Fixes #2

Co-authored-by: Andy Broomfield <talk@andybroomfield.com>
2020-03-14 00:25:20 +00:00
54d4e2d87e Add contribution and feedback titles 2020-03-13 17:03:01 +00:00
Oliver Davies
2b7874e280 Run prettier 2020-03-13 16:58:30 +00:00
c39e2a9789 Add feedback and contribution links 2020-03-13 16:57:49 +00:00
e1517ecd9d Initial commit 2020-03-13 11:29:03 +00:00
d1b22efc0e Rename directory 2020-01-30 22:35:03 +00:00
9ce5f1c1f0 Add DevOps Bristol talk slides 2020-01-30 22:26:57 +00:00
fce230f798 Update slides 2020-01-30 22:26:34 +00:00
15985541ba Add simple_message module 2020-01-29 02:32:35 +00:00
0fb0dd693e Update site name 2020-01-29 00:54:26 +00:00
623a1052c4 Add condition for whether to install Drupal 2020-01-29 00:54:20 +00:00
9aac99e723 Update variable names 2020-01-29 00:53:11 +00:00
083ed945ad Add screenshots 2020-01-29 00:39:52 +00:00
99407f2b72
Add prerequisites 2020-01-29 00:23:33 +00:00
9ab929a7c0 Add slides from DrupalCon 2020-01-26 19:38:45 +00:00
274afa40ed Create README.md 2019-12-05 16:09:58 +00:00
23fcf88ad9 Add ansible stuff 2019-12-05 16:09:58 +00:00
bbb4a9c666 Create Vagrantfile 2019-12-05 16:09:58 +00:00
9fa87d4133 Add config directory 2019-12-05 13:29:52 +00:00
e5cc2a7ea7 init 2019-12-05 13:29:52 +00:00
7e7a61214d Add DrupalCon slides 2019-11-12 08:03:23 +00:00
e231a2e3f8 Add PDF of PHP South Wales slides 2019-11-12 08:02:54 +00:00
dependabot-preview[bot]
a5f598deff Bump tightenco/collect from 6.3.0 to 6.4.0 in /drupal
Bumps [tightenco/collect](https://github.com/tightenco/collect) from 6.3.0 to 6.4.0.
- [Release notes](https://github.com/tightenco/collect/releases)
- [Commits](https://github.com/tightenco/collect/compare/v6.3.0...v6.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-24 20:05:13 +01:00
dependabot-preview[bot]
fa56833672 Bump tightenco/collect from 6.2.0 to 6.3.0 in /drupal
Bumps [tightenco/collect](https://github.com/tightenco/collect) from 6.2.0 to 6.3.0.
- [Release notes](https://github.com/tightenco/collect/releases)
- [Commits](https://github.com/tightenco/collect/compare/v6.2.0...v6.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-24 00:55:47 +01:00
49e2ffbd8d yarn upgrade 2019-10-24 00:53:22 +01:00
f447aaccc0 Use yarn 2019-10-24 00:46:32 +01:00
dependabot-preview[bot]
bff2e2da7f Bump @vue/cli-plugin-eslint from 3.11.0 to 3.12.0 in /vuejs
Bumps [@vue/cli-plugin-eslint](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-plugin-eslint) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/v3.12.0/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.12.0/packages/@vue/cli-plugin-eslint)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-11 19:54:35 +01:00
dependabot-preview[bot]
3b52712db6 Bump @vue/cli-service from 3.11.0 to 3.12.0 in /vuejs
Bumps [@vue/cli-service](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-service) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/v3.12.0/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.12.0/packages/@vue/cli-service)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-11 19:54:25 +01:00
dependabot-preview[bot]
397da22b90 Bump zaporylie/composer-drupal-optimizations in /drupal
Bumps [zaporylie/composer-drupal-optimizations](https://github.com/zaporylie/composer-drupal-optimizations) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/zaporylie/composer-drupal-optimizations/releases)
- [Commits](https://github.com/zaporylie/composer-drupal-optimizations/compare/1.1.0...1.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-11 19:47:41 +01:00
dependabot-preview[bot]
76e0a83dd8 Bump @vue/cli-plugin-babel from 3.11.0 to 3.12.0 in /vuejs
Bumps [@vue/cli-plugin-babel](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-plugin-babel) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/v3.12.0/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.12.0/packages/@vue/cli-plugin-babel)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-11 19:47:16 +01:00
dependabot-preview[bot]
cf9c0a5c59 Bump @vue/cli-plugin-unit-jest from 3.11.0 to 3.12.0 in /vuejs
Bumps [@vue/cli-plugin-unit-jest](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-plugin-unit-jest) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/v3.12.0/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.12.0/packages/@vue/cli-plugin-unit-jest)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-11 19:46:59 +01:00
dependabot-preview[bot]
f1f8afc115 Bump tightenco/collect from 5.8.34 to 6.2.0 in /drupal
Bumps [tightenco/collect](https://github.com/tightenco/collect) from 5.8.34 to 6.2.0.
- [Release notes](https://github.com/tightenco/collect/releases)
- [Commits](https://github.com/tightenco/collect/compare/v5.8.34...v6.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-11 19:46:35 +01:00
3996891f12
Merge pull request #33 from opdavies/dependabot/npm_and_yarn/vuejs/qs-6.9.0
Bump qs from 6.8.0 to 6.9.0 in /vuejs
2019-09-25 21:59:31 +01:00
dependabot-preview[bot]
ad331dbfff
Bump qs from 6.8.0 to 6.9.0 in /vuejs
Bumps [qs](https://github.com/ljharb/qs) from 6.8.0 to 6.9.0.
- [Release notes](https://github.com/ljharb/qs/releases)
- [Changelog](https://github.com/ljharb/qs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.8.0...v6.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-23 07:04:28 +00:00
b104522020
Merge pull request #26 from opdavies/dependabot/composer/drupal/drupal/console-1.9.3
Bump drupal/console from 1.9.2 to 1.9.3 in /drupal
2019-09-17 08:23:53 +01:00
7549d7e842
Merge pull request #31 from opdavies/dependabot/npm_and_yarn/vuejs/fullhuman/postcss-purgecss-1.3.0
Bump @fullhuman/postcss-purgecss from 1.2.0 to 1.3.0 in /vuejs
2019-09-17 08:23:23 +01:00
dependabot-preview[bot]
a299d919c9
Bump @fullhuman/postcss-purgecss from 1.2.0 to 1.3.0 in /vuejs
Bumps [@fullhuman/postcss-purgecss](https://github.com/FullHuman/postcss-purgecss) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/FullHuman/postcss-purgecss/releases)
- [Changelog](https://github.com/FullHuman/postcss-purgecss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FullHuman/postcss-purgecss/commits/1.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-16 06:44:54 +00:00
7971235aec Use npm 2019-09-09 20:24:43 +01:00
dependabot-preview[bot]
fff50a03b1
Bump drupal/console from 1.9.2 to 1.9.3 in /drupal
Bumps [drupal/console](https://github.com/hechoendrupal/drupal-console) from 1.9.2 to 1.9.3.
- [Release notes](https://github.com/hechoendrupal/drupal-console/releases)
- [Commits](https://github.com/hechoendrupal/drupal-console/compare/1.9.2...1.9.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-09 09:47:36 +00:00
78175aa087
Merge pull request #23 from opdavies/dependabot/composer/drupal/composer/installers-1.7.0
Bump composer/installers from 1.6.0 to 1.7.0 in /drupal
2019-09-02 12:27:31 +01:00
dependabot-preview[bot]
8d03688a9f
Bump composer/installers from 1.6.0 to 1.7.0 in /drupal
Bumps [composer/installers](https://github.com/composer/installers) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/composer/installers/releases)
- [Changelog](https://github.com/composer/installers/blob/master/CHANGELOG.md)
- [Commits](https://github.com/composer/installers/compare/v1.6.0...v1.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-02 08:49:49 +00:00
2ab5191de7
Merge pull request #18 from opdavies/dependabot/npm_and_yarn/vuejs/eslint-plugin-vue-5.2.3
Bump eslint-plugin-vue from 5.2.2 to 5.2.3 in /vuejs
2019-08-31 01:14:32 +01:00
3632326f77
Merge pull request #21 from opdavies/dependabot/npm_and_yarn/vuejs/axios-0.19.0
Bump axios from 0.18.1 to 0.19.0 in /vuejs
2019-08-31 01:14:12 +01:00
99e1560548
Merge pull request #22 from opdavies/dependabot/npm_and_yarn/vuejs/vue/cli-plugin-babel-3.11.0
Bump @vue/cli-plugin-babel from 3.7.0 to 3.11.0 in /vuejs
2019-08-31 01:13:59 +01:00
bee3f669e9
Merge pull request #20 from opdavies/dependabot/npm_and_yarn/vuejs/vue/cli-service-3.11.0
Bump @vue/cli-service from 3.7.0 to 3.11.0 in /vuejs
2019-08-31 01:13:45 +01:00
dependabot-preview[bot]
5745580fa9
Bump @vue/cli-plugin-babel from 3.7.0 to 3.11.0 in /vuejs
Bumps [@vue/cli-plugin-babel](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-plugin-babel) from 3.7.0 to 3.11.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.11.0/packages/@vue/cli-plugin-babel)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 23:48:15 +00:00
dependabot-preview[bot]
4b9f4ab85d
Bump axios from 0.18.1 to 0.19.0 in /vuejs
Bumps [axios](https://github.com/axios/axios) from 0.18.1 to 0.19.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.18.1...v0.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 23:47:46 +00:00
dependabot-preview[bot]
d0ebbf2382
Bump @vue/cli-service from 3.7.0 to 3.11.0 in /vuejs
Bumps [@vue/cli-service](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-service) from 3.7.0 to 3.11.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.11.0/packages/@vue/cli-service)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 23:47:22 +00:00
dependabot-preview[bot]
3f1fdb184b
Bump eslint-plugin-vue from 5.2.2 to 5.2.3 in /vuejs
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 5.2.2 to 5.2.3.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v5.2.2...v5.2.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 23:46:14 +00:00
f25324335b
Merge pull request #16 from opdavies/dependabot/npm_and_yarn/vuejs/axios-0.18.1
Bump axios from 0.18.0 to 0.18.1 in /vuejs
2019-08-30 20:31:55 +01:00
dependabot[bot]
ed6b741992
Bump axios from 0.18.0 to 0.18.1 in /vuejs
Bumps [axios](https://github.com/axios/axios) from 0.18.0 to 0.18.1.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v0.18.1/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.18.0...v0.18.1)

Signed-off-by: dependabot[bot] <support@github.com>
2019-08-30 19:31:33 +00:00
1d8b46251d
Merge pull request #2 from opdavies/dependabot/npm_and_yarn/vuejs/vue/cli-plugin-unit-jest-3.11.0
Bump @vue/cli-plugin-unit-jest from 3.7.0 to 3.11.0 in /vuejs
2019-08-30 20:16:24 +01:00
002dca6e52
Merge pull request #3 from opdavies/dependabot/npm_and_yarn/vuejs/babel-eslint-10.0.3
Bump babel-eslint from 10.0.1 to 10.0.3 in /vuejs
2019-08-30 20:16:14 +01:00
1b37bafd14
Merge pull request #6 from opdavies/dependabot/npm_and_yarn/vuejs/vue-router-3.1.3
Bump vue-router from 3.0.6 to 3.1.3 in /vuejs
2019-08-30 20:15:58 +01:00
eedc2d5dcd
Merge pull request #4 from opdavies/dependabot/npm_and_yarn/vuejs/lodash.defaultsdeep-4.6.1
[Security] Bump lodash.defaultsdeep from 4.6.0 to 4.6.1 in /vuejs
2019-08-30 20:15:44 +01:00
ac2403ff39
Merge pull request #13 from opdavies/dependabot/composer/drupal/webflo/drupal-finder-1.2.0
Bump webflo/drupal-finder from 1.1.0 to 1.2.0 in /drupal
2019-08-30 20:15:26 +01:00
8e325b84f7
Merge pull request #7 from opdavies/dependabot/composer/drupal/cweagans/composer-patches-1.6.7
Bump cweagans/composer-patches from 1.6.6 to 1.6.7 in /drupal
2019-08-30 20:15:13 +01:00
dependabot-preview[bot]
56bb39c7c0
[Security] Bump lodash.defaultsdeep from 4.6.0 to 4.6.1 in /vuejs
Bumps [lodash.defaultsdeep](https://github.com/lodash/lodash) from 4.6.0 to 4.6.1. **This update includes a security fix.**
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.6.0...4.6.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:15:02 +00:00
0fd5114e75
Merge pull request #11 from opdavies/dependabot/composer/drupal/tightenco/collect-5.8.34
Bump tightenco/collect from 5.8.18 to 5.8.34 in /drupal
2019-08-30 20:14:53 +01:00
dependabot-preview[bot]
836b0637ba
Bump babel-eslint from 10.0.1 to 10.0.3 in /vuejs
Bumps [babel-eslint](https://github.com/babel/babel-eslint) from 10.0.1 to 10.0.3.
- [Release notes](https://github.com/babel/babel-eslint/releases)
- [Commits](https://github.com/babel/babel-eslint/compare/v10.0.1...v10.0.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:14:46 +00:00
dependabot-preview[bot]
3f21c779f8
Bump @vue/cli-plugin-unit-jest from 3.7.0 to 3.11.0 in /vuejs
Bumps [@vue/cli-plugin-unit-jest](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-plugin-unit-jest) from 3.7.0 to 3.11.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.11.0/packages/@vue/cli-plugin-unit-jest)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:14:43 +00:00
dependabot-preview[bot]
b430a5551d
Bump tightenco/collect from 5.8.18 to 5.8.34 in /drupal
Bumps [tightenco/collect](https://github.com/tightenco/collect) from 5.8.18 to 5.8.34.
- [Release notes](https://github.com/tightenco/collect/releases)
- [Commits](https://github.com/tightenco/collect/compare/v5.8.18...v5.8.34)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:14:10 +00:00
dependabot-preview[bot]
ea6140a60f
Bump cweagans/composer-patches from 1.6.6 to 1.6.7 in /drupal
Bumps [cweagans/composer-patches](https://github.com/cweagans/composer-patches) from 1.6.6 to 1.6.7.
- [Release notes](https://github.com/cweagans/composer-patches/releases)
- [Commits](https://github.com/cweagans/composer-patches/compare/1.6.6...1.6.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:14:06 +00:00
dependabot-preview[bot]
d1f39da25f
Bump webflo/drupal-finder from 1.1.0 to 1.2.0 in /drupal
Bumps [webflo/drupal-finder](https://github.com/webflo/drupal-finder) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/webflo/drupal-finder/releases)
- [Commits](https://github.com/webflo/drupal-finder/compare/1.1.0...1.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:13:41 +00:00
260c1317e9
Merge pull request #1 from opdavies/dependabot/npm_and_yarn/vuejs/eslint-utils-1.4.2
[Security] Bump eslint-utils from 1.3.1 to 1.4.2 in /vuejs
2019-08-30 20:13:28 +01:00
ea16b2c9c5
Merge pull request #5 from opdavies/dependabot/npm_and_yarn/vuejs/lodash-4.17.15
[Security] Bump lodash from 4.17.11 to 4.17.15 in /vuejs
2019-08-30 20:13:08 +01:00
31d53a1502
Merge pull request #10 from opdavies/dependabot/npm_and_yarn/vuejs/vue/cli-plugin-eslint-3.11.0
Bump @vue/cli-plugin-eslint from 3.7.0 to 3.11.0 in /vuejs
2019-08-30 20:12:47 +01:00
0efd71c860
Merge pull request #12 from opdavies/dependabot/composer/drupal/drupal/console-1.9.2
Bump drupal/console from 1.8.0 to 1.9.2 in /drupal
2019-08-30 20:12:14 +01:00
04ff2c0398
Merge pull request #8 from opdavies/dependabot/npm_and_yarn/vuejs/mixin-deep-1.3.2
[Security] Bump mixin-deep from 1.3.1 to 1.3.2 in /vuejs
2019-08-30 20:11:41 +01:00
fecbe9a8a4
Merge pull request #14 from opdavies/dependabot/composer/drupal/drush/drush-9.7.1
Bump drush/drush from 9.6.2 to 9.7.1 in /drupal
2019-08-30 20:10:41 +01:00
dependabot-preview[bot]
27e26c0dde
Bump drush/drush from 9.6.2 to 9.7.1 in /drupal
Bumps [drush/drush](https://github.com/drush-ops/drush) from 9.6.2 to 9.7.1.
- [Release notes](https://github.com/drush-ops/drush/releases)
- [Commits](https://github.com/drush-ops/drush/compare/9.6.2...9.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:09:34 +00:00
dependabot-preview[bot]
35fd11e080
Bump @vue/cli-plugin-eslint from 3.7.0 to 3.11.0 in /vuejs
Bumps [@vue/cli-plugin-eslint](https://github.com/vuejs/vue-cli/tree/HEAD/packages/@vue/cli-plugin-eslint) from 3.7.0 to 3.11.0.
- [Release notes](https://github.com/vuejs/vue-cli/releases)
- [Changelog](https://github.com/vuejs/vue-cli/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-cli/commits/v3.11.0/packages/@vue/cli-plugin-eslint)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:08:30 +00:00
dependabot-preview[bot]
89169cb7b0
Bump vue-router from 3.0.6 to 3.1.3 in /vuejs
Bumps [vue-router](https://github.com/vuejs/vue-router) from 3.0.6 to 3.1.3.
- [Release notes](https://github.com/vuejs/vue-router/releases)
- [Changelog](https://github.com/vuejs/vue-router/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-router/compare/v3.0.6...v3.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:08:23 +00:00
dependabot-preview[bot]
92c97b51fc
[Security] Bump lodash from 4.17.11 to 4.17.15 in /vuejs
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.15. **This update includes a security fix.**
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:07:50 +00:00
42abb9957f Import map 2019-08-30 20:06:09 +01:00
dependabot-preview[bot]
456938c18d
Bump drupal/console from 1.8.0 to 1.9.2 in /drupal
Bumps [drupal/console](https://github.com/hechoendrupal/drupal-console) from 1.8.0 to 1.9.2.
- [Release notes](https://github.com/hechoendrupal/drupal-console/releases)
- [Commits](https://github.com/hechoendrupal/drupal-console/compare/1.8.0...1.9.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 19:03:59 +00:00
f5861641f0 Require axios 2019-08-30 20:02:29 +01:00
9336a14107 Use camel case names 2019-08-30 20:02:25 +01:00
dependabot-preview[bot]
2542b49367
[Security] Bump mixin-deep from 1.3.1 to 1.3.2 in /vuejs
Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2. **This update includes a security fix.**
- [Release notes](https://github.com/jonschlinkert/mixin-deep/releases)
- [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 18:58:02 +00:00
dependabot-preview[bot]
09fc011ba8
[Security] Bump eslint-utils from 1.3.1 to 1.4.2 in /vuejs
Bumps [eslint-utils](https://github.com/mysticatea/eslint-utils) from 1.3.1 to 1.4.2. **This update includes security fixes.**
- [Release notes](https://github.com/mysticatea/eslint-utils/releases)
- [Commits](https://github.com/mysticatea/eslint-utils/compare/v1.3.1...v1.4.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-30 18:56:37 +00:00
6725c58b80 New sessions should not be accepted 2019-08-30 19:38:20 +01:00
24a0ed9cb8 Add session status field 2019-08-30 19:24:07 +01:00
a1deab3330 Enable admin_toolbar_tools 2019-08-30 19:16:58 +01:00
bfe73f8e22 Add custom actions for sessions 2019-08-30 19:12:59 +01:00
2da4ecc893 Add rejected status for sessions 2019-08-30 19:11:52 +01:00
45f8a6a2ab Add and use vue-save-state 2019-08-30 18:08:44 +01:00
6ce41c0f0b Add and configure PurgeCSS 2019-08-30 17:57:30 +01:00
4c70965332 Use the array syntax for plugins 2019-08-30 17:44:23 +01:00
ca58883d23 Add postcss-import, split tailwind.css 2019-08-30 17:43:25 +01:00
e65b8823ed Update title 2019-08-30 17:35:26 +01:00
7d4c7fe5f3 Update tailwindcss and styling 2019-08-30 17:35:14 +01:00
a39497e8d4 Do the sorting within AcceptedSessionsList 2019-08-30 17:27:02 +01:00
15e921239e Filter on session status in the API request 2019-08-30 13:52:33 +01:00
73d4584f0a Add qa, use stringify to pass params 2019-08-30 13:50:06 +01:00
6acd746ce9 Move styles into a separate stylesheet 2019-08-30 12:55:05 +01:00
80c38777dc Delete semicolons where possible 2019-06-16 00:41:34 +01:00
d7958deef1 Re-order classes 2019-06-16 00:39:20 +01:00
80f9b51fe0 Split up Mix config 2019-06-07 22:18:43 +01:00
cd74805817 Rename assets to resources 2019-06-07 22:10:18 +01:00
8a1069961d Rename files 2019-06-07 22:08:27 +01:00
6ed0abf6a3 Update akismet 2019-06-07 19:05:09 +01:00
1e3ac16676 Update README.md 2019-06-07 15:47:14 +01:00
748acda5a6 Update Tailwind 2019-06-07 15:20:43 +01:00
5573102fda Remove unneeded file extension 2019-06-07 15:20:43 +01:00
c56cfd40b8 Rename main.css to app.css 2019-06-07 14:35:19 +01:00
f9be621fff Add and use postcss-import 2019-06-07 14:35:19 +01:00
b292a34b81 Update site name 2019-06-07 07:38:19 +01:00
6a78346e1e Rebuild cache after changing uuids 2019-06-07 07:38:14 +01:00
db130a7edf Update README 2019-06-06 09:03:55 +01:00
44ad7ebcb7 Update docs 2019-06-06 08:57:53 +01:00
4147b13e6f
Update having-fun-with-drupal-8-php-libraries-drupalorg-api.md 2019-06-05 23:22:56 +01:00
e385fa570f Change closing tag for consistency 2019-06-05 21:40:05 +01:00
8c7752cf43 Split Docksal init command 2019-06-05 21:29:17 +01:00
d634b835f8 Overwrite settings.php 2019-06-05 21:01:21 +01:00
dbeee034e2 Include Docksal services 2019-06-05 20:58:44 +01:00
08f29acf5c Fix confirmation message 2019-06-05 20:52:00 +01:00
985060a0a6 Fix empty title 2019-06-05 20:37:45 +01:00
623b9aa501 Reset user uuid to match 2019-06-05 20:34:57 +01:00
9a16e78869 Add some stub docs files 2019-06-05 20:34:57 +01:00
10ff5e82ee Add Drupal back-end URL 2019-06-05 20:34:57 +01:00
4bb39011f3 Add Drupal application 2019-06-05 20:34:57 +01:00
c00b769d67 Add README.md 2019-06-05 19:32:07 +01:00
d7c864b63b Move Vue into the vuejs directory 2019-06-05 19:25:03 +01:00
a4b018204d Destructure more things 2019-06-05 12:06:00 +01:00
726a0b535f Remove type
Otherwise there's no syntax highlighting
2019-06-05 12:01:47 +01:00
7417eb6c25 Extract heading styles 2019-06-05 09:15:57 +01:00
6b689ea52f Extract form element styles 2019-06-05 09:15:54 +01:00
28537b87e5 Inline Tailwind directives 2019-06-05 08:56:52 +01:00
e311e438ce Move app.css 2019-06-05 00:55:58 +01:00
ff992c9115 Tidy up, remove unused views and components 2019-06-05 00:52:55 +01:00
6fd12c0a98 Simplify v-if condition 2019-06-05 00:41:50 +01:00
c9e6f5e614 Use more destructuring 2019-06-05 00:41:40 +01:00
37e1338d79 Update title 2019-06-04 23:19:00 +01:00
4e939fb9a6 Use an environment variable for the Drupal URL 2019-06-04 23:12:18 +01:00
0bc9d45d0a Clear messages on success 2019-06-04 22:40:05 +01:00
c58ebd1751 Display new session in the sessions list straight away 2019-06-04 22:39:55 +01:00
8454dcaf73 Assign the uid on new sessions to the API user 2019-06-04 22:16:53 +01:00
b901bf14cd Ensure that errors are emptied on success 2019-06-04 22:16:33 +01:00
43e05e8438 Extract a SessionFormMessage component 2019-06-04 21:42:31 +01:00
988748899e Display a confirmation message 2019-06-04 21:31:43 +01:00
2ed3ca469a Fix linting 2019-06-04 21:27:12 +01:00
fa9ca37fb4 Use arrow function for consistency 2019-06-04 21:23:33 +01:00
e0cf0d07ae Re-order fields 2019-06-04 21:23:11 +01:00
1102229d84 Split the baseUrl 2019-06-04 21:23:11 +01:00
150c0f7de1 Display validation errors 2019-06-04 21:23:11 +01:00
496d96e10e Split filter logic to use an isAccepted method 2019-06-04 21:17:53 +01:00
def19c539b Simplify session sorting 2019-06-04 21:17:31 +01:00
9bf6b45f09 POST a session to Drupal 2019-06-03 00:54:25 +01:00
2142da75ff Reset form values after submitting 2019-06-02 23:50:01 +01:00
7a262d4b76 Add session locally 2019-06-02 23:49:21 +01:00
ed1c57a5b6 Add session form 2019-06-02 23:36:07 +01:00
d08d6b8c7c Add Test Driven Drupal 2019-06-02 12:32:15 +01:00
5b1c769a27 Add abstracts 2019-06-02 12:17:31 +01:00
a96e168eb7 Restructure, tidy up 2019-05-26 21:53:30 +01:00
3e5569546f Delete history.yml 2019-05-26 20:20:28 +01:00
964b7f519f Move classes 2019-05-25 16:21:05 +01:00
77a956ecee Destructure session attributes 2019-05-25 16:19:12 +01:00
74269608d1 Lodash not used in this component 2019-05-25 16:15:13 +01:00
d1e1b08feb Sort sessions alphabetically by title 2019-05-25 16:13:00 +01:00
15b093f94e Filter within AcceptedSessionsList component 2019-05-25 16:12:41 +01:00
fe720708cd Extract an AcceptedSessionsList component 2019-05-25 12:08:54 +01:00
577280d634 Change to mounted 2019-05-25 12:03:13 +01:00
f369cbb7d3 Only get accepted sessions 2019-05-25 11:39:00 +01:00
e5016c2fcc Display sessions from Drupal 2019-05-25 01:04:57 +01:00
7b1b1d6b22 Add axios 2019-05-25 00:45:57 +01:00
7176baeb20 Add tailwindcss 2019-05-25 00:27:33 +01:00
7152740458 init 2019-05-25 00:11:42 +01:00
07f0045241 Update Tailwind slides for WordCamp 2019-05-20 00:04:26 +01:00
a150cdff87
Add Blue Conf talks 2019-05-19 23:55:43 +01:00
ef7bd514c2 Add dev and development scripts 2019-05-18 16:07:06 +01:00
07c3afb735 Add prod script 2019-05-18 15:58:18 +01:00
91c182947c Redirect to custom domain 2019-05-18 15:52:18 +01:00
5b2cb83068 Fix author name position on comment list 2019-05-18 15:52:18 +01:00
0424d05ada Fix author name position in comment form 2019-05-18 15:42:14 +01:00
6fd62571ea Update image paths 2019-05-18 15:22:55 +01:00
2947b1c45e Update 2019-05-18 15:20:07 +01:00
5a83ba9b9e Tweak widget title sizes on mobile 2019-05-08 21:35:08 +01:00
46d405f276 Add initial scale meta tag 2019-05-08 21:29:07 +01:00
9febb0c22b Style main menu 2019-05-08 21:18:12 +01:00
c7e427d866 Display main menu 2019-05-08 21:18:09 +01:00
2ae21aa31e Style page titles 2019-05-08 21:18:06 +01:00
aa3ea3a662 Adjust content widths 2019-05-08 21:17:49 +01:00
025cd37016
Create _redirects 2019-05-08 18:54:18 +01:00
8b3a5fbdb1 Add README 2019-05-08 18:20:20 +01:00
86a87c6d51 wip 2019-05-08 18:08:34 +01:00
a8cd84fa6e Rename style.css to main.css 2019-05-08 15:05:10 +01:00
584aa32a2a Fix Browsersync reloading on CSS changes 2019-05-08 14:50:53 +01:00
026e8e11d2 Prevent opening Browsersync by default 2019-05-08 14:50:34 +01:00
087aefffdc Change src to assets 2019-05-08 09:14:41 +01:00
168d1a5ee7 Update themes 2019-05-08 08:07:01 +01:00
e00f87f2f5 Update WordPress to 5.2 2019-05-08 08:05:39 +01:00
489b5a5914 No need to specify the default filename 2019-05-03 23:57:28 +01:00
4685f23861 Position edit link 2019-05-03 23:57:28 +01:00
5ac2052215 Add markup class for single post content 2019-05-03 23:57:28 +01:00
a8f7d99e62
Update README.md 2019-05-03 23:53:40 +01:00
9e3334c3fa
Create README.md 2019-04-17 23:26:07 +01:00
d2e7ef9b30 Responsive widgets 2019-04-17 16:36:00 +01:00
4307391c93 wip 2019-04-17 00:52:08 +01:00
984bd339d8 Update Gravatar URLs 2019-04-17 00:21:08 +01:00
37617f36cb Remove dns-prefetch link 2019-04-17 00:18:04 +01:00
1e90c3333a wip 2019-04-17 00:15:32 +01:00
13ed3fd86c Merge branch 'comments' 2019-04-17 00:02:47 +01:00
c1720b90ec Style the comment form 2019-04-17 00:01:56 +01:00
7ae5d67f93 Style comment list 2019-04-16 23:18:02 +01:00
29a9ee748c Update meta discussion section 2019-04-16 21:54:19 +01:00
d7de23fbd2 Re-style discussion-meta-info 2019-04-16 21:38:24 +01:00
4ca9cd8a47 Create discussion-meta.php 2019-04-16 21:38:05 +01:00
bc99494ae9 Update comment section heading 2019-04-16 21:32:18 +01:00
c78600536e Add comments.php 2019-04-16 21:31:33 +01:00
1551ca80d5 Add margin above entry footer 2019-04-16 21:26:39 +01:00
db85fe78e8 Limit line length on smaller screens 2019-04-16 21:23:13 +01:00
d8ec72e3a7 Add 2xl screen, adjust wrapper width 2019-04-16 21:23:00 +01:00
1fb77fc4ff Update WP and plugins 2019-04-16 20:56:22 +01:00
10a4713229 Create screenshot.png 2019-04-16 20:52:22 +01:00
a3ee110ed9 Be consistent with semicolons 2019-04-16 20:43:59 +01:00
d5a9fb078b Make slogan clickable 2019-04-16 20:32:40 +01:00
7fe8c5fa3f Add spacing above widgets 2019-04-16 20:26:54 +01:00
91cdf824f2 Rename sidebar to sidebar-1
Matches the parent theme, so widgets should be pre-placed.
2019-04-16 20:25:28 +01:00
6acc6b22a5 Update form styling 2019-04-16 20:24:51 +01:00
e70b21e517 Adjust text colour and container width 2019-04-16 20:22:52 +01:00
f59152c352 Add Docksal configuration 2019-04-16 20:21:47 +01:00
a0ae6a465c wip 2019-04-16 17:38:37 +01:00
7915befdf3 Reformat dates 2019-03-31 21:33:56 +01:00
193d4dacae Add WordPress talks 2019-03-31 21:27:57 +01:00
61c93972f0 Update history.yml 2019-03-31 21:27:52 +01:00
2b69e03ab4 Re-add history.yml 2019-03-31 21:27:41 +01:00
601b18c0df Remove extra commas 2019-03-28 20:10:39 +00:00
3b4412efb2 Change background colour 2019-03-28 20:08:11 +00:00
c00c91f5a5 Update widget font size 2019-03-28 20:05:35 +00:00
444fb277de Change link hover colour 2019-03-28 20:02:30 +00:00
4f8773d4b5 Update spacing on a single post 2019-03-28 10:06:11 +00:00
0f26e509b3 Change border colour 2019-03-28 09:44:38 +00:00
b56359bf73 Also apply to textareas 2019-03-28 09:43:54 +00:00
20efc93406 Search form styling 2019-03-28 09:35:58 +00:00
619403d57f Decrease top margin for widgets 2019-03-28 08:52:17 +00:00
ceb21b007e Use fluent API 2019-03-28 08:52:08 +00:00
0038bcd6e1 Style widget links 2019-03-28 08:45:56 +00:00
b8445625e4 Inline function, update title styles 2019-03-28 08:44:50 +00:00
cee2a38161 Un-nest h2:before 2019-03-28 08:44:24 +00:00
dd7b79f395 Start overridding footer widgets 2019-03-27 18:21:37 +00:00
585d907279 Include sub-directories 2019-03-27 18:21:15 +00:00
9b65f4ca99 Add BrowserSync 2019-03-27 01:13:22 +00:00
3a872882ad Enable footer widgets 2019-03-25 18:29:35 +00:00
984f598834 Apply styles to child spans 2019-03-25 18:29:23 +00:00
fa2a90319e Add top margin 2019-03-25 18:28:58 +00:00
ab2a5d41de wip 2019-03-23 08:29:20 +00:00
7e637dbafe Change to entry-content, add p styling 2019-03-23 08:26:14 +00:00
b9684fbc94 Move entry footer link styling 2019-03-23 07:49:30 +00:00
301d10b0f6 Add an entry-footer component 2019-03-23 07:34:58 +00:00
320e98fcd8 Move content styles into a component 2019-03-23 07:32:01 +00:00
05ba91b472 Extract entry-title into a component 2019-03-23 07:18:14 +00:00
750ae735ef Update font family and text size 2019-03-23 00:00:26 +00:00
e4ee2453c9 Add top margin 2019-03-22 23:55:23 +00:00
9b480b46d1 Re-style post heading 2019-03-22 23:52:43 +00:00
bc422f6a62 Hide screen reader text 2019-03-22 23:51:14 +00:00
63b08a341f Add classes for links 2019-03-22 23:51:07 +00:00
c43085122b Add separator above h2 headings 2019-03-22 23:49:42 +00:00
dc12d046e0 Add footer classes 2019-03-22 23:49:08 +00:00
79acd3e540 Copy content.php 2019-03-22 23:48:29 +00:00
ccd0e8927f Delete index.php 2019-03-22 23:45:33 +00:00
8d53b7932c Make it a child theme of twentynineteen 2019-03-22 23:04:27 +00:00
1568cdeaf1 Update theme name 2019-03-22 22:17:33 +00:00
a2a488972a Make link text smaller 2019-03-22 22:17:20 +00:00
30befc2487 Override gray-600 2019-03-22 22:10:31 +00:00
ade2956ba3 Update npm scripts 2019-03-22 21:50:29 +00:00
0e3a35adca Rename theme 2019-03-22 21:35:19 +00:00
a39514e646 init 2019-03-22 19:12:58 +00:00
e556db68e4 Update tailwindcss requirement 2019-03-21 10:08:09 +00:00
458691cc67 Update text colours 2019-03-21 10:07:55 +00:00
f743259b76 Add theme name 2019-03-19 11:37:15 +00:00
b5b27875b5 Rename theme 2019-03-19 11:15:44 +00:00
12e8fd1682 Change description colour 2019-03-19 10:29:58 +00:00
42bab3c176 Use new colour scheme, remove tailwind.config.js 2019-03-18 18:37:21 +00:00
cc8259cc24 Add borders to links by default 2019-03-18 18:21:57 +00:00
e0f36fc463 Add content ul styling 2019-03-18 13:45:39 +00:00
8860d9cb2d Remove links 2019-03-18 13:44:53 +00:00
ec6e285b9a Only limit width on medium screens 2019-03-18 13:43:58 +00:00
7fcab1a956 Adjust font size using @screen 2019-03-18 13:43:44 +00:00
148eeb0328 Re-order plugins 2019-03-18 13:43:19 +00:00
dbb8324418 yarn upgrade 2019-03-18 13:39:28 +00:00
f014c06343 Add content styling 2019-03-18 00:08:10 +00:00
960015e26b Add postcss-nested 2019-03-17 23:52:58 +00:00
ed523ab0b1 Spaces 2019-03-17 23:21:24 +00:00
43bab4a5ce Smaller text on mobile 2019-03-17 22:56:57 +00:00
7c72478cf0 Spaces 2019-03-17 22:52:22 +00:00
c15e911769 Add theme files 2019-03-17 22:50:58 +00:00
f26a8af215 Add Laravel Mix and Tailwind 2019-03-17 22:50:21 +00:00
ff6f6c80cd init 2019-03-12 09:27:46 +00:00
fa9e60e6cd Update and export slides 2019-03-03 21:25:33 +00:00
242410f8c0 Add images 2019-03-03 21:25:11 +00:00
c975651e9c Update override_node_options statistics 2019-03-01 22:40:00 +00:00
a1365bcbb7 Use short URLs 2019-03-01 22:39:40 +00:00
87c761c2e6 Remove Dev Days sponsor slides 2019-03-01 22:05:04 +00:00
4644f4e6d1 Fix header styling 2019-02-05 01:44:57 +00:00
9b5dee653b Export slides 2019-02-05 01:37:41 +00:00
bc46e54697 Re-order build hook slides 2019-02-05 01:35:18 +00:00
9bedce9bb1 Uncommitted changes 2019-02-05 01:27:13 +00:00
5f4814d48d Update TDD slides, and SOMDUG export 2018-06-15 07:43:54 +01:00
18f3bafe3e Add TDD talk 2018-06-13 22:54:25 +01:00
3e7fd512e9 Revert "Delete history.yml"
This reverts commit 9b39ec0f23.
2018-06-13 22:53:13 +01:00
e74e3dccde Add todo 2018-05-11 22:13:39 +01:00
ab762dd7e3 Split todo files 2018-05-11 22:13:39 +01:00
Oliver Davies
9b39ec0f23
Delete history.yml 2018-05-11 22:11:35 +01:00
Oliver Davies
d8cb50130e Add Drupal.org API talk 2018-04-18 23:28:33 +01:00
Oliver Davies
071c4bc963
Update history.yml 2018-04-17 22:48:46 +01:00
Oliver Davies
f150b1706b
Update history.yml 2018-03-24 20:11:21 +00:00
Oliver Davies
6d3e971a56
Update history.yml 2018-03-24 20:10:27 +00:00
Oliver Davies
964c9ff2d8
Identify lightning talks 2018-03-24 20:09:41 +00:00
Oliver Davies
d87e29e5fd
Update history.yml 2018-03-24 19:54:14 +00:00
Oliver Davies
65c7611654 Add history.yml 2018-03-24 09:05:29 +00:00
Oliver Davies
a3c3b4a642
Update speaker-info.md 2018-03-04 10:41:15 +00:00
Oliver Davies
1eb0caaa91 Add PHP UK slides 2018-02-16 16:56:59 +00:00
Oliver Davies
96747eaff6
Create todo.md 2018-02-15 00:35:55 +00:00
Oliver Davies
00ca4fda09
Update ideas.md 2018-02-14 19:46:07 +00:00
Oliver Davies
b9e80e3fbc Update speaker info 2018-02-14 19:19:18 +00:00
Oliver Davies
2cec8b9d5b Add idea 2018-02-14 19:16:38 +00:00
Oliver Davies
f365e1d8b5
Update ideas.md 2018-01-23 20:50:52 +00:00
Oliver Davies
53b6bc307c Add Tailwind talk 2018-01-17 22:50:48 +00:00
Oliver Davies
b546bc655f
Update ideas.md 2018-01-05 22:34:32 +00:00
Oliver Davies
e9a8c8c7b5
Create ideas.md 2018-01-05 22:31:11 +00:00
a96889353f Add speaker bio 2017-12-21 20:29:27 +00:00
Oliver Davies
be3c09d3a8
Update title 2017-12-21 19:16:42 +00:00
137bbb1b2d Update image path 2017-12-21 19:11:29 +00:00
b381a2394d Add Nomad PHP 2017-12-21 19:07:34 +00:00
Oliver Davies
ac7cc17aa5
Create LICENSE 2017-12-12 21:39:19 +00:00
8c10325e52 Add Drupal Bristol talk 2017-11-23 07:14:07 +00:00
97d1f11263 Update slides 2017-11-08 06:56:37 +00:00
d39f10203f Remove duplicate 2017-11-08 06:55:59 +00:00
be6902c91c Add Laravel Collections talk abstract 2017-11-07 18:22:28 +00:00
5a1df13dcd Add Collections in Drupal abstract 2017-11-02 21:53:16 +00:00
bbbb8279d7 Remove abstract 2017-10-30 01:08:33 +00:00
14781d3d6f Restructure files 2017-10-30 01:08:00 +00:00
75533b91a8 Add Drupal Somerset slides 2017-10-27 06:53:08 +01:00
Oliver Davies
7f208f2e55 Update module name, fix file name 2017-10-21 23:15:22 +01:00
1998246cec Merge branch 'drupalcamp-dublin' 2017-10-21 13:56:12 +01:00
7f0069fd84 Add Dublin testing talk 2017-10-21 13:56:01 +01:00
6165e4a372 Add Dublin Fabric talk 2017-10-20 19:35:03 +01:00
45ee78b607 WIP 2017-10-05 07:53:55 +01:00
3c7fe2b997 Add PHPNW talk 2017-10-01 12:08:26 +01:00
f9ff7f1e62 Move image 2017-09-20 19:29:19 +01:00
2a478283c2 Add PDF slides 2017-09-20 19:19:43 +01:00
4e3d533720 Add theme settings 2017-09-20 19:18:50 +01:00
97da76d6b5 Add PHPSW slides 2017-09-14 08:28:45 +01:00
6a64544e13 Move slides from other repos 2017-07-02 21:03:12 +01:00
1407e61bba Remove extra README files 2017-07-02 18:54:23 +01:00
4cc60ff4d6 Add more PDF slides 2017-07-02 07:46:57 +01:00
76674130d4 Add slides sub-directories for Reveal.js 2017-07-02 01:43:57 +01:00
c79d949569 Add PHP Fabric talk abstract 2017-07-02 01:08:21 +01:00
f3cddf05a1 Add PDF slides 2017-07-02 01:04:38 +01:00
f33406ffe2 Add old slides 2017-07-02 00:51:42 +01:00
2d20969ccf Copy abstracts from gist 2017-07-02 00:39:26 +01:00
3175 changed files with 1069765 additions and 0 deletions

1
.envrc Normal file
View file

@ -0,0 +1 @@
use flake

2
.git-blame-ignore-revs Normal file
View file

@ -0,0 +1,2 @@
# Move source files into an `src` directory.
51c5f5759d667821fc94b9ed170de9a43dfbc848

8
.gitignore vendored Normal file
View file

@ -0,0 +1,8 @@
# Nix.
/.direnv/
/result
# pdfpc.
/**/*.pdfpc
/**/*.pdf

5
.nvim.lua Normal file
View file

@ -0,0 +1,5 @@
vim.keymap.set("n", "<leader>ta", '_iTextAnnotation "<Esc>A"<Esc>j')
vim.keymap.set("v", "<leader>ta", ':norm ITextAnnotation "<Esc>gv:norm A"<Esc>')
vim.keymap.set("n", "<Left>", "gT")
vim.keymap.set("n", "<Right>", "gt")

4
README.rst Normal file
View file

@ -0,0 +1,4 @@
Talks and Presentations by Oliver Davies
########################################
The source files for `my presentation slides <https://www.oliverdavies.uk/presentations>`_, written in reStructuredText and compiled using `rst2pdf <https://rst2pdf.org>`_.

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

View file

@ -0,0 +1,27 @@
.. raw:: pdf
PageBreak standardPage
Result
======
- Easier and faster to create and onboard projects.
- One canonical source of truth.
- Easy to add new features and fixes for all projects.
- Automation is easier due to consistency (e.g. Docker Compose service names).
Thanks!
=======
References:
- https://opdavi.es/build-configs
- https://github.com/opdavies/docker-example-drupal
- https://github.com/opdavies/docker-example-drupal-commerce-kickstart
- https://github.com/opdavies/docker-example-drupal-localgov
|
Me:
- https://www.oliverdavies.uk

View file

@ -0,0 +1,52 @@
.. raw:: pdf
PageBreak standardPage
Overriding Values
=================
.. code-block:: yaml
php:
version: 8.1-fpm-bullseye
# Disable PHPCS, PHPStan and PHPUnit.
phpcs: false
phpstan: false
phpunit: false
# Ignore more directories from Git.
git:
ignore:
- /bin/
- /libraries/
- /web/profiles/contrib/
.. raw:: pdf
TextAnnotation "Drupal Commerce Kickstart demo. No custom modules to test, and additional paths to ignore from Git."
PageBreak
.. code-block:: yaml
dockerfile:
stages:
build:
# What additional directories do we need?
extra_directories:
- config
- patches
- scripts
commands:
- composer validate --strict
- composer install
# What additional PHP extensions do we need?
extensions:
install: [bcmath]
.. raw:: pdf
TextAnnotation "Extra directories and PHP extensions that need to be added".

View file

@ -0,0 +1,92 @@
Example
=======
build.yaml:
.. code-block:: yaml
name: my-example-project
type: drupal
language: php
php:
version: 8.1-fpm-bullseye
|
Dockerfile:
.. raw:: pdf
TextAnnotation "Abstract the project-specific values and configuration into this file."
.. code-block:: yaml
FROM php:8.1-fpm-bullseye AS base
Configuring a Project
=====================
.. code-block:: yaml
php:
version: 8.1-fpm-bullseye
# Which PHPCS standards should be used and on which paths?
phpcs:
paths: [web/modules/custom]
standards: [Drupal, DrupalPractice]
# What level should PHPStan run and on what paths?
phpstan:
level: max
paths: [web/modules/custom]
.. raw:: pdf
PageBreak
.. code-block:: yaml
docker-compose:
# Which Docker Compose services do we need?
services:
- database
- php
- web
dockerfile:
stages:
build:
# What commands do we need to run?
commands:
- composer validate --strict
- composer install
.. raw:: pdf
PageBreak
.. code-block:: yaml
web:
type: nginx # nginx, apache, caddy
database:
type: mariadb # mariadb, mysql
version: 10
# Where is Drupal located?
drupal:
docroot: web # web, docroot, null
experimental:
createGitHubActionsConfiguration: true
runGitHooksBeforePush: true
useNewDatabaseCredentials: true
.. raw:: pdf
TextAnnotation "Experimental opt-in features that I want to trial on certain projects or to disable non-applicable features - e.g. GitHub Actions on Bitbucket."
PageBreak

View file

@ -0,0 +1,300 @@
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
Build Configs internals
.. raw:: pdf
PageBreak standardPage
.. code-block::
src/
Action/
CreateFinalConfigurationData.php
CreateListOfFilesToGenerate.php
GenerateConfigurationFiles.php
ValidateConfigurationData.php
Command/
GenerateCommand.php
InitCommand.php
DataTransferObject/
ConfigDto.php
TemplateFile.php
Enum/
Language.php
ProjectType.php
WebServer.php
.. code-block:: php
:linenos:
:startinline: true
protected function configure(): void
$this
->addOption(
name: 'config-file',
shortcut: ['c'],
mode: InputOption::VALUE_REQUIRED,
description: 'The path to the project\'s build.yaml file',
default: 'build.yaml',
)
->addOption(
name: 'output-dir',
shortcut: ['o'],
mode: InputOption::VALUE_REQUIRED,
description: 'The directory to create files in',
default: '.',
);
}
.. code-block:: php
:linenos:
:startinline: true
protected function execute(InputInterface $input, OutputInterface $output): int
{
$io = new SymfonyStyle($input, $output);
$configFile = $input->getOption(name: 'config-file');
$outputDir = $input->getOption(name: 'output-dir');
}
.. raw:: pdf
PageBreak
.. code-block:: php
:linenos:
:startinline: true
protected function execute(InputInterface $input, OutputInterface $output): int
{
// ...
$pipelines = [
new CreateFinalConfigurationData(),
new ValidateConfigurationData(),
new CreateListOfFilesToGenerate(),
new GenerateConfigurationFiles(
$this->filesystem,
$this->twig,
$outputDir,
),
];
}
.. code-block:: php
:linenos:
:startinline: true
protected function execute(InputInterface $input, OutputInterface $output): int
{
// ...
/**
* @var Collection<int,TemplateFile> $generatedFiles
* @var ConfigDto $configurationData
*/
[$configurationData, $generatedFiles] = (new Pipeline())
->send($configFile)
->through($pipelines)
->thenReturn();
$io->info("Building configuration for {$configurationData->name}.");
$io->write('Generated files:');
$io->listing(static::getListOfFiles(filesToGenerate: $generatedFiles)->toArray());
return Command::SUCCESS;
}
.. code-block:: php
:linenos:
:startinline: true
// CreateFinalConfigurationData.php
public function handle(string $configFile, \Closure $next) {
{
$configurationData = Yaml::parseFile(filename: $configFile);
$configurationData = array_replace_recursive(
Yaml::parseFile(filename: __DIR__ . '/../../resources/build.defaults.yaml'),
$configurationData,
);
// ...
return $next($configurationData);
}
.. raw:: pdf
PageBreak
.. code-block:: php
:linenos:
:startinline: true
// ValidateConfigurationData.php
public function handle(array $configurationData, \Closure $next)
{
// Convert the input to a configuration data object.
$normalizer = new ObjectNormalizer(null, new CamelCaseToSnakeCaseNameConverter());
$serializer = new Serializer([$normalizer], [new JsonEncoder()]);
$configurationDataDto = $serializer->deserialize(
json_encode($configurationData),
ConfigDto::class,
'json',
);
// ...
}
.. raw:: pdf
PageBreak
.. code-block:: php
:linenos:
:startinline: true
// ValidateConfigurationData.php
public function handle(array $configurationData, \Closure $next)
{
// ...
$validator = Validation::createValidatorBuilder()
->enableAnnotationMapping()
->getValidator();
$violations = $validator->validate($configurationDataDto);
if (0 < $violations->count()) {
throw new \RuntimeException('Configuration is invalid.');
}
return $next([$configurationData, $configurationDataDto]);
}
.. code-block:: php
:linenos:
:startinline: true
// ConfigDto.php
#[Assert\Collection(
allowExtraFields: false,
fields: ['docroot' => new Assert\Choice([null, 'web', 'docroot'])],
)]
public array $drupal;
#[Assert\Collection([
'ignore' => new Assert\Optional([
new Assert\All([
new Assert\Type('string'),
]),
]),
])]
public array $git;
#[Assert\Choice(choices: ['javascript', 'php', 'typescript'])]
public string $language;
#[Assert\NotBlank]
#[Assert\Type('string')]
public string $name;
#[Assert\Type('string')]
public string $projectRoot;
#[Assert\Choice(choices: [
'drupal',
'fractal',
'php-library',
'symfony',
])]
public string $type;
.. code-block:: php
:startinline: true
:linenos:
// CreateListOfFilesToGenerate.php
public function handle(array $configurationDataAndDto, \Closure $next)
{
/**
* @var ConfigDto $configDto,
* @var array<string,mixed> $configurationData
*/
[$configurationData, $configDto] = $configurationDataAndDto;
/** @var Collection<int, TemplateFile> */
$filesToGenerate = collect();
// ...
}
.. code-block:: php
:startinline: true
:linenos:
// CreateListOfFilesToGenerate.php
public function handle(array $configurationDataAndDto, \Closure $next)
{
// ...
if (!isset($configDto->php['phpunit']) || $configDto->php['phpunit'] !== false) {
$filesToGenerate->push(
new TemplateFile(
data: 'drupal/phpunit.xml.dist',
name: 'phpunit.xml.dist',
)
);
}
// ...
return $next([$configurationData, $configDto, $filesToGenerate]);
}
.. code-block:: php
:linenos:
:startinline: true
// GenerateConfigurationFiles.php
public function handle(array $filesToGenerateAndConfigurationData, \Closure $next)
{
// ...
$filesToGenerate->each(function(TemplateFile $templateFile) use ($configurationData): void {
if ($templateFile->path !== null) {
if (!$this->filesystem->exists($templateFile->path)) {
$this->filesystem->mkdir("{$this->outputDir}/{$templateFile->path}");
}
}
$sourceFile = "{$templateFile->data}.twig";
$outputFile = collect([$this->outputDir, $templateFile->path, $templateFile->name])
->filter()->implode('/');
$this->filesystem->dumpFile($outputFile, $this->twig->render($sourceFile, $configurationData));
});
return $next([$configurationDataDto, $filesToGenerate]);
}

View file

@ -0,0 +1,55 @@
.. raw:: pdf
PageBreak standardPage
What is "Build Configs"?
========================
- Command-line tool.
- Inspired by Workspace, name from the TheAltF4Stream.
- Built with Symfony.
- Creates and manages build configuration files.
- Customisable per-project.
- Drupal, PHP library, Fractal (TypeScript).
- "Sprint zero in a box".
What Problem Does it Solve?
===========================
- I work on multiple similar projects.
- Different configuration values - e.g. ``web`` vs. ``docroot``.
- Different versions of PHP, node, etc.
- Different Docker Compose (``fpm`` vs. ``apache`` images).
- Each project was separate.
- Difficult to add new features and fix bugs across all projects.
- Inconsistencies across projects.
- Out of the box solutions didn't seem like the best fit.
.. raw:: pdf
TextAnnotation "Multiple projects with similar but different configurations."
TextAnnotation ""
TextAnnotation "Out of the box solutions tend to focus on one technology, could be hard to customise, and usually had more than I nedeed."
TextAnnotation ""
TextAnnotation "Start small and build up instead of removing additional things."
TextAnnotation ""
TextAnnotation "More opportunities to learn the underlying technologies."
How Does it Work?
=================
.. image:: diagram.png
:width: 18cm
.. raw:: pdf
TextAnnotation "Canonical templates and project-specific configuration goes in, templates come out."
What Files Does it Generate?
============================
- Dockerfile, Docker Compose, Nix Flake, php.ini, NGINX default.conf.
- ``run`` file.
- PHPUnit, PHPCS, PHPStan.
- GitHub Actions workflow.
- Git hooks.

View file

@ -0,0 +1,117 @@
.. raw:: pdf
PageBreak standardPage
Dockerfile.twig
===============
.. code-block:: twig
:linenos:
FROM php:{{ php.version }} AS base
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
RUN which composer && composer -V
ARG DOCKER_UID=1000
ENV DOCKER_UID="${DOCKER_UID}"
WORKDIR {{ project_root }}
RUN adduser --disabled-password --uid "${DOCKER_UID}" app \
&& chown app:app -R {{ project_root }}
Dockerfile.twig
===============
.. code-block:: twig
:linenos:
{% if dockerfile.stages.build.extensions.install %}
RUN docker-php-ext-install
{{ dockerfile.stages.build.extensions.install|join(' ') }}
{% endif %}
COPY --chown=app:app phpunit.xml* ./
{% if dockerfile.stages.build.extra_files %}
COPY --chown=app:app {{ dockerfile.stages.build.extra_files|join(" ") }} ./
{% endif %}
{% for directory in dockerfile.stages.build.extra_directories %}
COPY --chown=app:app {{ directory }} {{ directory }}
{% endfor %}
docker-compose.yaml.twig
========================
.. code-block:: twig
:linenos:
services:
{% if "web" in dockerCompose.services %}
web:
<<: [*default-proxy, *default-app]
build:
context: .
target: web
depends_on:
- php
profiles: [web]
{% endif %}
phpstan.neon.dist.twig
======================
.. code-block:: twig
:linenos:
parameters:
level: {{ php.phpstan.level }}
excludePaths:
- *Test.php
- *TestBase.php
paths:
{% for path in php.phpstan.paths -%}
- {{ path }}
{%- endfor %}
{% if php.phpstan.baseline %}
includes:
- phpstan-baseline.neon
{% endif %}
phpunit.xml.dist.twig
=====================
.. code-block:: twig
:linenos:
<phpunit
beStrictAboutChangesToGlobalState="true"
beStrictAboutOutputDuringTests="false"
beStrictAboutTestsThatDoNotTestAnything="true"
bootstrap="{{ drupal.docroot }}/core/tests/bootstrap.php"
cacheResult="false"
colors="true"
failOnWarning="true"
printerClass="\Drupal\Tests\Listeners\HtmlOutputPrinter"
>
phpunit.xml.dist.twig
=====================
.. code-block:: twig
:linenos:
<testsuites>
<testsuite name="functional">
<directory>./{{ drupal.docroot }}/modules/custom/**/tests/**/Functional</directory>
</testsuite>
<testsuite name="kernel">
<directory>./{{ drupal.docroot }}/modules/custom/**/tests/**/Kernel</directory>
</testsuite>
<testsuite name="unit">
<directory>./{{ drupal.docroot }}/modules/custom/**/tests/**/Unit</directory>
</testsuite>
</testsuites>

View file

@ -0,0 +1,29 @@
.. footer:: @opdavies
Building "Build Configs"
########################
.. class:: titleslideinfo
Oliver Davies (@opdavies)
|
.. class:: titleslideinfo
https://opdavi.es/bco
.. include:: ./sections/intro.rst
.. include:: ./sections/example.rst
.. include:: ./sections/customisation.rst
.. include:: ./sections/templates.rst
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
Demo
.. include:: ./sections/conclusion.rst

View file

@ -0,0 +1,4 @@
Building and presenting slide decks with rst2pdf
################################################
https://www.oliverdavies.uk/talks/building-presenting-slide-decks-rst2pdf

View file

@ -0,0 +1,12 @@
rst2pdf slides.rst
rst2pdf slides.rst --break-level 1 --stylesheets main
rst2pdf slides.rst \
--output slides.pdf \
--stylesheets main \
--break-level 1 \
--fit-background-mode scale \
--extension-module preprocess

View file

@ -0,0 +1,4 @@
.. code-block:: javascript
:include: code/additional-config-options.txt
:hl_lines: 2 3 4
:linenos:

View file

@ -0,0 +1 @@
.. include:: sections/intro.rst

View file

@ -0,0 +1,3 @@
.. raw:: pdf
PageBreak standardPage

View file

@ -0,0 +1,6 @@
pageTemplates:
standardPage:
frames: []
[3%, 3%, 92%, 92%]
showFooter: true
showHeader: false

View file

@ -0,0 +1,29 @@
linkColor: #24608a
styles:
normal:
fontSize: 24
leading: 32
textColor: #383745
bodytext:
alignment: TA_LEFT
heading:
fontSize: 20
spaceAfter: 16
textColor: #24608a
title:
fontSize: 300%
parent: heading
textColor: white
bullet-list:
commands: []
[LEFTPADDING, [0, 0], [1, -1], 10]
[RIGHTPADDING, [0, 0], [1, -1], 0]
[VALIGN, [0, 0], [-1, -1], TOP]
colWidths: ["20", null]
textColor: #aaaaaa

View file

@ -0,0 +1,14 @@
Building and presenting slide decks with rst2pdf
################################################
.. class:: titleslideinfo
Oliver Davies (@opdavies)
What is rst2pdf?
================
* "Use a text editor. Make a PDF."
* reStructuredText to PDF
* Each slide is a page

View file

@ -0,0 +1,14 @@
.. image:: images/editing.png
:width: 20cm
.. code-block:: php
:startinline: true
:linenos:
echo 'Hello world!';
.. raw:: pdf
TextAnnotation "This is a speaker note."

View file

@ -0,0 +1,8 @@
nodemon --ext rst,style,txt --exec "
rst2pdf slides.rst \
--output slides.pdf \
--stylesheets main \
--break-level 1 \
--fit-background-mode scale \
--extension-module preprocess
"

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

View file

@ -0,0 +1,169 @@
.. footer:: @opdavies
Building and presenting slide decks with rst2pdf
################################################
|
.. class:: titleslideinfo
Oliver Davies (@opdavies)
.. raw:: pdf
TextAnnotation "Gave my first talk in 2012."
TextAnnotation "A talk about a tool (rst2pdf) that I've been using for the last couple of talks."
.. page:: standardPage
What have I used before?
========================
* **UI based:** Keynote, Google Slides, slides.com
* **HTML/JavaScript:** reveal.js
* **Markdown:** Deckset, Marp, reveal-md
What is rst2pdf?
================
* "Use a text editor. Make a PDF."
* reStructuredText to PDF
* Each slide is a page
* Page templates for layouts
* Not just for slide decks
* Table of contents, page numbers, headers, footers
.. raw:: pdf
TextAnnotation "Use the tools you're familiar with."
TextAnnotation "Similar to Markdown."
TextAnnotation "Primarily used for technical documentation within the Python community."
TextAnnotation "Now maintained by PHPers Rob Allen and Lorna Jane Mitchell."
TextAnnotation "Breaks at titles automatically, or you can add manual page breaks."
Advantages
==========
* Easy to start a new presentation, or update an existing one
* Version controllable
* Portable
* Content is searchable
* Easy to re-use content and/or styling
* Slides uploaded to SpeakerDeck straight away
.. page:: imagePage
.. image:: images/editing.png
:width: 23cm
.. page:: standardPage
Useful reStructuredText
=======================
.. code-block:: rst
:include: code/useful-rst-1.txt
:linenos:
Useful reStructuredText
=======================
.. code-block:: rst
:include: code/useful-rst-2.txt
:linenos:
Page Templates
==============
main.style:
.. code-block:: yaml
:include: code/page-templates-style.txt
slides.rst:
.. code-block:: rst
:include: code/page-templates-rst.txt
Keeping things organised
========================
Split slides into different sections:
.. code-block:: rst
:include: code/includes-sections.txt
|
Including code snippets from separate files:
.. code-block:: rst
:include: code/includes-code.txt
.. raw:: pdf
TextAnnotation "Includes!"
Styling
=======
.. code-block:: yaml
:include: code/styling.txt
:linenos:
Building
========
.. code-block::
:include: code/building.txt
Watching
========
Re-compiling when something changes.
|
.. code-block:: bash
:include: code/watching.txt
Presenting
==========
``pdfpc`` - PDF presenter console
|
.. code-block::
pdfpc slides.pdf
.. page:: imagePage
.. image:: images/pdfpc-1.png
:width: 23cm
.. raw:: pdf
PageBreak
.. image:: images/pdfpc-2.png
:width: 23cm
.. page:: standardPage
Thanks!
=======
References:
* https://rst2pdf.org
* https://github.com/rst2pdf/rst2pdf
* https://github.com/opdavies/talks
* https://oliverdavies.link/lorna-rst2pdf-talk
|
Me:
* https://www.oliverdavies.uk

View file

@ -0,0 +1 @@
use flake

View file

@ -0,0 +1,10 @@
/output_*/
/.phpunit.cache
/.phpunit.result.cache
# Nix
/.direnv/
# Composer
/vendor/

View file

@ -0,0 +1,12 @@
#!/usr/bin/env bash
export PATH="${PATH}:./vendor"
tmux new-window -dn shell
tmux new-window -dn server
tmux send-keys -t server "sculpin generate --server --watch" Enter
xdg-open http://localhost:8000
nvim

View file

@ -0,0 +1,7 @@
sculpin_content_types:
# speakers:
# permalink: /speakers/:basename/
# talks:
# permalink: /talks/:basename/
posts:
enabled: false

View file

@ -0,0 +1,2 @@
name: 'My New Sculpin Site'
locale: en

View file

@ -0,0 +1,2 @@
imports:
- sculpin_site.yml

View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
set -euo pipefail
export PATH="$PATH:./vendor/bin"
sculpin generate "$@"

View file

@ -0,0 +1,3 @@
---
name: demo
template: php-sculpin

View file

@ -0,0 +1,5 @@
#!/usr/bin/env bash
set -euo pipefail
rm -rfv output_* vendor

View file

@ -0,0 +1,10 @@
{
"require": {
"sculpin/sculpin": "^3.0"
},
"config": {
"allow-plugins": {
"sculpin/sculpin-theme-composer-plugin": true
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,27 @@
{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1740828860,
"narHash": "sha256-cjbHI+zUzK5CPsQZqMhE3npTyYFt9tJ3+ohcfaOF/WM=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "303bd8071377433a2d8f76e684ec773d70c5b642",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

View file

@ -0,0 +1,26 @@
{
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
outputs = inputs:
let
system = "x86_64-linux";
pkgs = import inputs.nixpkgs { inherit system; };
in
{
devShells.${system}.default =
with pkgs;
mkShell {
buildInputs = [
nodePackages.browser-sync
(php83.buildEnv {
extraConfig = ''
error_reporting = E_ALL & ~E_DEPRECATED & ~E_USER_DEPRECATED
'';
})
php83Packages.composer
];
};
};
}

View file

@ -0,0 +1,19 @@
<!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>
<link rel="stylesheet" href="/css/styles.css">
</head>
<body>
<div class="container">
{% block content_wrapper %}
<h1>{{ page.title }}</h1>
{% block content %}{% endblock %}
{% endblock %}
</div>
</body>
</html>

View file

@ -0,0 +1,5 @@
{% extends 'base' %}
{% block content_wrapper %}
<h1>{{ page.name }}</h1>
{% endblock %}

View file

@ -0,0 +1,5 @@
{% extends 'base' %}
{% block content_wrapper %}
<h1>{{ page.title }}</h1>
{% endblock %}

View file

@ -0,0 +1,4 @@
---
name: Ciaran McNulty
imageUrl: /images/ciaran.jpg
---

View file

@ -0,0 +1,4 @@
---
name: Dan Leech
imageUrl: /images/highres_257208698.jpeg
---

View file

@ -0,0 +1,6 @@
---
name: Dave Liddament
imageUrl: /images/highres_203797572.jpeg
---
Director and Developer at Lamp Bristol. PHP, Java and Python software developer.

View file

@ -0,0 +1,4 @@
---
name: Derick Rethans
imageUrl: /images/highres_276685584.jpeg
---

View file

@ -0,0 +1,6 @@
---
name: James Titcumb
imageUrl: /images/highres_134740252.jpeg
---
James is the founder of the UK based PHP Hampshire user group, a Zend Certified Engineer and Development Manager at Protected.co.uk.

View file

@ -0,0 +1,6 @@
---
name: Mike Karthauser
imageUrl: /images/highres_80709042.jpeg
---
Dev since '98. PHP since '03.

View file

@ -0,0 +1,4 @@
---
name: Naomi Gotts
imageUrl: /images/highres_311941362.jpeg
---

View file

@ -0,0 +1,4 @@
---
name: Nigel Dunn
imageUrl: /images/highres_131268052.jpeg
---

View file

@ -0,0 +1,6 @@
---
name: Oliver Davies
imageUrl: /images/highres_317091329.jpeg
---
Full Stack Software Consultant. Drupal and PHP expert.

View file

@ -0,0 +1,6 @@
---
name: Rob Allen
imageUrl: /images/highres_312615346.jpeg
---
PHP developer from Worcester.

View file

@ -0,0 +1,6 @@
---
name: Robin Hodson
imageUrl: /images/highres_243972257.jpeg
---
Ready to look for coding/hardware work post-lockdown, now largely recovered from stressful experiences. Accepted work from the government in September/October; currently realigning goals plus getting things I've been working on a bit more tangible.

View file

@ -0,0 +1,4 @@
---
name: Ryan Lee
imageUrl: /images/highres_273691940.jpeg
---

View file

@ -0,0 +1,6 @@
---
title: Behaviour Driven Development (BDD) in Practice
date: 2022-09-14
speakers:
- Ciaran McNulty
---

View file

@ -0,0 +1,6 @@
---
title: Building "Build Configs"
date: 2023-11-08
speakers:
- Oliver Davies
---

View file

@ -0,0 +1,6 @@
---
title: Introducing Domain Driven Design
date: 2024-01-10
speakers:
- Rob Allen
---

View file

@ -0,0 +1,6 @@
---
title: 'FPGA^2: An open-source FPGA'
date: 2024-02-14
speakers:
- Robin Hodson
---

View file

@ -0,0 +1,6 @@
---
title: Go for PHP
date: 2023-02-08
speakers:
- Dan Leech
---

View file

@ -0,0 +1,6 @@
---
title: What's new in PHP 8.*
date: 2023-02-11
speakers:
- Derick Rethans
---

View file

@ -0,0 +1,6 @@
---
title: Building Static Websites with PHP and Sculpin
date: 2024-02-14
speakers:
- Oliver Davies
---

View file

@ -0,0 +1,6 @@
---
title: What is TDD and why should I care?
date: 2023-07-12
speakers:
- Naomi Gotts
---

View file

@ -0,0 +1,6 @@
---
title: Terraform from a devs perspective
date: 2023-10-11
speakers:
- Nigel Dunn
---

View file

@ -0,0 +1,6 @@
---
title: Testing Legacy
date: 2023-11-08
speakers:
- Mike Karthauser
---

View file

@ -0,0 +1,6 @@
---
title: Building Better TUIs (with PHP)
date: 2023-11-08
speakers:
- Dan Leech
---

View file

@ -0,0 +1,6 @@
---
title: Thoughts on Ubiquitous Language
date: 2023-11-08
speakers:
- Rob Allen
---

View file

@ -0,0 +1,5 @@
.container {
margin: 0 auto;
max-width: 768px;
padding: 0 1rem;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 758 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 794 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

View file

@ -0,0 +1,4 @@
---
layout: base
title: Hello, World!
---

View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
set -euo pipefail
export PATH="$PATH:./vendor/bin"
sculpin generate --server --watch "$@"

View file

@ -0,0 +1,4 @@
Building static websites with Sculpin
#####################################
https://www.oliverdavies.uk/talks/building-static-websites-sculpin

View file

@ -0,0 +1,5 @@
---
name: oliverdavies.uk
menu_links:
- { title: Home, href: / }
- { title: About, href: /about }

View file

@ -0,0 +1,10 @@
---
title: My Daily Email Archive
layout: default
use:
- daily_email
---
{% for email in data.daily_emails %}
<p>{{ email.title }}</p>
{% endfor %}

View file

@ -0,0 +1,12 @@
---
...
testimonials:
- { name: ..., role: ..., text: ..., url: ... }
- { name: ..., role: ..., text: ..., url: ... }
- { name: ..., role: ..., text: ..., url: ... }
---
{% for testimonial in page.testimonials %}
<h2>{{ testimonial.name }} - {{ testimonial.role }}</h2>
<p>{{ testimonial.text }}</p>
{% endfor %}

View file

@ -0,0 +1,5 @@
---
layout: post
title: New blog post
draft: yes
---

View file

@ -0,0 +1,9 @@
<!DOCTYPE html>
<html>
<head>
<title>Hello!</title>
</head>
<body>
<p>Hello, World!</p>
</body>
</html>

View file

@ -0,0 +1,6 @@
---
layout: default
title: Hello!
---
Hello, World!

View file

@ -0,0 +1,11 @@
{# source/_layouts/base.html.twig #}
<!DOCTYPE html>
<html lang="{{ site.locale|default('en') }}">
<head>
<title>{{ site.name|default('Sculpin Skeleton') }}</title>
</head>
<body>
{% block body %}{% endblock %}
</body>
</html>

View file

@ -0,0 +1,7 @@
{# source/_layouts/page.html.twig #}
{% extends 'base' %}
{% block body %}
{% block content %}{% endblock %}
{% endblock %}

View file

@ -0,0 +1,13 @@
app/
config/
sculpin_kernel.yml
sculpin_site.yml
composer.json
composer.lock
output_dev/
output_prod/
source/
_includes/
_templates/
index.md
vendor/

View file

@ -0,0 +1,8 @@
{{ 'today' }}
{{ 'today'|date }}
{{ 'today'|date('Y') }}
{{ 'today'|date('Y') - 2007 }} # 18 (years of experience)

View file

@ -0,0 +1,24 @@
---
title: Building Static Websites with Sculpin
events:
- name: PHP Berkshire
date: 2024-08-28
location: Reading, UK
url: https://www.meetup.com/php-berkshire/events/301850284
- name: BrumPHP
date: 2024-05-23
location: Birmingham, UK
url: https://www.eventbrite.com/e/brumphp-23rd-may-2024-tickets-803037766577
---
// end yaml
// start twig
{% set talkCount = 0 %}
{% for talk in data.talks %}
{% for event in talk.events if 'today'|date('U') >= event.date|date('U') %}
{% set talkCount = talkCount + 1 %}
{% endfor %}
{% endfor %}
<p>I have given {{ talkCount }} talks.</p>

View file

@ -0,0 +1,15 @@
{% set talks = site.talks|filter(talk => talk.speaker == page.name) %}
{% if talks is not empty %}
<section>
<h2>Talks by {{ page.name }}</h2>
<div>
<ul>
{% for talk in talks %}
<li><a href="#0">{{ talk.title }}</a></li>
{% endfor %}
</ul>
</div>
</section>
{% endif %}

View file

@ -0,0 +1,8 @@
- Adding a new page (`/talks`)
- Adding a new menu link
- Adding a new content type (talks)
- Add a new talk
- Show how to use page-level variables, adding events to a talk
- Adding the talks page to the menu
- Active menu link styling?
- Generating a production version of the site

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Some files were not shown because too many files have changed in this diff Show more