diff --git a/.editorconfig b/.editorconfig index be25b4c..7158928 100644 --- a/.editorconfig +++ b/.editorconfig @@ -7,5 +7,5 @@ charset = utf-8 indent_style = space indent_size = 2 -[nginx.conf] +[{nginx.conf,*.py}] indent_size = 4 diff --git a/convert-images.py b/convert-images.py new file mode 100644 index 0000000..44b9b28 --- /dev/null +++ b/convert-images.py @@ -0,0 +1,63 @@ +import subprocess +from os import listdir, path, makedirs +from os.path import isfile, join, splitext, exists + + +def main(): + convert_favicon() + convert_images('public-src', 'public') + + +def convert_favicon(): + root = 'public/favicon' + src = f'{root}/vector.svg' + + sizes = [512, 192, 180, 32, 16] + for size in sizes: + dest = f'{root}/{size}.png' + if exists(dest): + continue + + cmd = ['convert', src, '-resize', f'{size}x{size}', f'{root}/{size}.png'] + print(' '.join(cmd)) + subprocess.run(cmd) + + dest = f'{root}/shortcut.ico' + if exists(dest): + return + + cmd = [ + 'convert', src, + '(', '-clone', '0', '-resize', '16x16', ')', + '(', '-clone', '0', '-resize', '32x32', ')', + '(', '-clone', '0', '-resize', '48x48', ')', + '-delete', '0', '-alpha', 'remove', '-colors', '256', + f'{root}/shortcut.ico', + ] + print(' '.join(cmd)) + subprocess.run(cmd) + +def convert_images(src, dest): + for i in listdir(src): + entry = join(src, i) + + if isfile(entry): + if splitext(i.lower())[1] not in ['.png', '.jpg', '.jpeg']: + continue + + dest_file = join(dest, i) + dest_file = splitext(dest_file)[0] + '.avif' + if exists(dest_file): + continue + + cmd = ['convert', entry, '-resize', '800x', '-quality', '80', dest_file] + print(' '.join(cmd)) + subprocess.run(cmd) + else: + target_dir = join(dest, i) + makedirs(target_dir, exist_ok=True) + convert_images(entry, target_dir) + + +if __name__ == '__main__': + main() diff --git a/generate_icons.sh b/generate_icons.sh deleted file mode 100755 index a7feb08..0000000 --- a/generate_icons.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh - -cd public/favicon - -convert vector.svg -resize 512x512 512.png -convert vector.svg -resize 192x192 192.png -convert vector.svg -resize 180x180 180.png -convert vector.svg -resize 32x32 32.png -convert vector.svg -resize 16x16 16.png - -convert vector.svg \ - \( -clone 0 -resize 16x16 \) \ - \( -clone 0 -resize 32x32 \) \ - \( -clone 0 -resize 48x48 \) \ - -delete 0 -alpha remove -colors 256 shortcut.ico - -cd - diff --git a/public-src/cinema/angels-egg/1.jpg b/public-src/cinema/angels-egg/1.jpg new file mode 100644 index 0000000..d8e2709 Binary files /dev/null and b/public-src/cinema/angels-egg/1.jpg differ diff --git a/public-src/cinema/john-wick-chapter-4/1.jpg b/public-src/cinema/john-wick-chapter-4/1.jpg new file mode 100644 index 0000000..7b1268a Binary files /dev/null and b/public-src/cinema/john-wick-chapter-4/1.jpg differ diff --git a/public-src/cinema/night-in-the-woods/1.jpg b/public-src/cinema/night-in-the-woods/1.jpg new file mode 100755 index 0000000..ffb9393 Binary files /dev/null and b/public-src/cinema/night-in-the-woods/1.jpg differ diff --git a/public-src/cinema/night-in-the-woods/2.jpg b/public-src/cinema/night-in-the-woods/2.jpg new file mode 100755 index 0000000..20f3a9d Binary files /dev/null and b/public-src/cinema/night-in-the-woods/2.jpg differ diff --git a/public-src/cinema/scott-pilgrim-takes-off/1.jpg b/public-src/cinema/scott-pilgrim-takes-off/1.jpg new file mode 100644 index 0000000..8dab0ac Binary files /dev/null and b/public-src/cinema/scott-pilgrim-takes-off/1.jpg differ diff --git a/public-src/cinema/spider-man-across-the-spider-verse/1.jpg b/public-src/cinema/spider-man-across-the-spider-verse/1.jpg new file mode 100644 index 0000000..ccb16fe Binary files /dev/null and b/public-src/cinema/spider-man-across-the-spider-verse/1.jpg differ diff --git a/public-src/cinema/yokohama-kaidashi-kikou/1.jpg b/public-src/cinema/yokohama-kaidashi-kikou/1.jpg new file mode 100644 index 0000000..8d51ed9 Binary files /dev/null and b/public-src/cinema/yokohama-kaidashi-kikou/1.jpg differ diff --git a/public-src/cinema/yokohama-kaidashi-kikou/2.jpg b/public-src/cinema/yokohama-kaidashi-kikou/2.jpg new file mode 100644 index 0000000..5fbd68a Binary files /dev/null and b/public-src/cinema/yokohama-kaidashi-kikou/2.jpg differ diff --git a/public-src/cinema/yokohama-kaidashi-kikou/3.jpg b/public-src/cinema/yokohama-kaidashi-kikou/3.jpg new file mode 100644 index 0000000..1ad0352 Binary files /dev/null and b/public-src/cinema/yokohama-kaidashi-kikou/3.jpg differ diff --git a/public-src/readme.md b/public-src/readme.md new file mode 100644 index 0000000..0a07f16 --- /dev/null +++ b/public-src/readme.md @@ -0,0 +1 @@ +A collection of original images in high resolution. diff --git a/public/cinema/angels-egg/1.avif b/public/cinema/angels-egg/1.avif new file mode 100644 index 0000000..fe5cf50 Binary files /dev/null and b/public/cinema/angels-egg/1.avif differ diff --git a/public/cinema/john-wick-chapter-4/1.avif b/public/cinema/john-wick-chapter-4/1.avif new file mode 100644 index 0000000..66af1f7 Binary files /dev/null and b/public/cinema/john-wick-chapter-4/1.avif differ diff --git a/public/cinema/night-in-the-woods/1.avif b/public/cinema/night-in-the-woods/1.avif new file mode 100644 index 0000000..65eeb34 Binary files /dev/null and b/public/cinema/night-in-the-woods/1.avif differ diff --git a/public/cinema/night-in-the-woods/2.avif b/public/cinema/night-in-the-woods/2.avif new file mode 100644 index 0000000..dd68225 Binary files /dev/null and b/public/cinema/night-in-the-woods/2.avif differ diff --git a/public/cinema/scott-pilgrim-takes-off/1.avif b/public/cinema/scott-pilgrim-takes-off/1.avif new file mode 100644 index 0000000..a976036 Binary files /dev/null and b/public/cinema/scott-pilgrim-takes-off/1.avif differ diff --git a/public/cinema/spider-man-across-the-spider-verse/1.avif b/public/cinema/spider-man-across-the-spider-verse/1.avif new file mode 100644 index 0000000..30168f8 Binary files /dev/null and b/public/cinema/spider-man-across-the-spider-verse/1.avif differ diff --git a/public/cinema/yokohama-kaidashi-kikou/1.avif b/public/cinema/yokohama-kaidashi-kikou/1.avif new file mode 100644 index 0000000..e75d0b9 Binary files /dev/null and b/public/cinema/yokohama-kaidashi-kikou/1.avif differ diff --git a/public/cinema/yokohama-kaidashi-kikou/2.avif b/public/cinema/yokohama-kaidashi-kikou/2.avif new file mode 100644 index 0000000..d89be59 Binary files /dev/null and b/public/cinema/yokohama-kaidashi-kikou/2.avif differ diff --git a/public/cinema/yokohama-kaidashi-kikou/3.avif b/public/cinema/yokohama-kaidashi-kikou/3.avif new file mode 100644 index 0000000..3dffa8a Binary files /dev/null and b/public/cinema/yokohama-kaidashi-kikou/3.avif differ diff --git a/src/components/Gallery.astro b/src/components/Gallery.astro new file mode 100644 index 0000000..d96a915 --- /dev/null +++ b/src/components/Gallery.astro @@ -0,0 +1,103 @@ +--- +interface Image { + src: string + alt: string +} +interface Props { + images: Image[] +} +const { images } = Astro.props +const rowCount = Math.round(images.length/3) +--- + +
+ +
+ +
+
+
+ + + + diff --git a/src/components/Navbar.astro b/src/components/Navbar.astro index 2b8584d..27b9af0 100644 --- a/src/components/Navbar.astro +++ b/src/components/Navbar.astro @@ -1,6 +1,7 @@