Skip to content

Commit

Permalink
Separate layout documentation from examples
Browse files Browse the repository at this point in the history
  • Loading branch information
paulrobertlloyd committed Dec 23, 2023
1 parent 2e09bfb commit aa6a82e
Show file tree
Hide file tree
Showing 19 changed files with 428 additions and 380 deletions.
Binary file added docs/assets/example-layouts/post-image.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
38 changes: 38 additions & 0 deletions docs/assets/example-layouts/product-illustration.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
60 changes: 60 additions & 0 deletions docs/example-layouts/collection.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
layout: collection
title: Apply for a juggling licence
description: API documentation for the new Apply for a juggling licence service.
paginationHeading: API methods
pagination:
data: example
size: 4
example:
- url: "#"
date: 2021-09-08
data:
title: GET /applications
description: Get many applications.
- url: "#"
date: 2021-09-08
data:
title: GET /applications/:id
description: Get a single application.
- url: "#"
date: 2021-09-08
data:
title: POST /applications/:id/approve
description: Approve an application.
- url: "#"
date: 2021-09-08
data:
title: POST /applications/:id/reject
description: Reject an application.
- url: "#"
date: 2021-09-08
data:
date: 2021-08-17
title: POST /applications/:id/withdraw
description: Withdraw an application.
related:
sections:
- title: Related content
items:
- text: Layouts
href: /layouts
- text: Collection layout
href: /layouts/collection
subsections:
- title: Other example layouts
items:
- text: Page
href: /example-layouts/page
- text: Page with sub navigation
href: /example-layouts/sub-navigation
- text: Post
href: /example-layouts/post
- text: Product page
href: /example-layouts/product-page
eleventyComputed:
aside:
title: Example layout
content: |
This is an example page using the `collection` layout. You can [view the source used to create this page on GitHub]({{ viewSource }}).
---
7 changes: 7 additions & 0 deletions docs/example-layouts/example-layouts.11tydata.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
module.exports = {
eleventyComputed: {
viewSource: (data) =>
`https://github.com/x-govuk/govuk-eleventy-plugin/blob/main/docs${data.page.filePathStem}.md?plain=1`
},
eleventyExcludeFromCollections: true
}
49 changes: 49 additions & 0 deletions docs/example-layouts/page.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
layout: page
title: Apply for a juggling licence
description: API documentation for the new Apply for a juggling licence service.
related:
sections:
- title: Related content
items:
- text: Layouts
href: /layouts
- text: Page layout
href: /layouts/page
subsections:
- title: Other example layouts
items:
- text: Page with sub navigation
href: /example-layouts/sub-navigation
- text: Post
href: /example-layouts/post
- text: Collection
href: /example-layouts/collection
- text: Product page
href: /example-layouts/product-page
eleventyComputed:
aside:
title: Example layout
content: |
This is an example page using the `page` layout. You can [view the source used to create this page on GitHub]({{ viewSource }}).
---

## About this API

Once a juggler has submitted their application via the Apply service, the application will become available over the API.

Providers can then use the API for:

- [Retrieving applications](#)
- [Approving applications](#)
- [Rejecting unsuccessful applications](#)

To get an idea of how the API works, [review the example usage scenarios](#).

## Authentication and authorisation

Requests to the API must be accompanied by an authentication token.

Each token is associated with a single licencing authority. It will grant access to applications for courses offered by or accredited by that provider.

For instructions on how to authenticate, see the [API reference](#).
53 changes: 53 additions & 0 deletions docs/example-layouts/post.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
layout: post
title: How we designed a service to manage juggling licence applications
description: Layout for date-based content, such as blog posts or news items.
date: 2011-12-21
image:
src: /assets/example-layouts/post-image.jpg
alt: High angle photo of assorted-colour plastic balls.
caption: Photo by [Greyson Joralemon](https://unsplash.com/@greysonjoralemon) on [Unsplash](https://unsplash.com/photos/9IBqihqhuHc)
authors:
- name: Rod Gandini
url: '#'
- name: Sean Laver
url: '#'
related:
sections:
- title: Related content
items:
- text: Layouts
href: /layouts
- text: Post layout
href: /layouts/post
subsections:
- title: Other example layouts
items:
- text: Page
href: /example-layouts/page
- text: Page with sub navigation
href: /example-layouts/sub-navigation
- text: Collection
href: /example-layouts/collection
- text: Product page
href: /example-layouts/product-page
tags:
- example tag
eleventyComputed:
aside:
title: Example layout
content: |
This is an example page using the `post` layout. You can [view the source used to create this page on GitHub]({{ viewSource }}).
---

Jugglers require proper licensing to ensure the safety of both themselves and their audiences. Our team has been building a new service which aims to simplify the licensing process while reducing the administrative burden on licensing authorities.

They told us about the cumbersome paperwork and frustrating manual processes currently used to manage applications. Meanwhile, the complex application forms are difficult for jugglers to complete, while some told us they were unaware that a licence to juggle with more than 3 objects was even needed.

During our Alpha phase, we explored creating an intuitive, user-friendly service for jugglers that would allow them to easily submit new licence applications (or renew an existing licence) online. Regular research sessions with jugglers and licensing authorities helped us iterate and refine such a system.

We launched a pilot of the new service 2 weeks ago. We have already received feedback from jugglers. They’ve told us that the new service is easier to use and understand. Meanwhile, the licensing authorities we have partnered with are recording quicker processing times and seeing reduced administrative overhead.

As we continue to develop the service, we will explore future enhancements such as real-time application tracking and automated renewal reminders.

Our goal is to deliver a service that not only meets the current needs of the juggling community, but one that can evolve in response to the evolving regulatory landscape.
70 changes: 70 additions & 0 deletions docs/example-layouts/product.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
layout: product
title: Apply for a juggling licence
description: API documentation for the new Apply for a juggling licence service.
startButton:
href: "#"
text: Get started
image:
src: /assets/example-layouts/product-illustration.svg
alt: Eleventy’s possum mascot hanging on a red balloon and floating above a laptop.
related:
sections:
- title: Related content
items:
- text: Layouts
href: /layouts
- text: Page layout
href: /layouts/product
subsections:
- title: Other example layouts
items:
- text: Page
href: /example-layouts/page
- text: Page with sub navigation
href: /example-layouts/sub-navigation
- text: Post
href: /example-layouts/post
- text: Collection
href: /example-layouts/collection
- text: Product page
href: /example-layouts/product-page
eleventyComputed:
aside:
title: Example layout
content: |
This is an example page using the `product` layout. You can [view the source used to create this page on GitHub]({{ viewSource }}).
---

<div class="govuk-grid-row">
<section class="govuk-grid-column-one-third-from-desktop">
<h2 class="govuk-heading-m govuk-!-margin-bottom-2">
<a class="govuk-link govuk-link--no-visited-state" href="#">
API reference
</a>
</h2>
<p class="govuk-body">
Methods for retrieving and approving and rejecting licence applications.
</p>
</section>
<section class="govuk-grid-column-one-third-from-desktop">
<h2 class="govuk-heading-m govuk-!-margin-bottom-2">
<a class="govuk-link govuk-link--no-visited-state" href="#">
Usage scenarios
</a>
</h2>
<p class="govuk-body">
Scenarios that show example request URLs and payloads clients can use to take actions via this API.
</p>
</section>
<section class="govuk-grid-column-one-third-from-desktop">
<h2 class="govuk-heading-m govuk-!-margin-bottom-2">
<a class="govuk-link govuk-link--no-visited-state" href="#">
Release notes
</a>
</h2>
<p class="govuk-body">
We sometimes make changes to the API that require updates to juggler record systems.
</p>
</section>
</div>
49 changes: 49 additions & 0 deletions docs/example-layouts/sub-navigation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
layout: sub-navigation
title: Apply for a juggling licence
description: API documentation for the new Apply for a juggling licence service.
related:
sections:
- title: Related content
items:
- text: Layouts
href: /layouts
- text: Sub navigation layout
href: /layouts/sub-navigation
subsections:
- title: Other example layouts
items:
- text: Page
href: /example-layouts/page
- text: Post
href: /example-layouts/post
- text: Collection
href: /example-layouts/collection
- text: Product page
href: /example-layouts/product-page
eleventyComputed:
aside:
title: Example layout
content: |
This is an example page using the `sub-navigation` layout. You can [view the source used to create this page on GitHub]({{ viewSource }}).
---

## About this API

Once a juggler has submitted their application via the Apply service, the application will become available over the API.

Providers can then use the API for:

- [Retrieving applications](#)
- [Approving applications](#)
- [Rejecting unsuccessful applications](#)

To get an idea of how the API works, [review the example usage scenarios](#).

## Authentication and authorisation

Requests to the API must be accompanied by an authentication token.

Each token is associated with a single licencing authority. It will grant access to applications for courses offered by or accredited by that provider.

For instructions on how to authenticate, see the [API reference](#).
41 changes: 0 additions & 41 deletions docs/includes/front-matter-options.md

This file was deleted.

3 changes: 0 additions & 3 deletions docs/includes/includes.11tydata.js

This file was deleted.

Loading

0 comments on commit aa6a82e

Please sign in to comment.