Repository navigation
Expand file tree
/
Copy pathindex.njk
More file actions
94 lines (89 loc) · 4.81 KB
/
Copy pathindex.njk
File metadata and controls
94 lines (89 loc) · 4.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
---
layout: base.njk
title: The h5p-author skill · Missing Elements
description: The h5p-author skill's files and those its build fetches, each at its full address, for an AI chat that cannot install the skill.
# No script but the site's: base.njk writes the policy first in <head>, and the color-scheme script
# is added to script-src by its hash at build (eleventy.config.js).
csp: "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'; object-src 'none'; base-uri 'self'"
---
{#- Every address is written out whole, as its link's text too: a chat's fetch tool may open only
the addresses it has seen in full, and a relative link, or SKILL.md's <Type>, is none. -#}
{%- set base = site.url + "/h5p/skill/" -%}
{%- set bundlesBase = site.url + "/h5p/bundles/" -%}
<main class="content skill" id="main">
<header class="docs-header">
<a class="brand build-brand" href="/"><img src="/assets/logo.svg" alt="" width="24" height="24">{{ site.name }}</a>
<div class="docs-header-row">
<h1>The h5p-author skill</h1>
{% include "theme-switch.njk" %}
</div>
<p class="lead">
Its files and those its build fetches, each at its full address, for an AI chat that cannot
install the skill.
</p>
<p>
Read <code>SKILL.md</code> first and follow its steps. A file it names, such as
<code>references/authoring.md</code> or a content type's <code>references/types/<Type>.md</code>,
is the one listed here under that path, and a bundle its step 3 fetches is listed last. These
are the files of h5p-author {{ skill.version }}, the release the build page at
<a href="{{ site.url }}/h5p/build/">{{ site.url }}/h5p/build/</a> runs.
</p>
<p>
Where skills can be installed, install it instead:
<code>npx skills add missing-elements/h5p-offline-player --skill h5p-author</code>.
</p>
</header>
{#- The sections are steps, in the order a chat reads them, drawn as the build page's timeline
(site.css). The lists are drawn without bullets, and Safari then reads one as a list only if
it is told. -#}
<section class="step" aria-labelledby="first-heading">
<h2 id="first-heading"><span class="step-marker"><span class="step-number">1</span></span> Read first</h2>
<ul class="skill-files" role="list">
<li><a href="{{ base }}SKILL.md">{{ base }}SKILL.md</a>: the skill's steps</li>
</ul>
</section>
<section class="step" aria-labelledby="named-heading">
<h2 id="named-heading"><span class="step-marker"><span class="step-number">2</span></span> The files it names</h2>
<ul class="skill-files" role="list">
{%- for path in skill.named %}
<li><a href="{{ base }}{{ path }}">{{ base }}{{ path }}</a>
{%- if path == "references/authoring.md" %}: the brief, read once
{%- elif path == "LICENSE" %}: the skill's licence, MIT, which goes with it{% endif %}</li>
{%- endfor %}
</ul>
</section>
<section class="step" aria-labelledby="types-heading">
<h2 id="types-heading"><span class="step-marker"><span class="step-number">3</span></span> A content type's file</h2>
<p>
One per content type: its notes, an example and its fields. Read the file of the type the
source is written in, and those of the parts it holds, such as H5P.AdvancedText or H5P.Image.
</p>
<ul class="skill-files" role="list">
{%- for path in skill.types %}
<li><a href="{{ base }}{{ path }}">{{ base }}{{ path }}</a></li>
{%- endfor %}
</ul>
</section>
<section class="step" aria-labelledby="bundles-heading">
<h2 id="bundles-heading"><span class="step-marker"><span class="step-number">4</span></span> To build where npm cannot be reached</h2>
<p>
The build tool, which runs with Node and nothing installed, and a bundle per content type:
the libraries a build of that type reads. Fetch the tool and the bundle of the source's own
type, as step 3 of <code>SKILL.md</code> says.
</p>
<ul class="skill-files" role="list">
{%- for file in skill.bundles %}
<li><a href="{{ bundlesBase }}{{ file }}">{{ bundlesBase }}{{ file }}</a>
{%- if file == "h5p-author.mjs" %}: the build tool{% endif %}</li>
{%- endfor %}
</ul>
</section>
<footer class="docs-footer">
<p>
The skill and <code>@missing-elements/h5p-author</code> are MIT, from
<a href="https://github.com/missing-elements/h5p-offline-player/tree/main/skills/h5p-author">h5p-offline-player</a>.
Not affiliated with H5P Group; H5P is a registered trademark of H5P Group AS.
</p>
<p>Found a mistake? <a href="https://github.com/missing-elements/missing-elements.github.io/blob/main/{{ page.inputPath | replace('./', '') }}">Edit this page</a> or <a href="https://github.com/missing-elements/h5p-offline-player/issues">open an issue</a>.</p>
</footer>
</main>