diff --git a/.github/workflows/node.js-ci.yml b/.github/workflows/node.js-ci.yml index a505478..fce41fc 100644 --- a/.github/workflows/node.js-ci.yml +++ b/.github/workflows/node.js-ci.yml @@ -1,7 +1,7 @@ -# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node -# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions +# Test and build your Hyas project +# For more information see: https://henkverlinde.com/continuous-integration-workflow-for-your-hyas-project/ -name: CI +name: Hyas CI on: push: diff --git a/.gitignore b/.gitignore index b107f0d..dc908b5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ functions node_modules public -resources -yarn-error.log \ No newline at end of file +resources \ No newline at end of file diff --git a/README.md b/README.md index 854811e..755d13a 100644 --- a/README.md +++ b/README.md @@ -32,32 +32,34 @@ Nine reasons why you should use Doks: Make sure all dependencies have been installed: -- [Hugo](https://gohugo.io/) >= 0.75.0/extended +- [Hugo](https://gohugo.io/getting-started/installing/) >= 0.75.0/extended (needed for SCSS processing support) - [Node.js](https://nodejs.org/) >= 14.15.0 (needed to install npm packages and run commands) ## Get started -Create a new Doks project: +Have your Doks site in three steps: + +### 1. Create a new Doks project: ```bash git clone https://github.com/h-enk/doks.git my-doks-site ``` -Install npm packages: +### 2. Install npm packages: ```bash npm install ``` -Start local development server: +### 3. Start local development server: ```bash npm run start ``` -### Other commands +## Other commands -Doks comes with [commands for most used tasks](https://getdoks.org/docs/prologue/commands/). +Doks comes with [commands](https://getdoks.org/docs/prologue/commands/) for common tasks. ## Quick start @@ -67,7 +69,7 @@ Get your Doks site in 1 min. ## Example site -👉 [doks.netlify.app](https://doks.netlify.app/) +- [doks.netlify.app](https://doks.netlify.app/) ## Documentation diff --git a/assets/js/app.js b/assets/js/app.js index 3d05a28..2499559 100644 --- a/assets/js/app.js +++ b/assets/js/app.js @@ -148,3 +148,22 @@ Source: } }()); + +/* eslint-disable */ +var clipboard = new ClipboardJS('.btn-clipboard'); + +clipboard.on('success', function(e) { + /* + console.info('Action:', e.action); + console.info('Text:', e.text); + console.info('Trigger:', e.trigger); + */ + + e.clearSelection(); +}); + +clipboard.on('error', function(e) { + console.error('Action:', e.action); + console.error('Trigger:', e.trigger); +}); +/* eslint-enable */ diff --git a/assets/scss/common/_dark.scss b/assets/scss/common/_dark.scss index e44cf22..ddd4f16 100644 --- a/assets/scss/common/_dark.scss +++ b/assets/scss/common/_dark.scss @@ -279,3 +279,7 @@ body.dark .alert-primary { background: $link-color-dark; color: $body-bg-dark; } + +body.dark .figure-caption { + color: $body-color-dark; +} diff --git a/assets/scss/common/_global.scss b/assets/scss/common/_global.scss index dfc6088..c245473 100644 --- a/assets/scss/common/_global.scss +++ b/assets/scss/common/_global.scss @@ -2,7 +2,9 @@ .blog .content, .page .content, .error404 .content, -.docs.list .content { +.docs.list .content, +.tutorial.list .content, +.showcase.list .content { padding-top: 1rem; padding-bottom: 3rem; } @@ -112,14 +114,15 @@ body { @supports ((position: -webkit-sticky) or (position: sticky)) { .docs-links { max-height: calc(100vh - 4rem); - overflow-y: auto; + overflow-y: scroll; } } } @include media-breakpoint-up(lg) { .docs-links { - display: block !important; + display: block; + width: auto; margin-right: -1.5rem; padding-bottom: 4rem; } diff --git a/assets/scss/layouts/_sidebar.scss b/assets/scss/layouts/_sidebar.scss index cedd3e8..46881bd 100644 --- a/assets/scss/layouts/_sidebar.scss +++ b/assets/scss/layouts/_sidebar.scss @@ -91,3 +91,20 @@ a.docs-link { text-decoration: none; color: $link-color; } + +.docs-links h3.sidebar-link, +.page-links h3.sidebar-link { + text-transform: none; + font-size: $font-size-md; + font-weight: normal; +} + +.docs-links h3.sidebar-link a, +.page-links h3.sidebar-link a { + color: $body-color; +} + +.docs-links h3.sidebar-link a:hover, +.page-links h3.sidebar-link a:hover { + text-decoration: underline; +} diff --git a/config/_default/config.toml b/config/_default/config.toml index 961cf14..dd5cfb6 100644 --- a/config/_default/config.toml +++ b/config/_default/config.toml @@ -88,3 +88,6 @@ rel = "sitemap" [[module.mounts]] source = "node_modules/flexsearch" target = "assets/js/vendor/flexsearch" + [[module.mounts]] + source = "node_modules/clipboard" + target = "assets/js/vendor/clipboard" diff --git a/config/_default/menus.toml b/config/_default/menus.toml index b5896aa..b9ae367 100644 --- a/config/_default/menus.toml +++ b/config/_default/menus.toml @@ -6,7 +6,7 @@ [[docs]] name = "Help" - weight = 50 + weight = 60 identifier = "help" url = "/docs/help/" diff --git a/config/_default/params.toml b/config/_default/params.toml index c5159fa..4e039e1 100644 --- a/config/_default/params.toml +++ b/config/_default/params.toml @@ -1,16 +1,20 @@ +# Meta Data for SEO + +## Homepage title = "Doks" titleSeparator = "-" titleAddition = "Modern Documentation Theme" description = "Doks is a Hugo theme helping you build modern documentation websites that are secure, fast, and SEO-ready — by default." +## Open Graph + Twitter Cards images = ["doks.png"] - twitterSite = "henkverlinde" twitterCreator = "henkverlinde" facebookAuthor = "verlinde.henk" facebookPublisher = "verlinde.henk" ogLocale = "en_US" +## JSON-LD schemaType = "Organization" schemaLogo = "logo-doks.png" schemaTwitter = "https://twitter.com/henkverlinde" @@ -18,19 +22,26 @@ schemaLinkedIn = "https://www.linkedin.com/in/henkverlinde/" schemaGitHub = "https://github.com/h-enk" schemaSection = "blog" +## Sitelinks Search Box siteLinksSearchBox = false +## Chrome Browser themeColor = "#fff" +# Images quality = 85 bgColor = "#fff" landscapePhotoWidths = [900, 800, 700, 600, 500] portraitPhotoWidths = [800, 700, 600, 500] lqipWidth = "20x" +# Footer footer = "Powered by Netlify, Hugo, and Doks" +# Alert alert = false alertText = "Like Doks? Star on GitHub. Thanks!" +# Edit Page docsRepo = "https://github.com/h-enk/doks" +editPage = false diff --git a/content/_index.md b/content/_index.md index db4b8c4..bc37a3c 100644 --- a/content/_index.md +++ b/content/_index.md @@ -7,3 +7,5 @@ lastmod: 2020-10-06T08:47:36+00:00 draft: false images: [] --- + +Like Doks? [Star on GitHub](https://github.com/h-enk/doks/stargazers)! ⭐️🙏 diff --git a/content/contributors/henk-verlinde/_index.md b/content/contributors/henk-verlinde/_index.md index c14f516..f775534 100644 --- a/content/contributors/henk-verlinde/_index.md +++ b/content/contributors/henk-verlinde/_index.md @@ -7,6 +7,6 @@ draft: false images: [] --- -Creator of [Hyas](https://github.com/h-enk/hyas). +Creator of Hyas. [@HenkVerlinde](https://twitter.com/henkverlinde) diff --git a/content/docs/help/faq.md b/content/docs/help/faq.md index ff7c744..25e7444 100644 --- a/content/docs/help/faq.md +++ b/content/docs/help/faq.md @@ -9,7 +9,7 @@ images: [] menu: docs: parent: "help" -weight: 540 +weight: 630 toc: true --- @@ -28,6 +28,11 @@ Please keep it in place. - open: `Enter` - close: `Esc` +## Other documentation? + +- [Netlify](https://docs.netlify.com/) +- [Hugo](https://gohugo.io/documentation/) + ## Can I get support? Create a topic: diff --git a/content/docs/help/how-to-update.md b/content/docs/help/how-to-update.md new file mode 100644 index 0000000..0129cdc --- /dev/null +++ b/content/docs/help/how-to-update.md @@ -0,0 +1,24 @@ +--- +title: "How to Update" +description: "Regularly update the installed npm packages to keep your Doks website stable, usable, and secure." +lead: "Regularly update the installed npm packages to keep your Doks website stable, usable, and secure." +date: 2020-11-12T13:26:54+01:00 +lastmod: 2020-11-12T13:26:54+01:00 +draft: false +images: [] +menu: + docs: + parent: "help" +weight: 610 +toc: true +--- + +{{< alert icon="💡" text="Learn more about semantic versioning and advanced range syntax." >}} + +## Update npm packages + +Bump the versions in the `devDependencies` section of `./package.json` to your liking, and run: + +```bash +npm update +``` diff --git a/content/docs/help/troubleshooting.md b/content/docs/help/troubleshooting.md new file mode 100644 index 0000000..0d52dbb --- /dev/null +++ b/content/docs/help/troubleshooting.md @@ -0,0 +1,30 @@ +--- +title: "Troubleshooting" +description: "Solutions to common problems." +lead: "Solutions to common problems." +date: 2020-11-12T15:22:20+01:00 +lastmod: 2020-11-12T15:22:20+01:00 +draft: false +images: [] +menu: + docs: + parent: "help" +weight: 620 +toc: true +--- + +## Problems updating npm packages + +Delete the `./node_modules` folder, and run again: + +```bash +npm install +``` + +## Problems with cache + +Delete the temporary directories: + +```bash +npm run clean +``` diff --git a/content/docs/prologue/commands.md b/content/docs/prologue/commands.md index fea64e8..b5818d1 100644 --- a/content/docs/prologue/commands.md +++ b/content/docs/prologue/commands.md @@ -1,7 +1,7 @@ --- title: "Commands" -description: "Doks comes with commands for most used tasks." -lead: "Doks comes with commands for most used tasks." +description: "Doks comes with commands for common tasks." +lead: "Doks comes with commands for common tasks." date: 2020-10-13T15:21:01+02:00 lastmod: 2020-10-13T15:21:01+02:00 draft: false @@ -9,7 +9,7 @@ images: [] menu: docs: parent: "prologue" -weight: 030 +weight: 130 toc: true --- @@ -19,6 +19,8 @@ toc: true Start local development server: +{{< btn-copy text="npm run start" >}} + ```bash npm run start ``` @@ -27,6 +29,8 @@ npm run start Check scripts, styles, and markdown for errors: +{{< btn-copy text="npm run lint" >}} + ```bash npm run lint ``` @@ -35,6 +39,8 @@ npm run lint Check scripts for errors: +{{< btn-copy text="npm run lint:scripts" >}} + ```bash npm run lint:scripts [-- --fix] ``` @@ -43,6 +49,8 @@ npm run lint:scripts [-- --fix] Check styles for errors: +{{< btn-copy text="npm run lint:styles" >}} + ```bash npm run lint:styles [-- --fix] ``` @@ -51,6 +59,8 @@ npm run lint:styles [-- --fix] Check markdown for errors: +{{< btn-copy text="npm run lint:markdown" >}} + ```bash npm run lint:markdown [-- --fix] ``` @@ -59,6 +69,8 @@ npm run lint:markdown [-- --fix] Delete temporary directories: +{{< btn-copy text="npm run clean" >}} + ```bash npm run clean ``` @@ -67,6 +79,8 @@ npm run clean Build production website: +{{< btn-copy text="npm run build" >}} + ```bash npm run build ``` @@ -75,6 +89,8 @@ npm run build Build Lambda functions: +{{< btn-copy text="npm run build:functions" >}} + ```bash npm run build:functions ``` @@ -83,6 +99,8 @@ npm run build:functions Build production website including draft and future content: +{{< btn-copy text="npm run build:preview" >}} + ```bash npm run build:preview ``` diff --git a/content/docs/prologue/introduction.md b/content/docs/prologue/introduction.md index 09527be..29f47b5 100644 --- a/content/docs/prologue/introduction.md +++ b/content/docs/prologue/introduction.md @@ -9,80 +9,50 @@ images: [] menu: docs: parent: "prologue" -weight: 010 +weight: 100 toc: true --- -## Why Doks? - -Nine reasons why you should use Doks: - -1. __Security aware__. Get A+ scores on [Mozilla Observatory](https://observatory.mozilla.org/analyze/doks.netlify.app) out of the box. Easily change the default Security Headers to suit your needs. - -2. __Fast by default__. Get 100 scores on [Google Lighthouse](https://googlechrome.github.io/lighthouse/viewer/?gist=7731347bb8ce999eff7428a8e763b637) by default. Doks removes unused css, prefetches links, and lazy loads images. - -3. __SEO-ready__. Use sensible defaults for structured data, open graph, and Twitter cards. Or easily change the SEO settings to your liking. - -4. __Development tools__. Code with confidence. Check styles, scripts, and markdown for errors and fix automatically or manually. - -5. __Bootstrap framework__. Build robust, flexible, and intuitive websites with Bootstrap. Or use any other front-end framework if you prefer. - -6. __Netlify-ready__. Deploy to Netlify with sensible defaults. Easily use Netlify Functions, Netlify Redirects, and Netlify Headers. - -7. __Full text search__. Search your Doks site with FlexSearch. Easily customize index settings and search options to your liking. - -8. __Page layouts__. Build pages with a landing page, blog, or documentation layout. Add custom sections and components to suit your needs. - -9. __Dark mode__. Switch to a low-light UI with the click of a button. Change colors with variables to match your branding. - -## Requirements - -Make sure all dependencies have been installed: - -- [Hugo](https://gohugo.io/) >= 0.75.0/extended -- [Node.js](https://nodejs.org/) >= 14.15.0 (needed to install npm packages and run commands) - ## Get started -Create a new Doks project: +There are two main ways to get started with Doks: -```bash -git clone https://github.com/h-enk/doks.git my-doks-site -``` +### Tutorial -Install npm packages: +{{< alert icon="👉" text="The Tutorial is intended for novice to intermediate users." >}} -```bash -npm install -``` +Step-by-step instructions on how to start a new Doks project. [Tutorial →](https://getdoks.org/tutorial/introduction/) -Start local development server: +### Quick Start -```bash -npm run start -``` +{{< alert icon="👉" text="The Quick Start is intended for intermediate to advanced users." >}} -### Other commands +One page summary of how to start a new Doks project. [Quick Start →]({{< ref "quick-start" >}}) -Doks comes with [commands for most used tasks]({{< ref "commands" >}}). +## Go further -## Quick start +Recipes, Reference Guides, Extensions, and Showcase. -Get your Doks site in 1 min. +### Recipes -Deploy to Netlify +Get instructions on how to accomplish common tasks with Doks. [Recipes →](https://getdoks.org/docs/recipes/project-configuration/) -## Example site +### Reference Guides -👉 [doks.netlify.app](https://doks.netlify.app/) +Learn how to customize Doks to fully make it your own. [Reference Guides →](https://getdoks.org/docs/reference-guides/security/) -## Documentation +### Extensions -- [Netlify](https://docs.netlify.com/) -- [Hugo](https://gohugo.io/documentation/) -- [Doks](https://getdoks.org/) +Get instructions on how to add even more to Doks. [Extensions →](https://getdoks.org/docs/extensions/add-google-fonts/) -## Communities +### Showcase -- [Netlify Community](https://community.netlify.com/) -- [Hugo Forums](https://discourse.gohugo.io/) +See what others have build with Doks. [Showcase →](https://getdoks.org/showcase/causal-data-science-meeting/) + +## Contributing + +Find out how to contribute to Doks. [Contributing →](https://getdoks.org/docs/contributing/how-to-contribute/) + +## Help + +Get help on Doks. [Help →]({{< ref "how-to-update" >}}) diff --git a/content/docs/prologue/quick-start.md b/content/docs/prologue/quick-start.md new file mode 100644 index 0000000..1ba4825 --- /dev/null +++ b/content/docs/prologue/quick-start.md @@ -0,0 +1,65 @@ +--- +title: "Quick Start" +description: "One page summary of how to start a new Doks project." +lead: "One page summary of how to start a new Doks project." +date: 2020-11-16T13:59:39+01:00 +lastmod: 2020-11-16T13:59:39+01:00 +draft: false +images: [] +menu: + docs: + parent: "prologue" +weight: 110 +toc: true +--- + +## Requirements + +{{< alert icon="👉" text="Node.js is needed to install npm packages and run commands." >}} + +Make sure all dependencies have been installed: + +- [Hugo](https://gohugo.io/getting-started/installing/) >= 0.75.0/extended +- [Node.js](https://nodejs.org/) >= 14.15.0 + +## Start a new Doks project + +Create a new site, change directories, install npm packages, and start development server. + +### Create a new site + +{{< btn-copy text="git clone https://github.com/h-enk/doks.git my-doks-site" >}} + +```bash +git clone https://github.com/h-enk/doks.git my-doks-site +``` + +### Change directories + +{{< btn-copy text="cd my-doks-site" >}} + +```bash +cd my-doks-site +``` + +### Install npm packages + +{{< btn-copy text="npm install" >}} + +```bash +npm install +``` + +### Start development server + +{{< btn-copy text="npm run start" >}} + +```bash +npm run start +``` + +Doks will start the Hugo development webserver accessible by default at `http://localhost:1313`. Saved changes will live reload in the browser. + +## Other commands + +Doks comes with commands for common tasks. [Commands →]({{< ref "commands" >}}) diff --git a/layouts/docs/single.html b/layouts/docs/single.html index 59d045a..f326d50 100644 --- a/layouts/docs/single.html +++ b/layouts/docs/single.html @@ -5,14 +5,22 @@ {{ partial "sidebar/docs-menu.html" . }} + {{ if ne .Params.toc false -}} + {{ end -}} + {{ if .Params.toc -}}
+ {{ else -}} +
+ {{ end -}}

{{ .Title }}

{{ .Params.lead | safeHTML }}

{{ partial "main/headline-hash.html" .Content }} - {{ partial "main/edit-page.html" . }} + {{ if .Site.Params.editPage -}} + {{ partial "main/edit-page.html" . }} + {{ end -}} {{ partial "main/docs-navigation.html" . }}
diff --git a/layouts/index.html b/layouts/index.html index 739f0ac..0ef0313 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -14,41 +14,8 @@ {{ end }} {{ define "sidebar-prefooter" }} - {{ end }} - {{ define "sidebar-footer" }} - {{ end }} diff --git a/layouts/partials/footer/script-footer.html b/layouts/partials/footer/script-footer.html index 0d1f316..61d9baa 100644 --- a/layouts/partials/footer/script-footer.html +++ b/layouts/partials/footer/script-footer.html @@ -2,15 +2,16 @@ {{ $index := $indexTemplate | resources.ExecuteAsTemplate "index.js" . -}} {{ $lazysizes := resources.Get "js/vendor/lazysizes/lazysizes.min.js" -}} {{ $flexsearch := resources.Get "js/vendor/flexsearch/dist/flexsearch.min.js" -}} +{{ $clipboard := resources.Get "js/vendor/clipboard/dist/clipboard.min.js" -}} {{ if eq (hugo.Environment) "development" -}} {{ $app := resources.Get "js/app.js" -}} - {{ $js := slice $lazysizes $flexsearch $app | resources.Concat "main.js" -}} + {{ $js := slice $lazysizes $clipboard $flexsearch $app | resources.Concat "main.js" -}} {{ else -}} {{ $instantPage := resources.Get "js/vendor/instant.page/instantpage.js" | minify -}} {{ $app := resources.Get "js/app.js" | minify -}} - {{ $js := slice $lazysizes $flexsearch $instantPage $app | resources.Concat "main.js" -}} + {{ $js := slice $lazysizes $clipboard $flexsearch $instantPage $app | resources.Concat "main.js" -}} {{ $jsProd := $js | resources.Fingerprint "sha512" -}} {{ $indexProd := $index | resources.Minify | resources.Fingerprint "sha512" -}} diff --git a/layouts/partials/head/head.html b/layouts/partials/head/head.html index 0a3ecb5..727a518 100644 --- a/layouts/partials/head/head.html +++ b/layouts/partials/head/head.html @@ -7,4 +7,4 @@ {{ block "head/seo" . }}{{ partial "head/seo.html" . }}{{ end }} {{ block "head/favicons" . }}{{ partial "head/favicons.html" . }}{{ end }} {{ block "head/script-header" . }}{{ partial "head/script-header.html" . }}{{ end }} - + \ No newline at end of file diff --git a/layouts/shortcodes/btn-copy.html b/layouts/shortcodes/btn-copy.html new file mode 100644 index 0000000..35479e1 --- /dev/null +++ b/layouts/shortcodes/btn-copy.html @@ -0,0 +1 @@ + diff --git a/netlify.toml b/netlify.toml index a3f499b..60e4898 100644 --- a/netlify.toml +++ b/netlify.toml @@ -6,7 +6,6 @@ HUGO_VERSION = "0.78.0" NODE_VERSION = "15.0.1" NPM_VERSION = "7.0.5" - YARN_VERSION = "1.22.5" [context.production] command = "hugo -b $URL --gc --minify && npm run build:functions" diff --git a/package-lock.json b/package-lock.json index 41b4348..3fb8be1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,7 @@ "@fullhuman/postcss-purgecss": "^3.0", "autoprefixer": "^10.0", "bootstrap": "^4.5", + "clipboard": "^2.0.6", "eslint": "^7.14", "flexsearch": "^0.6.32", "instant.page": "^5.1", @@ -2795,6 +2796,17 @@ "node": ">=0.10.0" } }, + "node_modules/clipboard": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.6.tgz", + "integrity": "sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg==", + "dev": true, + "dependencies": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -3658,6 +3670,12 @@ "node": ">=0.10.0" } }, + "node_modules/delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", + "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==", + "dev": true + }, "node_modules/depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -5859,6 +5877,15 @@ "node": ">=0.6.0" } }, + "node_modules/good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", + "dev": true, + "dependencies": { + "delegate": "^3.1.2" + } + }, "node_modules/graceful-fs": { "version": "4.2.4", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", @@ -9849,6 +9876,12 @@ "node": ">=6.0.0" } }, + "node_modules/select": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", + "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=", + "dev": true + }, "node_modules/semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -11486,6 +11519,12 @@ "node": ">=0.6.0" } }, + "node_modules/tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", + "dev": true + }, "node_modules/to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", @@ -14765,6 +14804,17 @@ } } }, + "clipboard": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.6.tgz", + "integrity": "sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg==", + "dev": true, + "requires": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -15466,6 +15516,12 @@ "isobject": "^3.0.1" } }, + "delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", + "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==", + "dev": true + }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -17233,6 +17289,15 @@ "minimist": "^1.2.5" } }, + "good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", + "dev": true, + "requires": { + "delegate": "^3.1.2" + } + }, "graceful-fs": { "version": "4.2.4", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", @@ -20363,6 +20428,12 @@ "lodash": "^4.17.4" } }, + "select": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", + "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=", + "dev": true + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -21697,6 +21768,12 @@ "setimmediate": "^1.0.4" } }, + "tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", + "dev": true + }, "to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", diff --git a/package.json b/package.json index cde588c..03f474a 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "defaults" ], "scripts": { + "init": "rimraf .git && git init -b main", "start": "hugo server", "build": "hugo --gc --minify && npm run build:functions", "build:functions": "netlify-lambda build assets/lambda", @@ -25,6 +26,7 @@ "@fullhuman/postcss-purgecss": "^3.0", "autoprefixer": "^10.0", "bootstrap": "^4.5", + "clipboard": "^2.0.6", "eslint": "^7.14", "flexsearch": "^0.6.32", "instant.page": "^5.1", @@ -38,6 +40,5 @@ "standard-version": "^9.0.0", "stylelint": "^13.8", "stylelint-config-standard": "^20.0" - }, - "dependencies": {} + } }