forked from vikunja/theme
feat: add prettier
This commit is contained in:
parent
0eb40547ec
commit
6f3c075669
5
.prettierignore
Normal file
5
.prettierignore
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
.idea/
|
||||||
|
node_modules/
|
||||||
|
static/css/*.css
|
||||||
|
dist/
|
||||||
|
yarn-error.log
|
15
.prettierrc
Normal file
15
.prettierrc
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
"tabWidth": 4,
|
||||||
|
"useTabs": true,
|
||||||
|
"goTemplateBracketSpacing": true,
|
||||||
|
"printWidth": 100,
|
||||||
|
"singleQuote": true,
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"files": ["*.html"],
|
||||||
|
"options": {
|
||||||
|
"parser": "go-template"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
|
@ -1,13 +1,22 @@
|
||||||
{{ partial "header.html" . }}
|
{{ define "main" }}
|
||||||
|
<section class="flex h-screen w-full flex-col items-center justify-center bg-yellow-200">
|
||||||
<section class="w-full h-screen bg-yellow-200 flex items-center justify-center flex-col">
|
<h1 class="pb-8 font-title text-5xl font-bold">Page not found</h1>
|
||||||
<h1 class="font-title pb-8 text-5xl font-bold">
|
|
||||||
Page not found
|
|
||||||
</h1>
|
|
||||||
<a href="/" class="flex items-center">
|
<a href="/" class="flex items-center">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 mr-2" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
<svg
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 19l-7-7m0 0l7-7m-7 7h18" />
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
class="mr-2 h-6 w-6"
|
||||||
|
fill="none"
|
||||||
|
viewBox="0 0 24 24"
|
||||||
|
stroke="currentColor"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
stroke-linecap="round"
|
||||||
|
stroke-linejoin="round"
|
||||||
|
stroke-width="2"
|
||||||
|
d="M10 19l-7-7m0 0l7-7m-7 7h18"
|
||||||
|
/>
|
||||||
</svg>
|
</svg>
|
||||||
Back to home page
|
Back to home page
|
||||||
</a>
|
</a>
|
||||||
</section>
|
</section>
|
||||||
|
{{ end }}
|
||||||
|
|
16
layouts/_default/baseof.html
Normal file
16
layouts/_default/baseof.html
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
{{ partial "header.html" . }}
|
||||||
|
</head>
|
||||||
|
<body class="bg-gray-50 text-gray-900 antialiased">
|
||||||
|
{{ partial "navbar.html" . }}
|
||||||
|
|
||||||
|
{{ block "main" . }}
|
||||||
|
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ partial "footer.html" . }}
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -1,14 +1,14 @@
|
||||||
{{ partial "header.html" . }}
|
{{ define "main" }}
|
||||||
|
<div class="mx-auto flex max-w-screen-xl flex-col lg:flex-row lg:pt-8">
|
||||||
<div class="max-w-screen-xl flex mx-auto lg:pt-8 flex-col lg:flex-row">
|
<div class="w-full lg:w-1/4">{{ partial "menu" . }}</div>
|
||||||
<div class="w-full lg:w-1/4">
|
<article class="w-full p-4 pt-6 lg:w-3/4 lg:pt-2">
|
||||||
{{ partial "menu" . }}
|
<div
|
||||||
</div>
|
class="prose max-w-none prose-h1:font-title prose-h1:font-bold prose-a:text-primary prose-a:no-underline hover:prose-a:underline prose-img:rounded-sm"
|
||||||
<article class="w-full lg:w-3/4 p-4 pt-6 lg:pt-2">
|
>
|
||||||
<div class="max-w-none prose prose-a:text-primary prose-a:no-underline hover:prose-a:underline prose-h1:font-title prose-h1:font-bold prose-img:rounded-sm">
|
|
||||||
{{ partial "headline-hash.html" . }}
|
{{ partial "headline-hash.html" . }}
|
||||||
|
{{ range .Pages.GroupBy
|
||||||
{{ range .Pages.GroupBy "Section" }}
|
"Section"
|
||||||
|
}}
|
||||||
<h3>{{ .Key | title }}</h3>
|
<h3>{{ .Key | title }}</h3>
|
||||||
<ul>
|
<ul>
|
||||||
{{ range .Pages }}
|
{{ range .Pages }}
|
||||||
|
@ -21,5 +21,4 @@
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
|
{{ end }}
|
||||||
{{ partial "footer.html" . }}
|
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
{{ partial "header.html" . }}
|
{{ define "main" }}
|
||||||
|
<article class="mx-auto mt-4 max-w-screen-xl px-4 lg:px-0">
|
||||||
<article class="max-w-screen-xl mx-auto mt-4 px-4 lg:px-0">
|
|
||||||
{{ partial "prose.html" .Content }}
|
{{ partial "prose.html" .Content }}
|
||||||
</article>
|
</article>
|
||||||
|
{{ end }}
|
||||||
{{ partial "footer.html" . }}
|
|
||||||
|
|
|
@ -1,12 +1,8 @@
|
||||||
{{ partial "header.html" . }}
|
{{ define "main" }}
|
||||||
|
<div class="mx-auto flex max-w-screen-xl flex-col lg:flex-row lg:pt-8">
|
||||||
<div class="max-w-screen-xl flex mx-auto lg:pt-8 flex-col lg:flex-row">
|
<div class="w-full lg:w-1/4">{{ partial "menu" . }}</div>
|
||||||
<div class="w-full lg:w-1/4">
|
<article class="w-full p-4 pt-6 lg:w-3/4 lg:pt-2">
|
||||||
{{ partial "menu" . }}
|
|
||||||
</div>
|
|
||||||
<article class="w-full lg:w-3/4 p-4 pt-6 lg:pt-2">
|
|
||||||
{{ partial "prose.html" .Content }}
|
{{ partial "prose.html" .Content }}
|
||||||
</article>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
|
{{ end }}
|
||||||
{{ partial "footer.html" . }}
|
|
||||||
|
|
|
@ -1,41 +1,55 @@
|
||||||
{{ partial "header.html" . }}
|
{{ define "main" }}
|
||||||
|
<section
|
||||||
<section class="w-full min-h-screen bg-hero-llama bg-cover flex items-center justify-center flex-col text-white font-title font-bold text-center pb-8">
|
class="flex min-h-screen w-full flex-col items-center justify-center bg-hero-llama bg-cover pb-8 text-center font-title font-bold text-white"
|
||||||
|
>
|
||||||
<div class="mt-48 mb-32">
|
<div class="mt-48 mb-32">
|
||||||
{{ if .Params.heading }}
|
{{ if .Params.heading }}
|
||||||
{{ if .Params.heading.heading }}
|
{{ if .Params.heading.heading }}
|
||||||
<h1 class="text-5xl mb-4">{{.Params.heading.heading | markdownify}}</h1>
|
<h1 class="mb-4 text-5xl">
|
||||||
|
{{ .Params.heading.heading | markdownify }}
|
||||||
|
</h1>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if .Params.heading.content }}
|
{{ if .Params.heading.content }}
|
||||||
<h3 class="text-3xl mb-6">{{.Params.heading.content | markdownify}}</h3>
|
<h3 class="mb-6 text-3xl">
|
||||||
|
{{ .Params.heading.content | markdownify }}
|
||||||
|
</h3>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if .Params.heading.subtitle }}
|
{{ if .Params.heading.subtitle }}
|
||||||
<h4 class="text-xl">{{.Params.heading.subtitle | markdownify}}</h4>
|
<h4 class="text-xl">
|
||||||
|
{{ .Params.heading.subtitle | markdownify }}
|
||||||
|
</h4>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if .Params.heading.subsubtitle }}
|
{{ if .Params.heading.subsubtitle }}
|
||||||
<h4 class="text-lg">{{.Params.heading.subsubtitle | markdownify}}</h4>
|
<h4 class="text-lg">
|
||||||
{{end}}
|
{{ .Params.heading.subsubtitle | markdownify }}
|
||||||
|
</h4>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<div class="flex py-4 space-x-2 justify-center">
|
{{ end }}
|
||||||
<a href="https://try.vikunja.io"
|
|
||||||
class="px-4 py-2 border border-transparent shadow text-xl font-medium rounded-md text-white bg-primary hover:bg-primary-darker cursor-pointer">
|
|
||||||
|
<div class="flex justify-center space-x-2 py-4">
|
||||||
|
<a
|
||||||
|
href="https://try.vikunja.io"
|
||||||
|
class="cursor-pointer rounded-md border border-transparent bg-primary px-4 py-2 text-xl font-medium text-white shadow hover:bg-primary-darker"
|
||||||
|
>
|
||||||
Try it
|
Try it
|
||||||
</a>
|
</a>
|
||||||
<a href="/features"
|
<a
|
||||||
class="px-4 py-2 border border-transparent shadow text-xl font-medium rounded-md text-white bg-primary hover:bg-primary-darker cursor-pointer">
|
href="/features"
|
||||||
|
class="cursor-pointer rounded-md border border-transparent bg-primary px-4 py-2 text-xl font-medium text-white shadow hover:bg-primary-darker"
|
||||||
|
>
|
||||||
Features
|
Features
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="max-w-screen-xl rounded-sm overflow-hidden shadow-lg">
|
<div class="max-w-screen-xl overflow-hidden rounded-sm shadow-lg">
|
||||||
<picture class="object-contain object-top w-full">
|
<picture class="w-full object-contain object-top">
|
||||||
<source srcset="/images/vikunja-task-overview.webp" type="image/webp" />
|
<source srcset="/images/vikunja-task-overview.webp" type="image/webp" />
|
||||||
<source srcset="/images/vikunja-task-overview.png" type="image/png" />
|
<source srcset="/images/vikunja-task-overview.png" type="image/png" />
|
||||||
<img src="/images/vikunja-task-overview.png" alt="" />
|
<img src="/images/vikunja-task-overview.png" alt="" />
|
||||||
</picture>
|
</picture>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
{{ end }}
|
||||||
{{ partial "footer.html" . }}
|
|
||||||
|
|
|
@ -1,109 +1,171 @@
|
||||||
<footer class="mt-12 border-t-2 border-gray-200 py-8 px-4 md:px-0 md:flex text-left text-sm text-gray-800 mx-auto max-w-screen-xl">
|
<footer
|
||||||
<div class="w-full md:w-2/5 flex flex-col">
|
class="mx-auto mt-12 max-w-screen-xl border-t-2 border-gray-200 py-8 px-4 text-left text-sm text-gray-800 md:flex md:px-0"
|
||||||
<img src="{{ .Site.BaseURL }}images/vikunja-logo.svg" alt="{{ .Site.Title }}" class="h-8" width="109"
|
>
|
||||||
height="32"/>
|
<div class="flex w-full flex-col md:w-2/5">
|
||||||
|
<img
|
||||||
|
src="{{ .Site.BaseURL }}images/vikunja-logo.svg"
|
||||||
|
alt="{{ .Site.Title }}"
|
||||||
|
class="h-8"
|
||||||
|
width="109"
|
||||||
|
height="32"
|
||||||
|
/>
|
||||||
<p class="py-4 text-gray-600">
|
<p class="py-4 text-gray-600">
|
||||||
© {{ now.Year }}<br />
|
© {{ now.Year }}<br />
|
||||||
Made with ♥️ and <a href="https://gohugo.io">Hugo</a>.
|
Made with ♥️ and <a href="https://gohugo.io">Hugo</a>.
|
||||||
</p>
|
</p>
|
||||||
<a href="https://twitter.com/vikunjaio" target="_blank" rel="noopener" class="hover:underline pb-2 flex align-middle">
|
<a
|
||||||
<svg class="w-4 h-4" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 112.197 112.197" style="enable-background:new 0 0 112.197 112.197;" xml:space="preserve"><g><circle style="fill:#55ACEE;" cx="56.099" cy="56.098" r="56.098"/><g><path style="fill:#F1F2F2;" d="M90.461,40.316c-2.404,1.066-4.99,1.787-7.702,2.109c2.769-1.659,4.894-4.284,5.897-7.417 c-2.591,1.537-5.462,2.652-8.515,3.253c-2.446-2.605-5.931-4.233-9.79-4.233c-7.404,0-13.409,6.005-13.409,13.409 c0,1.051,0.119,2.074,0.349,3.056c-11.144-0.559-21.025-5.897-27.639-14.012c-1.154,1.98-1.816,4.285-1.816,6.742 c0,4.651,2.369,8.757,5.965,11.161c-2.197-0.069-4.266-0.672-6.073-1.679c-0.001,0.057-0.001,0.114-0.001,0.17 c0,6.497,4.624,11.916,10.757,13.147c-1.124,0.308-2.311,0.471-3.532,0.471c-0.866,0-1.705-0.083-2.523-0.239 c1.706,5.326,6.657,9.203,12.526,9.312c-4.59,3.597-10.371,5.74-16.655,5.74c-1.08,0-2.15-0.063-3.197-0.188 c5.931,3.806,12.981,6.025,20.553,6.025c24.664,0,38.152-20.432,38.152-38.153c0-0.581-0.013-1.16-0.039-1.734 C86.391,45.366,88.664,43.005,90.461,40.316L90.461,40.316z"/></g></g></svg>
|
href="https://twitter.com/vikunjaio"
|
||||||
<span class="ml-1">
|
target="_blank"
|
||||||
Follow Vikunja on Twitter
|
rel="noopener"
|
||||||
</span>
|
class="flex pb-2 align-middle hover:underline"
|
||||||
|
>
|
||||||
|
<svg
|
||||||
|
class="h-4 w-4"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
|
viewBox="0 0 112.197 112.197"
|
||||||
|
style="enable-background:new 0 0 112.197 112.197;"
|
||||||
|
xml:space="preserve"
|
||||||
|
>
|
||||||
|
<g>
|
||||||
|
<circle style="fill:#55ACEE;" cx="56.099" cy="56.098" r="56.098" />
|
||||||
|
<g>
|
||||||
|
<path
|
||||||
|
style="fill:#F1F2F2;"
|
||||||
|
d="M90.461,40.316c-2.404,1.066-4.99,1.787-7.702,2.109c2.769-1.659,4.894-4.284,5.897-7.417 c-2.591,1.537-5.462,2.652-8.515,3.253c-2.446-2.605-5.931-4.233-9.79-4.233c-7.404,0-13.409,6.005-13.409,13.409 c0,1.051,0.119,2.074,0.349,3.056c-11.144-0.559-21.025-5.897-27.639-14.012c-1.154,1.98-1.816,4.285-1.816,6.742 c0,4.651,2.369,8.757,5.965,11.161c-2.197-0.069-4.266-0.672-6.073-1.679c-0.001,0.057-0.001,0.114-0.001,0.17 c0,6.497,4.624,11.916,10.757,13.147c-1.124,0.308-2.311,0.471-3.532,0.471c-0.866,0-1.705-0.083-2.523-0.239 c1.706,5.326,6.657,9.203,12.526,9.312c-4.59,3.597-10.371,5.74-16.655,5.74c-1.08,0-2.15-0.063-3.197-0.188 c5.931,3.806,12.981,6.025,20.553,6.025c24.664,0,38.152-20.432,38.152-38.153c0-0.581-0.013-1.16-0.039-1.734 C86.391,45.366,88.664,43.005,90.461,40.316L90.461,40.316z"
|
||||||
|
/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<span class="ml-1"> Follow Vikunja on Twitter </span>
|
||||||
</a>
|
</a>
|
||||||
<a href="https://matrix.to/#/#vikunja:matrix.org">
|
<a href="https://matrix.to/#/#vikunja:matrix.org">
|
||||||
<img src="https://img.shields.io/badge/chat-on%20matrix.org-brightgreen" alt="Chat on matrix.org"/>
|
<img
|
||||||
|
src="https://img.shields.io/badge/chat-on%20matrix.org-brightgreen"
|
||||||
|
alt="Chat on matrix.org"
|
||||||
|
/>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<p class="mt-6 font-title text-base font-bold">
|
<p class="mt-6 font-title text-base font-bold">Subscribe to our newsletter</p>
|
||||||
Subscribe to our newsletter
|
|
||||||
</p>
|
|
||||||
<p class="mt-2">
|
<p class="mt-2">
|
||||||
We'll email you about releases and news about Vikunja.
|
We'll email you about releases and news about Vikunja. Low traffic. Unsubscribe any
|
||||||
Low traffic. Unsubscribe any time.
|
time.
|
||||||
</p>
|
</p>
|
||||||
<form method="post" action="https://newsletter.kolaente.de/subscription/form" class="listmonk-form">
|
<form
|
||||||
<input type="text" name="email" placeholder="E-mail"
|
method="post"
|
||||||
|
action="https://newsletter.kolaente.de/subscription/form"
|
||||||
|
class="listmonk-form"
|
||||||
|
>
|
||||||
|
<input
|
||||||
|
type="text"
|
||||||
|
name="email"
|
||||||
|
placeholder="E-mail"
|
||||||
class="mt-2 block w-full rounded-md border-gray-300 shadow-sm focus:border-primary focus:ring focus:ring-primary-lighter focus:ring-opacity-50"
|
class="mt-2 block w-full rounded-md border-gray-300 shadow-sm focus:border-primary focus:ring focus:ring-primary-lighter focus:ring-opacity-50"
|
||||||
required/>
|
required
|
||||||
|
/>
|
||||||
|
|
||||||
<input id="f0bc9" type="hidden" name="l" value="f0bc9ec2-56a4-48c8-baad-7a31b137484e" />
|
<input id="f0bc9" type="hidden" name="l" value="f0bc9ec2-56a4-48c8-baad-7a31b137484e" />
|
||||||
|
|
||||||
<input type="submit" value="Subscribe"
|
<input
|
||||||
class="mt-4 px-4 py-2 text-base font-medium rounded-md text-white bg-primary hover:bg-primary-darker cursor-pointer"/>
|
type="submit"
|
||||||
|
value="Subscribe"
|
||||||
|
class="mt-4 cursor-pointer rounded-md bg-primary px-4 py-2 text-base font-medium text-white hover:bg-primary-darker"
|
||||||
|
/>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="w-full md:w-1/5 mt-4 md:mt-0 flex flex-col">
|
<div class="mt-4 flex w-full flex-col md:mt-0 md:w-1/5">
|
||||||
<h3 class="font-title font-bold text-base mb-4 md:mb-6">Legal</h3>
|
<h3 class="mb-4 font-title text-base font-bold md:mb-6">Legal</h3>
|
||||||
<a href="/privacy" class="hover:underline pb-2">Privacy Policy</a>
|
<a href="/privacy" class="pb-2 hover:underline">Privacy Policy</a>
|
||||||
<a href="/imprint" class="hover:underline pb-2">Imprint</a>
|
<a href="/imprint" class="pb-2 hover:underline">Imprint</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="w-full md:w-1/5 mt-4 md:mt-0 flex flex-col">
|
<div class="mt-4 flex w-full flex-col md:mt-0 md:w-1/5">
|
||||||
<h3 class="font-title font-bold text-base mb-4 md:mb-6">Support Us</h3>
|
<h3 class="mb-4 font-title text-base font-bold md:mb-6">Support Us</h3>
|
||||||
<a href="https://www.buymeacoffee.com/kolaente" class="hover:underline pb-2 flex align-middle" target="_blank">
|
<a
|
||||||
<img src="https://cdn.buymeacoffee.com/buttons/bmc-new-btn-logo.svg" alt="Buy me a coffee"
|
href="https://www.buymeacoffee.com/kolaente"
|
||||||
class="w-3 mr-1"/>
|
class="flex pb-2 align-middle hover:underline"
|
||||||
<span>
|
target="_blank"
|
||||||
Buy Me a Coffee
|
>
|
||||||
</span>
|
<img
|
||||||
|
src="https://cdn.buymeacoffee.com/buttons/bmc-new-btn-logo.svg"
|
||||||
|
alt="Buy me a coffee"
|
||||||
|
class="mr-1 w-3"
|
||||||
|
/>
|
||||||
|
<span> Buy Me a Coffee </span>
|
||||||
</a>
|
</a>
|
||||||
<a href="https://github.com/sponsors/kolaente/button" class="hover:underline pb-2 flex align-middle"
|
<a
|
||||||
target="_blank">
|
href="https://github.com/sponsors/kolaente/button"
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-1" fill="none" viewBox="0 0 24 24"
|
class="flex pb-2 align-middle hover:underline"
|
||||||
stroke="currentColor">
|
target="_blank"
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
>
|
||||||
d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"/>
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
class="mr-1 h-4 w-4"
|
||||||
|
fill="none"
|
||||||
|
viewBox="0 0 24 24"
|
||||||
|
stroke="currentColor"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
stroke-linecap="round"
|
||||||
|
stroke-linejoin="round"
|
||||||
|
stroke-width="2"
|
||||||
|
d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"
|
||||||
|
/>
|
||||||
</svg>
|
</svg>
|
||||||
<span>
|
<span> Sponsor on Github </span>
|
||||||
Sponsor on Github
|
|
||||||
</span>
|
|
||||||
</a>
|
</a>
|
||||||
<a href="https://opencollective.com/vikunja" class="hover:underline pb-2" target="_blank">
|
<a href="https://opencollective.com/vikunja" class="pb-2 hover:underline" target="_blank">
|
||||||
Sponsor on Opencollective
|
Sponsor on Opencollective
|
||||||
</a>
|
</a>
|
||||||
<a href="https://vikunja.cloud/stickers?utm_source=io&utm_medium=io&utm_campaign=footer"
|
<a
|
||||||
class="hover:underline pb-2">
|
href="https://vikunja.cloud/stickers?utm_source=io&utm_medium=io&utm_campaign=footer"
|
||||||
|
class="pb-2 hover:underline"
|
||||||
|
>
|
||||||
Buy Stickers
|
Buy Stickers
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="w-full md:w-1/5 mt-4 md:mt-0 flex flex-col">
|
<div class="mt-4 flex w-full flex-col md:mt-0 md:w-1/5">
|
||||||
<h3 class="font-title font-bold text-base mb-4 md:mb-6">Product</h3>
|
<h3 class="mb-4 font-title text-base font-bold md:mb-6">Product</h3>
|
||||||
<a href="https://vikunja.cloud/features" class="hover:underline pb-2">Features</a>
|
<a href="https://vikunja.cloud/features" class="pb-2 hover:underline">Features</a>
|
||||||
<a href="https://vikunja.cloud/managed-service" class="hover:underline pb-2">Managed Service</a>
|
<a href="https://vikunja.cloud/managed-service" class="pb-2 hover:underline"
|
||||||
<a href="https://vikunja.cloud/?utm_source=io&utm_medium=io&utm_campaign=footer" class="hover:underline pb-2">
|
>Managed Service</a
|
||||||
|
>
|
||||||
|
<a
|
||||||
|
href="https://vikunja.cloud/?utm_source=io&utm_medium=io&utm_campaign=footer"
|
||||||
|
class="pb-2 hover:underline"
|
||||||
|
>
|
||||||
Get it Hosted
|
Get it Hosted
|
||||||
</a>
|
</a>
|
||||||
<a href="https://vikunja.cloud/stickers" class="hover:underline pb-2">Stickers</a>
|
<a href="https://vikunja.cloud/stickers" class="pb-2 hover:underline">Stickers</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="w-full md:w-1/5 mt-4 md:mt-0 flex flex-col">
|
<div class="mt-4 flex w-full flex-col md:mt-0 md:w-1/5">
|
||||||
<h3 class="font-title font-bold text-base mb-4 md:mb-6">About</h3>
|
<h3 class="mb-4 font-title text-base font-bold md:mb-6">About</h3>
|
||||||
<a href="/" class="hover:underline pb-2">Home</a>
|
<a href="/" class="pb-2 hover:underline">Home</a>
|
||||||
<a href="/docs" class="hover:underline pb-2">Docs</a>
|
<a href="/docs" class="pb-2 hover:underline">Docs</a>
|
||||||
<a href="/contact/" class="hover:underline pb-2">Contact</a>
|
<a href="/contact/" class="pb-2 hover:underline">Contact</a>
|
||||||
<a href="/survey" class="hover:underline pb-2">Feedback Survey</a>
|
<a href="/survey" class="pb-2 hover:underline">Feedback Survey</a>
|
||||||
<a href="https://community.vikunja.io" class="hover:underline pb-2">Community Forum</a>
|
<a href="https://community.vikunja.io" class="pb-2 hover:underline">Community Forum</a>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
document.addEventListener('DOMContentLoaded', function () {
|
document.addEventListener('DOMContentLoaded', function () {
|
||||||
const $navbarBurgers = Array.prototype.slice.call(document.querySelectorAll('.navbar-burger'), 0)
|
const $navbarBurgers = Array.prototype.slice.call(
|
||||||
|
document.querySelectorAll('.navbar-burger'),
|
||||||
|
0
|
||||||
|
);
|
||||||
if ($navbarBurgers.length > 0) {
|
if ($navbarBurgers.length > 0) {
|
||||||
$navbarBurgers.forEach(function ($el) {
|
$navbarBurgers.forEach(function ($el) {
|
||||||
const target = $el.dataset.target
|
const target = $el.dataset.target;
|
||||||
const $target = document.getElementById(target)
|
const $target = document.getElementById(target);
|
||||||
$el.addEventListener('click', function () {
|
$el.addEventListener('click', function () {
|
||||||
$target.classList.toggle('hidden')
|
$target.classList.toggle('hidden');
|
||||||
})
|
});
|
||||||
$target.addEventListener('click', el => {
|
$target.addEventListener('click', (el) => {
|
||||||
$target.classList.toggle('hidden')
|
$target.classList.toggle('hidden');
|
||||||
})
|
});
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{{ partial "plausible-tracking.html" . }}
|
{{ partial "plausible-tracking.html" . }}
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
|
@ -1,10 +1,6 @@
|
||||||
<!DOCTYPE html>
|
<meta charset="utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
|
||||||
<html lang="en">
|
<meta http-equiv="x-ua-compatible" content="ie=edge" />
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
||||||
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
|
||||||
|
|
||||||
<!-- Title -->
|
<!-- Title -->
|
||||||
{{ $title := .Site.Title }}
|
{{ $title := .Site.Title }}
|
||||||
|
@ -24,7 +20,7 @@
|
||||||
<meta name="twitter:description" content="{{ .Params.description }}" />
|
<meta name="twitter:description" content="{{ .Params.description }}" />
|
||||||
|
|
||||||
<!-- Links -->
|
<!-- Links -->
|
||||||
<base href="{{ .Permalink }}">
|
<base href="{{ .Permalink }}" />
|
||||||
<link rel="canonical" href="{{ .Permalink }}" itemprop="url" />
|
<link rel="canonical" href="{{ .Permalink }}" itemprop="url" />
|
||||||
<meta name="url" content="{{ .Permalink }}" />
|
<meta name="url" content="{{ .Permalink }}" />
|
||||||
<meta name="twitter:url" content="{{ .Permalink }}" />
|
<meta name="twitter:url" content="{{ .Permalink }}" />
|
||||||
|
@ -40,28 +36,31 @@
|
||||||
<meta itemprop="image" content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png" />
|
<meta itemprop="image" content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png" />
|
||||||
<meta property="og:image" content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png" />
|
<meta property="og:image" content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png" />
|
||||||
<meta name="twitter:image" content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png" />
|
<meta name="twitter:image" content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png" />
|
||||||
<meta name="twitter:image:src" content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png" />
|
<meta
|
||||||
|
name="twitter:image:src"
|
||||||
|
content="{{ .Site.Params.ogimage | absURL }}images/vikunja.png"
|
||||||
|
/>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
|
||||||
<!-- Misc -->
|
<!-- Misc -->
|
||||||
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
|
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
|
||||||
{{ hugo.Generator }}
|
{{ hugo.Generator }}
|
||||||
|
|
||||||
{{ range .AlternativeOutputFormats -}}
|
{{ range .AlternativeOutputFormats -}}
|
||||||
{{ printf `<link rel="%s" type="%s" href="%s" title="%s"/>` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
{{ printf `<link rel="%s" type="%s" href="%s" title="%s"/>` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
||||||
{{ end -}}
|
{{ end -}}
|
||||||
|
|
||||||
<link rel="canonical" href="{{ .Permalink }}">
|
|
||||||
|
<link rel="canonical" href="{{ .Permalink }}" />
|
||||||
|
|
||||||
{{ $siteBaseURL := .Site.BaseURL }}
|
{{ $siteBaseURL := .Site.BaseURL }}
|
||||||
{{ $styleFolder := "./themes/vikunja/static/css" }}
|
{{ $styleFolder :=
|
||||||
|
"./themes/vikunja/static/css"
|
||||||
|
}}
|
||||||
{{ range readDir $styleFolder }}
|
{{ range readDir $styleFolder }}
|
||||||
<link rel="stylesheet" href="{{ $siteBaseURL }}css/{{ .Name }}">
|
<link rel="stylesheet" href="{{ $siteBaseURL }}css/{{ .Name }}" />
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="{{ .Site.BaseURL }}favicon.ico">
|
|
||||||
<link rel="icon" type="image/x-icon" href="{{ .Site.BaseURL }}favicon.ico">
|
|
||||||
</head>
|
|
||||||
<body class="antialiased bg-gray-50 text-gray-900">
|
|
||||||
|
|
||||||
{{ partial "navbar.html" . }}
|
<link rel="shortcut icon" type="image/x-icon" href="{{ .Site.BaseURL }}favicon.ico" />
|
||||||
|
<link rel="icon" type="image/x-icon" href="{{ .Site.BaseURL }}favicon.ico" />
|
||||||
|
|
|
@ -1,19 +1,27 @@
|
||||||
<a class="navbar-burger py-2 px-1 m-2 mt-6 bg-gray-200 rounded-sm text-center block lg:hidden" data-target="docsMenu">
|
<a
|
||||||
|
class="navbar-burger m-2 mt-6 block rounded-sm bg-gray-200 py-2 px-1 text-center lg:hidden"
|
||||||
|
data-target="docsMenu"
|
||||||
|
>
|
||||||
Show Menu
|
Show Menu
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<aside class="px-2 text-gray-600 hidden lg:block" id="docsMenu">
|
<aside class="hidden px-2 text-gray-600 lg:block" id="docsMenu">
|
||||||
{{ $currentNode := . }}
|
{{ $currentNode := . }}
|
||||||
{{ range .Site.Menus.sidebar }}
|
{{ range .Site.Menus.sidebar }}
|
||||||
{{ if .HasChildren }}
|
{{ if .HasChildren }}
|
||||||
<p class="uppercase font-title pb-2 pt-4 text-sm text-gray-500">
|
<p class="pb-2 pt-4 font-title text-sm uppercase text-gray-500">
|
||||||
{{ .Pre }}
|
{{ .Pre }}
|
||||||
{{ .Name }}
|
{{ .Name }}
|
||||||
</p>
|
</p>
|
||||||
<ul>
|
<ul>
|
||||||
{{ range .Children }}
|
{{ range .Children }}
|
||||||
<li>
|
<li>
|
||||||
<a href="{{ .URL }}" class="px-2 py-1.5 block rounded-sm hover:bg-gray-200 {{ if $currentNode.IsMenuCurrent "sidebar" . }} !bg-primary text-white {{ end }}">
|
<a
|
||||||
|
href="{{ .URL }}"
|
||||||
|
class="{{ if $currentNode.IsMenuCurrent "sidebar" . }}
|
||||||
|
!bg-primary text-white
|
||||||
|
{{ end }} block rounded-sm px-2 py-1.5 hover:bg-gray-200"
|
||||||
|
>
|
||||||
{{ .Pre }}
|
{{ .Pre }}
|
||||||
{{ .Name }}
|
{{ .Name }}
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -1,16 +1,41 @@
|
||||||
<nav class="w-full bg-primary">
|
<nav class="w-full bg-primary">
|
||||||
<div class="flex justify-between max-w-screen-2xl mx-auto px-2">
|
<div class="mx-auto flex max-w-screen-2xl justify-between px-2">
|
||||||
<a href="/">
|
<a href="/">
|
||||||
<img src="{{ .Site.BaseURL }}images/vikunja-logo-white.svg" alt="{{ .Site.Title }}" class="h-10 my-2 ml-2 lg:ml-0"/>
|
<img
|
||||||
|
src="{{ .Site.BaseURL }}images/vikunja-logo-white.svg"
|
||||||
|
alt="{{ .Site.Title }}"
|
||||||
|
class="my-2 ml-2 h-10 lg:ml-0"
|
||||||
|
/>
|
||||||
</a>
|
</a>
|
||||||
<a class="block lg:hidden text-white p-3 pr-4 cursor-pointer navbar-burger" data-target="navMenu" aria-label="menu" aria-expanded="false">
|
<a
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="h-8 w-8" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
class="navbar-burger block cursor-pointer p-3 pr-4 text-white lg:hidden"
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16" />
|
data-target="navMenu"
|
||||||
|
aria-label="menu"
|
||||||
|
aria-expanded="false"
|
||||||
|
>
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
class="h-8 w-8"
|
||||||
|
fill="none"
|
||||||
|
viewBox="0 0 24 24"
|
||||||
|
stroke="currentColor"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
stroke-linecap="round"
|
||||||
|
stroke-linejoin="round"
|
||||||
|
stroke-width="2"
|
||||||
|
d="M4 6h16M4 12h16M4 18h16"
|
||||||
|
/>
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
<div class="text-white font-title font-semibold hidden lg:flex">
|
<div class="hidden font-title font-semibold text-white lg:flex">
|
||||||
{{ $currentNode := .Page }}{{ range .Site.Menus.page }}
|
{{ $currentNode := .Page }}{{ range .Site.Menus.page }}
|
||||||
<a class="block h-full py-4 px-2 hover:bg-primary-darker {{ if $currentNode.IsMenuCurrent "page" . }}bg-primary-darker{{ end }}" href="{{ .URL }}">
|
<a
|
||||||
|
class="{{ if $currentNode.IsMenuCurrent "page" . }}
|
||||||
|
bg-primary-darker
|
||||||
|
{{ end }} block h-full py-4 px-2 hover:bg-primary-darker"
|
||||||
|
href="{{ .URL }}"
|
||||||
|
>
|
||||||
{{ .Name }}
|
{{ .Name }}
|
||||||
</a>
|
</a>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
@ -18,10 +43,15 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Mobile Menu -->
|
<!-- Mobile Menu -->
|
||||||
<div class="fixed hidden bg-black bg-opacity-50 top-0 bottom-0 left-0 right-0" id="navMenu">
|
<div class="fixed top-0 bottom-0 left-0 right-0 hidden bg-black bg-opacity-50" id="navMenu">
|
||||||
<div class="flex font-title font-semibold fixed flex-col w-3/4 bg-gray-100 h-screen">
|
<div class="fixed flex h-screen w-3/4 flex-col bg-gray-100 font-title font-semibold">
|
||||||
{{ $currentNode := .Page }}{{ range .Site.Menus.page }}
|
{{ $currentNode := .Page }}{{ range .Site.Menus.page }}
|
||||||
<a class="block py-2 px-4 hover:bg-primary hover:text-white {{ if $currentNode.IsMenuCurrent "page" . }} bg-primary text-white {{ end }}" href="{{ .URL }}">
|
<a
|
||||||
|
class="{{ if $currentNode.IsMenuCurrent "page" . }}
|
||||||
|
bg-primary text-white
|
||||||
|
{{ end }} block py-2 px-4 hover:bg-primary hover:text-white"
|
||||||
|
href="{{ .URL }}"
|
||||||
|
>
|
||||||
{{ .Name }}
|
{{ .Name }}
|
||||||
</a>
|
</a>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
{{ if .Site.Params.plausibleEnabled }}
|
{{ if .Site.Params.plausibleEnabled }}
|
||||||
<script async defer data-domain="{{ .Site.Params.plausibleDomain }}" src="{{ .Site.Params.plausibleURL }}/js/plausible.js"></script>
|
<script
|
||||||
|
async
|
||||||
|
defer
|
||||||
|
data-domain="{{ .Site.Params.plausibleDomain }}"
|
||||||
|
src="{{ .Site.Params.plausibleURL }}/js/plausible.js"
|
||||||
|
></script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
<div class="max-w-none prose prose-a:text-primary prose-a:no-underline hover:prose-a:underline prose-h1:font-title prose-h1:font-bold prose-img:rounded-sm">
|
<div
|
||||||
|
class="prose max-w-none prose-h1:font-title prose-h1:font-bold prose-a:text-primary prose-a:no-underline hover:prose-a:underline prose-img:rounded-sm"
|
||||||
|
>
|
||||||
{{ partial "headline-hash.html" . }}
|
{{ partial "headline-hash.html" . }}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<a href="https://vikunja.cloud/?utm_source=io&utm_medium=io&utm_campaign=blog_post"
|
<a
|
||||||
class="bg-hero-llama bg-cover bg-no-repeat bg-center py-44 flex items-center justify-center flex-col shadow hover:shadow-lg rounded text-white mt-8">
|
href="https://vikunja.cloud/?utm_source=io&utm_medium=io&utm_campaign=blog_post"
|
||||||
|
class="mt-8 flex flex-col items-center justify-center rounded bg-hero-llama bg-cover bg-center bg-no-repeat py-44 text-white shadow hover:shadow-lg"
|
||||||
|
>
|
||||||
<h2 class="font-title text-3xl font-bold">Vikunja Cloud is here!</h2>
|
<h2 class="font-title text-3xl font-bold">Vikunja Cloud is here!</h2>
|
||||||
<p class="pt-4">
|
<p class="pt-4">Get a hosted Vikunja Account.</p>
|
||||||
Get a hosted Vikunja Account.
|
|
||||||
</p>
|
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -1,56 +1,91 @@
|
||||||
{{ partial "header.html" . }}
|
{{ define "main" }}
|
||||||
|
<article class="mx-auto mt-4 max-w-screen-lg">
|
||||||
|
<h1 class="mb-2 font-title text-4xl font-bold">Blog</h1>
|
||||||
|
<p class="mb-10 text-gray-600">All the latest Vikunja news and updates.</p>
|
||||||
|
|
||||||
<article class="max-w-screen-lg mx-auto mt-4">
|
{{ $paginator := .Paginate (where .Data.Pages "Type" "post") }}{{ range
|
||||||
<h1 class="font-title text-4xl font-bold mb-2">Blog</h1>
|
$paginator.Pages
|
||||||
<p class="text-gray-600 mb-10">All the latest Vikunja news and updates.</p>
|
}}
|
||||||
|
|
||||||
{{ $paginator := .Paginate (where .Data.Pages "Type" "post") }}{{ range $paginator.Pages }}
|
|
||||||
<section class="mb-8">
|
<section class="mb-8">
|
||||||
<a class="font-title text-2xl font-bold" href="{{ .Permalink }}">{{ .Title }}</a>
|
<a class="font-title text-2xl font-bold" href="{{ .Permalink }}">{{ .Title }}</a>
|
||||||
<p class="text-gray-400">
|
<p class="text-gray-400">{{ .Date.Format "2006-01-02" }}</p>
|
||||||
{{ .Date.Format "2006-01-02" }}
|
<p class="pt-4 text-gray-600">{{ .Summary }}</p>
|
||||||
</p>
|
<a
|
||||||
<p class="pt-4 text-gray-600">
|
href="{{ .Permalink }}"
|
||||||
{{ .Summary }}
|
class="mt-4 inline-flex items-center rounded-md border border-gray-300 bg-white px-2 py-2 text-sm font-medium text-gray-500 hover:bg-gray-50"
|
||||||
</p>
|
>
|
||||||
<a href="{{ .Permalink }}"
|
<span class="mr-1"> Read more </span>
|
||||||
class="inline-flex items-center mt-4 px-2 py-2 rounded-md border border-gray-300 bg-white text-sm font-medium text-gray-500 hover:bg-gray-50">
|
<svg
|
||||||
<span class="mr-1">
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
Read more
|
class="h-5 w-5"
|
||||||
</span>
|
viewBox="0 0 20 20"
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" viewBox="0 0 20 20" fill="currentColor">
|
fill="currentColor"
|
||||||
<path fill-rule="evenodd"
|
>
|
||||||
|
<path
|
||||||
|
fill-rule="evenodd"
|
||||||
d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"
|
d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"
|
||||||
clip-rule="evenodd"/>
|
clip-rule="evenodd"
|
||||||
|
/>
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
</section>
|
</section>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<nav class="relative z-0 inline-flex rounded-md shadow-sm -space-x-px" aria-label="Pagination">
|
|
||||||
|
<nav
|
||||||
|
class="relative z-0 inline-flex -space-x-px rounded-md shadow-sm"
|
||||||
|
aria-label="Pagination"
|
||||||
|
>
|
||||||
{{ if .Paginator.HasPrev }}
|
{{ if .Paginator.HasPrev }}
|
||||||
<a href="{{ .Paginator.Prev.URL }}" class="relative inline-flex items-center px-2 py-2 {{ if .Paginator.HasNext }} rounded-l-md {{ else }} rounded-md {{ end }} border border-gray-300 bg-white text-sm font-medium text-gray-500 hover:bg-gray-50">
|
<a
|
||||||
|
href="{{ .Paginator.Prev.URL }}"
|
||||||
|
class="{{ if .Paginator.HasNext }}
|
||||||
|
rounded-l-md
|
||||||
|
{{ else }}
|
||||||
|
rounded-md
|
||||||
|
{{ end }} relative inline-flex items-center border border-gray-300 bg-white px-2 py-2 text-sm font-medium text-gray-500 hover:bg-gray-50"
|
||||||
|
>
|
||||||
Previous
|
Previous
|
||||||
<svg class="h-5 w-5" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor"
|
<svg
|
||||||
aria-hidden="true">
|
class="h-5 w-5"
|
||||||
<path fill-rule="evenodd"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
viewBox="0 0 20 20"
|
||||||
|
fill="currentColor"
|
||||||
|
aria-hidden="true"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
fill-rule="evenodd"
|
||||||
d="M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z"
|
d="M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z"
|
||||||
clip-rule="evenodd"/>
|
clip-rule="evenodd"
|
||||||
|
/>
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if .Paginator.HasNext }}
|
{{ if .Paginator.HasNext }}
|
||||||
<a href="{{ .Paginator.Next.URL }}" class="relative inline-flex items-center px-2 py-2 {{ if .Paginator.HasPrev }} rounded-r-md {{ else }} rounded-md {{ end }} border border-gray-300 bg-white text-sm font-medium text-gray-500 hover:bg-gray-50">
|
<a
|
||||||
|
href="{{ .Paginator.Next.URL }}"
|
||||||
|
class="{{ if .Paginator.HasPrev }}
|
||||||
|
rounded-r-md
|
||||||
|
{{ else }}
|
||||||
|
rounded-md
|
||||||
|
{{ end }} relative inline-flex items-center border border-gray-300 bg-white px-2 py-2 text-sm font-medium text-gray-500 hover:bg-gray-50"
|
||||||
|
>
|
||||||
Next
|
Next
|
||||||
<svg class="h-5 w-5" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor"
|
<svg
|
||||||
aria-hidden="true">
|
class="h-5 w-5"
|
||||||
<path fill-rule="evenodd"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
viewBox="0 0 20 20"
|
||||||
|
fill="currentColor"
|
||||||
|
aria-hidden="true"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
fill-rule="evenodd"
|
||||||
d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"
|
d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"
|
||||||
clip-rule="evenodd"/>
|
clip-rule="evenodd"
|
||||||
|
/>
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</nav>
|
</nav>
|
||||||
</article>
|
</article>
|
||||||
|
{{ end }}
|
||||||
{{ partial "footer.html" . }}
|
|
||||||
|
|
|
@ -1,15 +1,10 @@
|
||||||
{{ partial "header.html" . }}
|
{{ define "main" }}
|
||||||
|
<article class="mx-auto mt-4 max-w-screen-lg">
|
||||||
<article class="max-w-screen-lg mx-auto mt-4">
|
<h1 class="mb-8 font-title text-3xl font-bold">
|
||||||
<h1 class="text-3xl font-bold font-title mb-8">
|
<a href="{{ .Permalink }}"> {{ .Title }} </a>
|
||||||
<a href="{{ .Permalink }}">
|
|
||||||
{{ .Title }}
|
|
||||||
</a>
|
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
{{ partial "prose.html" .Content }}
|
{{ partial "prose.html" .Content }}
|
||||||
|
|
||||||
{{ partial "vikunja-cloud-banner.html" }}
|
{{ partial "vikunja-cloud-banner.html" }}
|
||||||
</article>
|
</article>
|
||||||
|
{{ end }}
|
||||||
{{ partial "footer.html" . }}
|
|
||||||
|
|
|
@ -11,11 +11,15 @@
|
||||||
"prod": "tailwindcss -i src/style.css -o static/css/styles.css --minify",
|
"prod": "tailwindcss -i src/style.css -o static/css/styles.css --minify",
|
||||||
"watch": "tailwindcss -i src/style.css -o static/css/styles.css --watch",
|
"watch": "tailwindcss -i src/style.css -o static/css/styles.css --watch",
|
||||||
"clean": "rm -rf dist && mkdir dist",
|
"clean": "rm -rf dist && mkdir dist",
|
||||||
"release": "tar -czvf dist/vikunja-theme.tar.gz archetypes layouts static LICENSE README.md theme.toml"
|
"release": "tar -czvf dist/vikunja-theme.tar.gz archetypes layouts static LICENSE README.md theme.toml",
|
||||||
|
"format": "prettier --write ."
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@tailwindcss/typography": "^0.5.0",
|
"@tailwindcss/typography": "^0.5.0",
|
||||||
"postcss": "^8.4.5",
|
"postcss": "^8.4.5",
|
||||||
|
"prettier": "^2.5.1",
|
||||||
|
"prettier-plugin-go-template": "^0.0.11",
|
||||||
|
"prettier-plugin-tailwindcss": "^0.1.4",
|
||||||
"tailwindcss": "^3.0.17"
|
"tailwindcss": "^3.0.17"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|
|
@ -19,7 +19,7 @@ body {
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification {
|
.notification {
|
||||||
@apply p-4 rounded;
|
@apply rounded p-4;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification.is-warning {
|
.notification.is-warning {
|
||||||
|
|
|
@ -5,11 +5,11 @@
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
src: url('quicksand-v7-latin-300.eot'); /* IE9 Compat Modes */
|
src: url('quicksand-v7-latin-300.eot'); /* IE9 Compat Modes */
|
||||||
src: local('Quicksand Light'), local('Quicksand-Light'),
|
src: local('Quicksand Light'), local('Quicksand-Light'),
|
||||||
url('quicksand-v7-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
url('quicksand-v7-latin-300.eot?#iefix') format('embedded-opentype'),
|
||||||
url('quicksand-v7-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
|
/* IE6-IE8 */ url('quicksand-v7-latin-300.woff2') format('woff2'),
|
||||||
url('quicksand-v7-latin-300.woff') format('woff'), /* Modern Browsers */
|
/* Super Modern Browsers */ url('quicksand-v7-latin-300.woff') format('woff'),
|
||||||
url('quicksand-v7-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
|
/* Modern Browsers */ url('quicksand-v7-latin-300.ttf') format('truetype'),
|
||||||
url('quicksand-v7-latin-300.svg#Quicksand') format('svg'); /* Legacy iOS */
|
/* Safari, Android, iOS */ url('quicksand-v7-latin-300.svg#Quicksand') format('svg'); /* Legacy iOS */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* quicksand-regular - latin */
|
/* quicksand-regular - latin */
|
||||||
|
@ -19,11 +19,11 @@
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
src: url('quicksand-v7-latin-regular.eot'); /* IE9 Compat Modes */
|
src: url('quicksand-v7-latin-regular.eot'); /* IE9 Compat Modes */
|
||||||
src: local('Quicksand Regular'), local('Quicksand-Regular'),
|
src: local('Quicksand Regular'), local('Quicksand-Regular'),
|
||||||
url('quicksand-v7-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
url('quicksand-v7-latin-regular.eot?#iefix') format('embedded-opentype'),
|
||||||
url('quicksand-v7-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
|
/* IE6-IE8 */ url('quicksand-v7-latin-regular.woff2') format('woff2'),
|
||||||
url('quicksand-v7-latin-regular.woff') format('woff'), /* Modern Browsers */
|
/* Super Modern Browsers */ url('quicksand-v7-latin-regular.woff') format('woff'),
|
||||||
url('quicksand-v7-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
|
/* Modern Browsers */ url('quicksand-v7-latin-regular.ttf') format('truetype'),
|
||||||
url('quicksand-v7-latin-regular.svg#Quicksand') format('svg'); /* Legacy iOS */
|
/* Safari, Android, iOS */ url('quicksand-v7-latin-regular.svg#Quicksand') format('svg'); /* Legacy iOS */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* quicksand-500 - latin */
|
/* quicksand-500 - latin */
|
||||||
|
@ -33,11 +33,11 @@
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
src: url('quicksand-v7-latin-500.eot'); /* IE9 Compat Modes */
|
src: url('quicksand-v7-latin-500.eot'); /* IE9 Compat Modes */
|
||||||
src: local('Quicksand Medium'), local('Quicksand-Medium'),
|
src: local('Quicksand Medium'), local('Quicksand-Medium'),
|
||||||
url('quicksand-v7-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
url('quicksand-v7-latin-500.eot?#iefix') format('embedded-opentype'),
|
||||||
url('quicksand-v7-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
|
/* IE6-IE8 */ url('quicksand-v7-latin-500.woff2') format('woff2'),
|
||||||
url('quicksand-v7-latin-500.woff') format('woff'), /* Modern Browsers */
|
/* Super Modern Browsers */ url('quicksand-v7-latin-500.woff') format('woff'),
|
||||||
url('quicksand-v7-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
|
/* Modern Browsers */ url('quicksand-v7-latin-500.ttf') format('truetype'),
|
||||||
url('quicksand-v7-latin-500.svg#Quicksand') format('svg'); /* Legacy iOS */
|
/* Safari, Android, iOS */ url('quicksand-v7-latin-500.svg#Quicksand') format('svg'); /* Legacy iOS */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* quicksand-700 - latin */
|
/* quicksand-700 - latin */
|
||||||
|
@ -47,9 +47,9 @@
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
src: url('quicksand-v7-latin-700.eot'); /* IE9 Compat Modes */
|
src: url('quicksand-v7-latin-700.eot'); /* IE9 Compat Modes */
|
||||||
src: local('Quicksand Bold'), local('Quicksand-Bold'),
|
src: local('Quicksand Bold'), local('Quicksand-Bold'),
|
||||||
url('quicksand-v7-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
url('quicksand-v7-latin-700.eot?#iefix') format('embedded-opentype'),
|
||||||
url('quicksand-v7-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
|
/* IE6-IE8 */ url('quicksand-v7-latin-700.woff2') format('woff2'),
|
||||||
url('quicksand-v7-latin-700.woff') format('woff'), /* Modern Browsers */
|
/* Super Modern Browsers */ url('quicksand-v7-latin-700.woff') format('woff'),
|
||||||
url('quicksand-v7-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
|
/* Modern Browsers */ url('quicksand-v7-latin-700.ttf') format('truetype'),
|
||||||
url('quicksand-v7-latin-700.svg#Quicksand') format('svg'); /* Legacy iOS */
|
/* Safari, Android, iOS */ url('quicksand-v7-latin-700.svg#Quicksand') format('svg'); /* Legacy iOS */
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,15 +1,8 @@
|
||||||
const defaultTheme = require('tailwindcss/defaultTheme')
|
const defaultTheme = require('tailwindcss/defaultTheme');
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
content: [
|
content: ['./src/*.css', './layouts/**/*.html'],
|
||||||
'./src/*.css',
|
safelist: ['p-4', '!text-white', '!underline'],
|
||||||
'./layouts/**/*.html'
|
|
||||||
],
|
|
||||||
safelist: [
|
|
||||||
'p-4',
|
|
||||||
'!text-white',
|
|
||||||
'!underline',
|
|
||||||
],
|
|
||||||
theme: {
|
theme: {
|
||||||
extend: {
|
extend: {
|
||||||
colors: {
|
colors: {
|
||||||
|
@ -17,7 +10,7 @@ module.exports = {
|
||||||
lighter: '#3b7aec',
|
lighter: '#3b7aec',
|
||||||
DEFAULT: '#196aff',
|
DEFAULT: '#196aff',
|
||||||
darker: '#0064ff',
|
darker: '#0064ff',
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
fontFamily: {
|
fontFamily: {
|
||||||
title: ['Quicksand', ...defaultTheme.fontFamily.sans],
|
title: ['Quicksand', ...defaultTheme.fontFamily.sans],
|
||||||
|
@ -27,8 +20,5 @@ module.exports = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
plugins: [
|
plugins: [require('@tailwindcss/typography'), require('@tailwindcss/forms')],
|
||||||
require('@tailwindcss/typography'),
|
};
|
||||||
require('@tailwindcss/forms'),
|
|
||||||
],
|
|
||||||
}
|
|
||||||
|
|
22
yarn.lock
22
yarn.lock
|
@ -511,6 +511,23 @@ postcss@^8.4.5:
|
||||||
picocolors "^1.0.0"
|
picocolors "^1.0.0"
|
||||||
source-map-js "^1.0.1"
|
source-map-js "^1.0.1"
|
||||||
|
|
||||||
|
prettier-plugin-go-template@^0.0.11:
|
||||||
|
version "0.0.11"
|
||||||
|
resolved "https://registry.yarnpkg.com/prettier-plugin-go-template/-/prettier-plugin-go-template-0.0.11.tgz#49439095ac0a3a14f34d5024d628265c7a2b954a"
|
||||||
|
integrity sha512-qtgoEjvbgmcDp9TOqYNgrPrA41s6S1UMyzMqjcxdxQahTX0webWfbamyA/x3XeBFEEJmgXrRAirzJrIVzImsMg==
|
||||||
|
dependencies:
|
||||||
|
ulid "^2.3.0"
|
||||||
|
|
||||||
|
prettier-plugin-tailwindcss@^0.1.4:
|
||||||
|
version "0.1.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.1.4.tgz#b09e826a57a0f69b0662eededd659b3d5a5551e7"
|
||||||
|
integrity sha512-kt3YFWqxcG9+bilBI0hPF7RjQZNtgBRvjJZGw6B2MNAjPqlfcYIiZnNaIEnq4XimKLTzZYxz6jQnUXmSQ/5njg==
|
||||||
|
|
||||||
|
prettier@^2.5.1:
|
||||||
|
version "2.5.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a"
|
||||||
|
integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==
|
||||||
|
|
||||||
queue-microtask@^1.2.2:
|
queue-microtask@^1.2.2:
|
||||||
version "1.2.3"
|
version "1.2.3"
|
||||||
resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
|
resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
|
||||||
|
@ -611,6 +628,11 @@ to-regex-range@^5.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
is-number "^7.0.0"
|
is-number "^7.0.0"
|
||||||
|
|
||||||
|
ulid@^2.3.0:
|
||||||
|
version "2.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/ulid/-/ulid-2.3.0.tgz#93063522771a9774121a84d126ecd3eb9804071f"
|
||||||
|
integrity sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw==
|
||||||
|
|
||||||
util-deprecate@^1.0.2:
|
util-deprecate@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user