diff options
Diffstat (limited to 'assets')
| -rw-r--r-- | assets/chapter.html.jinja | 45 | ||||
| -rwxr-xr-x | assets/favicon.ico | bin | 0 -> 67646 bytes | |||
| -rw-r--r-- | assets/home.html.jinja | 32 | ||||
| -rwxr-xr-x | assets/home.mp4 | bin | 0 -> 13354 bytes | |||
| -rw-r--r-- | assets/index.html.jinja | 65 | ||||
| -rwxr-xr-x | assets/lexend.woff2 | bin | 0 -> 71592 bytes | |||
| -rw-r--r-- | assets/manifest.json.jinja | 16 | ||||
| -rw-r--r-- | assets/series.html.jinja | 39 | ||||
| -rw-r--r-- | assets/style.css.jinja | 178 |
9 files changed, 375 insertions, 0 deletions
diff --git a/assets/chapter.html.jinja b/assets/chapter.html.jinja new file mode 100644 index 0000000..972ac75 --- /dev/null +++ b/assets/chapter.html.jinja @@ -0,0 +1,45 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <title>{{ site }} - {{ series_name }} - {{ chapter_name }}</title> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <link rel="preload" href="{{ base }}lexend.woff2" as="font" type="font/woff2" crossorigin> + <link rel="stylesheet" href="{{ base }}{{ style }}"> + <link rel="icon" href="{{ base }}favicon.ico" sizes="any"> +</head> +<body> + + <a class="back" href="{{ base }}{{ series_loc }}/">Back</a> + + {% if prev_loc or next_loc %} + <div class="nav"> + {% if prev_loc %} + <a class="nav-link" href="{{ base }}{{ prev_loc }}/">Previous</a> + {% endif %} + + {% if next_loc %} + <a class="nav-link right" href="{{ base }}{{ next_loc }}/">Next</a> + {% endif %} + </div> + {% endif %} + + <div class="container"> + {% for im in images %} + <img src="{{ base }}{{ loc }}/{{ im }}" {{ 'loading="lazy"' if loop.index != 1 }} alt="page {{ loop.index }}"> + {% endfor %} + </div> + + {% if prev_loc or next_loc %} + <div class="nav" style="margin-bottom: 60px"> + {% if prev_loc %} + <a class="nav-link" href="{{ base }}{{ prev_loc }}/">Previous</a> + {% endif %} + + {% if next_loc %} + <a class="nav-link right" href="{{ base }}{{ next_loc }}/">Next</a> + {% endif %} + </div> + {% endif %} +</body> +</html>
\ No newline at end of file diff --git a/assets/favicon.ico b/assets/favicon.ico Binary files differnew file mode 100755 index 0000000..30f46aa --- /dev/null +++ b/assets/favicon.ico diff --git a/assets/home.html.jinja b/assets/home.html.jinja new file mode 100644 index 0000000..fbd69c3 --- /dev/null +++ b/assets/home.html.jinja @@ -0,0 +1,32 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <title>{{ site }}</title> + + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <link rel="preload" href="{{ base }}lexend.woff2" as="font" type="font/woff2" crossorigin> + <link rel="stylesheet" href="{{ base }}{{ style }}"> + <link rel="icon" href="{{ base }}favicon.ico" sizes="any"> + <link rel="manifest" href="{{ base }}manifest.json"> +</head> +<body> +<div style="padding: 20px"> + + <h1>{{ home_title }}</h1> + + <a class="home-link" href="{{ base }}t/long-strip/">Tags</a> + <br> + <a class="home-link" href="{{ base }}i/a/">Titles</a> + + <br> + <div style="text-align: center"> + <video src="{{ base }}home.mp4" width="128" height="128" loop="" playsinline="" preload="none" autoplay muted></video> + </div> + + <span style="position: absolute; bottom: 0; left: 0; padding: 15px"> + Made with <span style="color: pink">&lt;3</span> by <span style="color: pink">Shy</span> ♥ + </span> +</div> +</body> +</html> diff --git a/assets/home.mp4 b/assets/home.mp4 Binary files differnew file mode 100755 index 0000000..db28071 --- /dev/null +++ b/assets/home.mp4 diff --git a/assets/index.html.jinja b/assets/index.html.jinja new file mode 100644 index 0000000..5370ad7 --- /dev/null +++ b/assets/index.html.jinja @@ -0,0 +1,65 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <title>{{ site }} - {{ name | upper }}</title> + + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <link rel="preload" href="{{ base }}lexend.woff2" as="font" type="font/woff2" crossorigin> + <link rel="stylesheet" href="{{ base }}{{ style }}"> + <link rel="icon" href="{{ base }}favicon.ico" sizes="any"> +</head> +<body> +<div style="padding: 20px"> + + <a class="back" href="{{ base }}">Back</a> + + <h1>Index - {{ name | upper }}</h1> + + <div class="index {{ "index-tags" if tags }}"> + {% for page, page_raw, page_loc, not_empty in index_pages %} + {% if page_raw == loc %} + <span><b><u>{{ page }}</u></b></span> + {% elif not_empty %} + <a href="{{ base }}{{ page_loc }}/">{{ page }}</a> + {% else %} + <span>{{ page }}</span> + {% endif %} + {% endfor %} + </div> + + <br> + + <div class="index index-rating"> + {% if rating == None %} + <span>Any</span> + {% else %} + <a href="{{ base }}{{ prefix }}/{{ loc }}">Any</a> + {% endif %} + + {% for r in content_ratings %} + {% if rating == r %} + <span>{{ r }}</span> + {% else %} + <a href="{{ base }}{{ prefix }}-{{ r | lower }}/{{ loc }}/">{{ r }}</a> + {% endif %} + {% endfor %} + </div> +</div> + +<div class="gallery"> + {% for tn in thumbnails %} + <a href="{{ base }}{{ tn["loc"] }}/"> + <figure> + <img class="t {{ tn["offset"] }}" src="{{ base }}{{ tn["img"] }}" {{ 'loading="lazy"' if loop.index > 32 }} alt=""> + <figcaption>{{ tn["name"] }}</figcaption> + </figure> + </a> + {% endfor %} + + {% if not thumbnails %} + <p style="font-style: italic">(Empty)</p> + {% endif %} +</div> +</body> +</html>
\ No newline at end of file diff --git a/assets/lexend.woff2 b/assets/lexend.woff2 Binary files differnew file mode 100755 index 0000000..89fe074 --- /dev/null +++ b/assets/lexend.woff2 diff --git a/assets/manifest.json.jinja b/assets/manifest.json.jinja new file mode 100644 index 0000000..49fb73e --- /dev/null +++ b/assets/manifest.json.jinja @@ -0,0 +1,16 @@ +{ + "name": "Yuri Directory", + "short_name": "Yuri", + "theme_color": "#6495ed", + "background_color": "#000000", + "display": "minimal-ui", + "orientation": "portrait", + "scope": "{{ base }}", + "start_url": "{{ base }}", + "icons": [ + { + "src": "https://yuri.directory{{ base }}favicon.ico", + "sizes": "any" + } + ] +}
\ No newline at end of file diff --git a/assets/series.html.jinja b/assets/series.html.jinja new file mode 100644 index 0000000..81722ed --- /dev/null +++ b/assets/series.html.jinja @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <title>{{ site }} - {{ series_name }}</title> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <link rel="preload" href="{{ base }}lexend.woff2" as="font" type="font/woff2" crossorigin> + <link rel="stylesheet" href="{{ base }}{{ style }}"> + <link rel="icon" href="{{ base }}favicon.ico" sizes="any"> +</head> +<body> + + <div class="sheet"> + + <a class="back" href="javascript:(new URL(document.referrer)).pathname.match(/^\/[it]\/.*/) ? history.back() : window.location.href = '{{ base }}'">Back</a> + + <h1>{{ series_name }}</h1> + + <img class="cover" src="{{ base }}{{ loc }}/cover.webp" alt="cover"> + + <p><b>Content rating:</b> {{ rating }}</p> + + <h3>Tags</h3> + <ul class="li-link"> + {% for tag in tags %} + <li><a href="{{ base }}t/{{ tag | slug }}/">{{ tag }}</a></li> + {% endfor %} + </ul> + + <h3>Chapters</h3> + <div class="nav nav-vertical"> + {% for chapter in chapters %} + <a class="nav-link" href="{{ base }}{{ chapter["location"] }}/">{{ chapter["name"] }}</a> + {% endfor %} + </div> + </div> + +</body> +</html>
\ No newline at end of file diff --git a/assets/style.css.jinja b/assets/style.css.jinja new file mode 100644 index 0000000..0265333 --- /dev/null +++ b/assets/style.css.jinja @@ -0,0 +1,178 @@ +@font-face { + font-family: lexend; + src: url("{{ base }}lexend.woff2"); +} + +.container { + display: flex; + flex-direction: column; + margin-left: auto; + margin-right: auto; + overflow-x: hidden; +} + +img { + margin: 0; + width: 100%; +} + +.cover { + width: 100%; +} + +body { + background-color: black; + color: white; + font-family: lexend, arial, serif; +} + +a { + color: white; +} + +.index { + font-size: 24px; + display: flex; + flex-wrap: wrap; + justify-content: space-between; + gap: 20px; +} + +.index-tags { + font-size: 18px; + gap: 3px; +} + +.index-rating { + gap: 5px; + flex-wrap: nowrap; + max-width: 400px; + margin-top: 15px; +} + +.index span { + color: rgb(255, 255, 255, 0.5); +} + +.nav { + display: flex; + justify-content: space-between; + gap: 10px; + margin-bottom: 20px; + margin-top: 20px; +} + +.nav-vertical { + flex-direction: column; +} + +.nav-link { + width: 100%; + border: 1px solid white; + line-height: 2; + padding: 0 5px; +} + +.nav-vertical .nav-link:visited { + border: 1px solid pink; +} + +.home-link { + border: 1px solid white; + line-height: 2; + font-size: 26px; + padding: 5px; + margin-bottom: 20px; +} + +.right { + text-align: right; +} + +.gallery { + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: space-around; + gap: 3px; +} + +a:has(> figure) { + margin: 0; + font-size: 12px; + font-weight: bold; + text-align: center; +} + +figure { + margin: 0; +} + +@media screen and (min-width: 1000px) { + + .cover { + width: 360px; + } + + .container { + max-width: 720px; + } + + .gallery { + margin-left: 5%; + margin-right: 5%; + justify-content: left; + gap: 16px; + } + + .index { + font-size: 18px; + margin-left: 5%; + margin-right: 5%; + } + a:has(> figure):hover { + text-decoration: underline; + } +} + +a:has(> figure):visited { + color: pink; +} + +a { + text-decoration: none; +} + +a:not(:has(> figure)):hover { + text-decoration: underline; +} + +.sheet { + margin-left: 10%; + margin-right: 10%; +} + +.li-link { + font-size: 24px; + line-height: 1.5; +} + +.back { + font-size: 20px; +} + +figure { + width: {{ thumbnail_width }}px; +} + +.t { + width: {{ thumbnail_width}}px; + height: {{thumbnail_height}}px; + object-fit: none; +} + +{% for class_name, offset in offsets %} +.{{ class_name }} { + object-position: {{ -offset }}px 0 +} +{% endfor %}
\ No newline at end of file |
