From dce7da858ac30c2d589195552465b8d491942636 Mon Sep 17 00:00:00 2001 From: James Fenn Date: Wed, 9 Dec 2020 19:40:49 -0500 Subject: [PATCH] huge changes to project pages --- .gitignore | 1 + _data/git.js | 11 +- _data/meta.json | 45 +-- _includes/header.liquid | 21 -- _includes/layouts/base.liquid | 1 - _includes/layouts/blog.liquid | 2 +- _includes/layouts/project.liquid | 88 ++++++ .../images/ic/{mastodon.svg => fediverse.svg} | 0 assets/images/ic/markdown-mark.png | Bin 0 -> 9770 bytes package.json | 2 +- pages/community.md | 2 +- pages/contact.md | 27 +- pages/index.html | 19 +- pages/licenses.md | 279 ++++++++++++++++++ pages/links.njk | 23 ++ pages/projects/index.html | 4 +- pages/projects/project.html | 2 +- pages/projects/wiki.html | 48 +-- projects/alarmio.html | 8 + projects/attribouter.html | 60 ++++ projects/colorpickerdialog.html | 6 + projects/crasher.html | 6 + projects/declarativ.html | 8 + projects/dot.css.html | 8 + projects/exceptionaltraveler.html | 8 + projects/git-rest-wrapper.html | 42 +++ projects/ktordocs.html | 43 +++ projects/metronome.html | 8 + projects/scrurl.html | 6 + projects/status.html | 6 + 30 files changed, 681 insertions(+), 103 deletions(-) delete mode 100644 _includes/header.liquid create mode 100644 _includes/layouts/project.liquid rename assets/images/ic/{mastodon.svg => fediverse.svg} (100%) create mode 100644 assets/images/ic/markdown-mark.png create mode 100644 pages/licenses.md create mode 100644 pages/links.njk create mode 100644 projects/alarmio.html create mode 100644 projects/attribouter.html create mode 100644 projects/colorpickerdialog.html create mode 100644 projects/crasher.html create mode 100644 projects/declarativ.html create mode 100644 projects/dot.css.html create mode 100644 projects/exceptionaltraveler.html create mode 100644 projects/git-rest-wrapper.html create mode 100644 projects/ktordocs.html create mode 100644 projects/metronome.html create mode 100644 projects/scrurl.html create mode 100644 projects/status.html diff --git a/.gitignore b/.gitignore index 46283f4..feddc37 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .vscode/ +.node-persist/ node_modules/ _site/ assets/css/styles.css diff --git a/_data/git.js b/_data/git.js index 7fa4dcf..7235587 100644 --- a/_data/git.js +++ b/_data/git.js @@ -5,11 +5,14 @@ const _fetch = require('node-fetch'); const _jsyaml = require('js-yaml'); const { Client } = require('git-rest-wrapper'); -const _gitrest = new Client(/*{ +const _gitrest = new Client({ + cache: { + type: "disk" + }, tokens: { - 'github.com': process.env.GITHUB_TOKEN + "api.github.com": process.env.GITHUB_TOKEN } -}*/); +}); const _site = require("./meta.json"); const _projects = []; @@ -34,7 +37,7 @@ async function getRepoProject(repo) { // extract title from readme (if possible) let titleRegex = (/^[\w-., ]+/g).exec(readme); let title = id; - if (titleRegex) { + if (titleRegex && readme.includes("=====")) { title = titleRegex[0].trim(); } diff --git a/_data/meta.json b/_data/meta.json index 7af2af5..e29e21f 100644 --- a/_data/meta.json +++ b/_data/meta.json @@ -6,37 +6,48 @@ "links": { "twitter": "https://twitter.com/fennifith", "fediverse": "https://is.a.horrific.dev/@james", + "instagram": "https://www.instagram.com/fennifith", + "twitch": "https://twitch.tv/fennifith", + "keybase": "https://keybase.io/jafenn", "googleplay": "https://play.google.com/store/apps/dev?id=5937321955284727208", "telegram": "https://t.me/fennifith", - "linkedin": "https://www.linkedin.com/in/james-fenn-3390b8167/" + "linkedin": "https://www.linkedin.com/in/james-fenn-3390b8167/", + "github": "https://github.com/fennifith", + "git": "https://code.horrific.dev/james", + "bintray": "https://bintray.com/18jafenn90", + "liberapay": "https://liberapay.com/fennifith/", + "paypal": "https://paypal.me/fennifith" }, "categories": [{ + "id": "project-app", "title": "Apps & Websites", - "desc": "Published tools or products for a wide audience.", - "repos": [ - "metronome" - ] + "desc": "Published tools and products for a wide audience." },{ + "id": "project-tool", "title": "Tools & Libraries", - "desc": "Smaller projects used in other work, intended for myself and other developers.", - "repos": [ - "attribouter", - "dot.css", - "git-rest-wrapper" - ] + "desc": "Smaller projects used in other work, intended for myself and other developers." },{ + "id": "project-fun", "title": "Just for Fun", - "desc": "Weird tools or programs that have no real purpose.", - "repos": [] + "desc": "Weird tools or programs that have no real purpose." },{ + "id": "project-deprecated", "title": "Deprecated", - "desc": "Things I've stopped working on or no longer maintain.", - "repos": [] + "desc": "Things I've stopped working on or no longer maintain." }], "repos": [ "gitea@code.horrific.dev:james/metronome", - "github@github.com:fennifith/Attribouter", "gitea@code.horrific.dev:james/dot.css", - "gitea@code.horrific.dev:james/git-rest-wrapper" + "gitea@code.horrific.dev:james/git-rest-wrapper", + "gitea@code.horrific.dev:james/ktordocs", + "github@github.com:fennifith/Attribouter", + "github@github.com:fennifith/Alarmio", + "github@github.com:fennifith/declarativ", + "github@github.com:fennifith/mdjavadoc", + "github@github.com:fennifith/ExceptionalTraveler", + "github@github.com:fennifith/Status", + "github@github.com:fennifith/Scrurl", + "github@github.com:fennifith/ColorPickerDialog", + "github@github.com:fennifith/Crasher" ] } diff --git a/_includes/header.liquid b/_includes/header.liquid deleted file mode 100644 index 6ce4a75..0000000 --- a/_includes/header.liquid +++ /dev/null @@ -1,21 +0,0 @@ - \ No newline at end of file diff --git a/_includes/layouts/base.liquid b/_includes/layouts/base.liquid index b7cf879..271d179 100644 --- a/_includes/layouts/base.liquid +++ b/_includes/layouts/base.liquid @@ -2,7 +2,6 @@ layout: default --- -{% include header.liquid %} {% include nav.liquid %} {{ content | safe }} diff --git a/_includes/layouts/blog.liquid b/_includes/layouts/blog.liquid index 12d8080..3b00956 100644 --- a/_includes/layouts/blog.liquid +++ b/_includes/layouts/blog.liquid @@ -1,7 +1,7 @@ --- layout: base --- -
+

{{ title }}

diff --git a/_includes/layouts/project.liquid b/_includes/layouts/project.liquid new file mode 100644 index 0000000..7f75f84 --- /dev/null +++ b/_includes/layouts/project.liquid @@ -0,0 +1,88 @@ +--- +layout: base +--- + +{% assign project = git.projects | where: 'id', page.fileSlug | first %} + +

+
+

{{ project.title }}

+

{{ project.repo.description }}

+
+ + +
+
+
+
+
+
+ + people + Contributing + +
+ Interested in working with this project or volunteering to help? Get started here! +
+
+
+
+
+ + email + Contact Me + +
+ Have any questions or concerns? Don't hesitate to reach out! +
+
+
+
+
+
+ +{% if project.hasWiki %} +
+
+
+
+ book +
+
+
Looking for documentation?
+

Find helpful information about this project - tutorials, guides, and more!

+ Read the Wiki chevron_right +
+
+
+
+{% endif %} + +{% assign sections = content | split: '
' %} +{% for section in sections %} +
+
+ {{ section | safe }} +
+
+{% endfor %} diff --git a/assets/images/ic/mastodon.svg b/assets/images/ic/fediverse.svg similarity index 100% rename from assets/images/ic/mastodon.svg rename to assets/images/ic/fediverse.svg diff --git a/assets/images/ic/markdown-mark.png b/assets/images/ic/markdown-mark.png new file mode 100644 index 0000000000000000000000000000000000000000..da4bb71234f38840a6931cc74fddeba0a4c9fdda GIT binary patch literal 9770 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 - - Twitter - - - - - Fediverse - - - - - LinkedIn - - - - - Telegram +{% assign links = "Twitter Fediverse LinkedIn Telegram" | split: " " %} +{% for linkName in links %} +{% assign link = linkName | downcase %} + + + {{ linkName }} +{% endfor %}
diff --git a/pages/index.html b/pages/index.html index fcf0385..b63c3a9 100644 --- a/pages/index.html +++ b/pages/index.html @@ -20,21 +20,12 @@ permalink: / my resume here, along with a few ways to contact me.

- - - - - - - - - - - - - - + {% assign links = "twitter fediverse github linkedin" | split: " " %} + {% for link in links %} + + + {% endfor %}
diff --git a/pages/licenses.md b/pages/licenses.md new file mode 100644 index 0000000..3ec0748 --- /dev/null +++ b/pages/licenses.md @@ -0,0 +1,279 @@ +--- +layout: page +permalink: /licenses/ +--- + +
+ +# Open Source Licenses + +This page lists all (I hope) of the open source projects that are used to create, update, and maintain my personal site. + +## [11ty](https://11ty.dev/) + +``` +MIT License + +Copyright (c) 2020 Zach Leatherman @zachleat + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +``` + +## [NodeJS](https://nodejs.org/) + +``` +Copyright Node.js contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +``` + +## [then-request](https://github.com/then/then-request) + +A request library that returns promises. + +``` +Copyright (c) 2014 Forbes Lindesay + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +``` + +## [cheerio](https://github.com/cheeriojs/cheerio) + +A fast, flexible, and lean implementation of core jQuery designed specifically for the server. + +``` +MIT License + +Copyright (c) 2016 Matt Mueller + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +``` + +## [instant.page](https://github.com/instantpage/instant.page) + +A small library that preloads linked pages before a user clicks on them. + +``` +MIT License + +Copyright (C) 2019 Alexandre Dieulot + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +``` + +## [lozad.js](https://github.com/ApoorvSaxena/lozad.js) + +Highly performant, light and configurable lazy loader in pure JS with no dependencies for images, iframes and more, using the IntersectionObserver API. + +``` + +The MIT License (MIT) + +Copyright (c) 2017 Apoorv Saxena + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +``` + +## [git-clone](https://github.com/jaz303/git-clone) + +A NodeJS interface to clone a git repository via shell commands. + +``` +Copyright 2014 Jason Frame + +Permission to use, copy, modify, and/or distribute this software for any purpose +with or without fee is hereby granted, provided that the above copyright notice +and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD +TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN +NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL +DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER +IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +``` + +## [mdjavadoc](https://github.com/TheAndroidMaster/mdjavadoc) + +A script that generates markdown javadocs primarily for use in Jekyll and GitHub Pages. + +``` +MIT License + +Copyright (c) 2018 James Fenn + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +``` + +## [js-yaml](https://github.com/nodeca/js-yaml) + +An implementation of [YAML](http://yaml.org/), a human-friendly data serialization language, for JavaScript. + +``` +(The MIT License) + +Copyright (C) 2011-2015 by Vitaly Puzrin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +``` + +## [Highlight.js](https://highlightjs.org/) + +Highlight.js is a syntax highlighter written in JavaScript. It works in the browser as well as on the server. It works with pretty much any markup, doesn’t depend on any framework, and has automatic language detection. + +``` +Copyright (c) 2006, Ivan Sagalaev +All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of highlight.js nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +``` + +
diff --git a/pages/links.njk b/pages/links.njk new file mode 100644 index 0000000..b9bf14d --- /dev/null +++ b/pages/links.njk @@ -0,0 +1,23 @@ +--- +pagination: + data: meta.links + size: 1 +permalink: "links/{{ pagination.items[0] }}.html" +--- + + + + + +Redirecting… + +{% set link = meta.links[pagination.items[0]] %} + + + + + + +Redirecting to {{ link }}. + + diff --git a/pages/projects/index.html b/pages/projects/index.html index 1d9aea0..e3db31f 100644 --- a/pages/projects/index.html +++ b/pages/projects/index.html @@ -24,9 +24,9 @@ permalink: /projects/

{{ category.title }}

{{ category.desc }}

- {% for repo in category.repos %} + {% for pg in collections[category.id] %}
- {% assign project = git.projects | where: 'id', repo | first %} + {% assign project = git.projects | where: 'id', pg.fileSlug | first %} {% include item/project.liquid, project: project %}
{% endfor %} diff --git a/pages/projects/project.html b/pages/projects/project.html index b50a1e4..c503d13 100644 --- a/pages/projects/project.html +++ b/pages/projects/project.html @@ -3,7 +3,7 @@ layout: base pagination: data: git.projects size: 1 -permalink: "projects/{{ pagination.items[0].id }}/index.html" +permalink: "projects2/{{ pagination.items[0].id }}/index.html" --- {% for project in pagination.items %} diff --git a/pages/projects/wiki.html b/pages/projects/wiki.html index eba4057..7383454 100644 --- a/pages/projects/wiki.html +++ b/pages/projects/wiki.html @@ -1,31 +1,37 @@ --- -layout: page +layout: base pagination: data: git.wikis size: 1 permalink: "projects/{{ pagination.items[0].id }}/wiki/{{ pagination.items[0].page }}.html" --- -{% for wiki in pagination.items %} - - home - - - chevron_right - {{ wiki.project.title }} - - - chevron_right - Wiki - + -{% if wiki.page == "index" %} -

{{ wiki.project.title }} Wiki

-{% else %} -

{{ wiki.title }}

-{% endif %} +
+ {% if wiki.page == "index" %} +

{{ wiki.project.title }} Wiki

+ {% else %} +

{{ wiki.title }}

+ {% endif %} -
- {{ wiki.content | markdownify }} +
+ {{ wiki.content | markdownify }} +
+ {% endfor %}
-{% endfor %} diff --git a/projects/alarmio.html b/projects/alarmio.html new file mode 100644 index 0000000..0f0988d --- /dev/null +++ b/projects/alarmio.html @@ -0,0 +1,8 @@ +--- +layout: layouts/project +tags: project-app +--- + +Hello + + diff --git a/projects/attribouter.html b/projects/attribouter.html new file mode 100644 index 0000000..a3cb75f --- /dev/null +++ b/projects/attribouter.html @@ -0,0 +1,60 @@ +--- +layout: layouts/project +tags: project-tool +--- + +
+
+ +
+
+ +
+
+

Contributor Profiles

+

Automatically fetches profile information to provide the most recent content - powered by git-rest-wrapper.

+
+
+ +
+ +
+
+ +
+
+ +
+
+

License Information

+

Uses the GitHub Licenses API to provide complete license information about the application's dependencies.

+
+
+ +
+ +
+
+ +
+
+ +
+
+

Night Theme

+

Adapts to the user's Dark Mode settings to present a consistent experience across the device.

+
+
+ +
+ +
+
+ +
+
+

Special thanks to Kevin Aguilar and 221 Pixels for helping improve the libary's design/interface and creating the awesome logo!

+
+
+ + diff --git a/projects/colorpickerdialog.html b/projects/colorpickerdialog.html new file mode 100644 index 0000000..bb3b7bb --- /dev/null +++ b/projects/colorpickerdialog.html @@ -0,0 +1,6 @@ +--- +layout: layouts/project +tags: project-tool +--- + +Hello diff --git a/projects/crasher.html b/projects/crasher.html new file mode 100644 index 0000000..bb3b7bb --- /dev/null +++ b/projects/crasher.html @@ -0,0 +1,6 @@ +--- +layout: layouts/project +tags: project-tool +--- + +Hello diff --git a/projects/declarativ.html b/projects/declarativ.html new file mode 100644 index 0000000..6567389 --- /dev/null +++ b/projects/declarativ.html @@ -0,0 +1,8 @@ +--- +layout: layouts/project +tags: project-fun +--- + +Hello + + diff --git a/projects/dot.css.html b/projects/dot.css.html new file mode 100644 index 0000000..a743ad7 --- /dev/null +++ b/projects/dot.css.html @@ -0,0 +1,8 @@ +--- +layout: layouts/project +tags: project-tool +--- + +Hello + + diff --git a/projects/exceptionaltraveler.html b/projects/exceptionaltraveler.html new file mode 100644 index 0000000..6567389 --- /dev/null +++ b/projects/exceptionaltraveler.html @@ -0,0 +1,8 @@ +--- +layout: layouts/project +tags: project-fun +--- + +Hello + + diff --git a/projects/git-rest-wrapper.html b/projects/git-rest-wrapper.html new file mode 100644 index 0000000..7d868c4 --- /dev/null +++ b/projects/git-rest-wrapper.html @@ -0,0 +1,42 @@ +--- +layout: layouts/project +tags: project-tool +--- + +
+ devices +

Multi-platform support

+

Written in Kotlin, the library has seamless compatibility with JavaScript, NodeJS, JVM, and Android platforms.

+
+ +
+ +
+
+
{
+    "id": "user",
+	"name": "User Human",
+	"url": "https://code.horrific.dev/user",
+	"avatarUrl": "https://example.com/photo.png",
+	"websiteUrl": "https://example.com"
+}
+
+
+

Consistent data representation

+

Information from multiple git hosting providers is standardized as a single, consistent data model.

+
+
+ +
+ +
+
+ offline_bolt +
+
+

Built-in caching & fallback behavior

+

Provides extensible in-memory and "disk" / localStorage-based caching implementations.

+
+
+ + diff --git a/projects/ktordocs.html b/projects/ktordocs.html new file mode 100644 index 0000000..c0868a2 --- /dev/null +++ b/projects/ktordocs.html @@ -0,0 +1,43 @@ +--- +layout: layouts/project +tags: project-tool +--- + +
+ +

Automated Documentation

+

Provide comprehensive API documentation with minimal effort!

+
+ +
+ +
+
+
get("/api/v1/example") {
+    docs {
+        title = "Hello World"
+        desc = "Says hello to the world."
+    }
+
+    call.respondText("Hello world!")
+}
+
+
+

Minimal API

+

Inline documentation helps to explain your code and ensure consistency with the implementation.

+
+
+ +
+ +
+
+ +
+
+

Markdown Support

+

Uses the commonmark-java implementation to render any markdown syntax.

+
+
+ + diff --git a/projects/metronome.html b/projects/metronome.html new file mode 100644 index 0000000..0f0988d --- /dev/null +++ b/projects/metronome.html @@ -0,0 +1,8 @@ +--- +layout: layouts/project +tags: project-app +--- + +Hello + + diff --git a/projects/scrurl.html b/projects/scrurl.html new file mode 100644 index 0000000..162d124 --- /dev/null +++ b/projects/scrurl.html @@ -0,0 +1,6 @@ +--- +layout: layouts/project +tags: project-fun +--- + +Hello diff --git a/projects/status.html b/projects/status.html new file mode 100644 index 0000000..0f2e1bc --- /dev/null +++ b/projects/status.html @@ -0,0 +1,6 @@ +--- +layout: layouts/project +tags: project-deprecated +--- + +Hello -- GitLab