Some art, wip homepage, wip links
							
								
								
									
										29
									
								
								.eleventy.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,29 @@
 | 
			
		|||
const Image = require("@11ty/eleventy-img");
 | 
			
		||||
const imagePath = "./collection";
 | 
			
		||||
const imageOutputPath = "./_site/img/";
 | 
			
		||||
const imageFormats = ["auto"];
 | 
			
		||||
const imageSizes = [650];
 | 
			
		||||
 | 
			
		||||
module.exports = function (eleventyConfig) {
 | 
			
		||||
  eleventyConfig.addShortcode(
 | 
			
		||||
    "image",
 | 
			
		||||
    async function (src, alt, sizes, classes = "") {
 | 
			
		||||
      let metadata = await Image(`${imagePath}/${src}`, {
 | 
			
		||||
        widths: imageSizes,
 | 
			
		||||
        formats: imageFormats,
 | 
			
		||||
        outputDir: imageOutputPath,
 | 
			
		||||
      });
 | 
			
		||||
 | 
			
		||||
      let imageAttributes = {
 | 
			
		||||
        alt,
 | 
			
		||||
        sizes,
 | 
			
		||||
        loading: "lazy",
 | 
			
		||||
        decoding: "async",
 | 
			
		||||
        class: classes,
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      // You bet we throw an error on a missing alt (alt="" works okay)
 | 
			
		||||
      return Image.generateHTML(metadata, imageAttributes);
 | 
			
		||||
    }
 | 
			
		||||
  );
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										34
									
								
								_includes/index.njk
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,34 @@
 | 
			
		|||
---
 | 
			
		||||
eleventyImport:
 | 
			
		||||
  collections: ["art"]
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
<!doctype html>
 | 
			
		||||
<html lang="en">
 | 
			
		||||
  <head>
 | 
			
		||||
    <meta charset="utf-8">
 | 
			
		||||
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
 | 
			
		||||
    <link href="/app.css" rel="stylesheet">
 | 
			
		||||
    <title>{{ title }}</title>
 | 
			
		||||
  </head>
 | 
			
		||||
  <body class="bg-gray-700 text-gray-200">
 | 
			
		||||
    <header class="max-w-screen-xl py-48 px-4 mx-auto">
 | 
			
		||||
      <h1 class="font-serif text-center text-4xl sm:text-6xl md:text-8xl mb-2">
 | 
			
		||||
        <span class="text-ochre-300">g</span>aiety's <span class="text-beaver-400">g</span>allery
 | 
			
		||||
      </h1>
 | 
			
		||||
      <h2 class="font-serif text-center text-lg sm:text-xl md:text-2xl">photography, painting, sketches and illustrations</h2>
 | 
			
		||||
    </header>
 | 
			
		||||
 | 
			
		||||
    <main class="max-w-screen-xl p-4 mx-auto">
 | 
			
		||||
        <ul class="gap-3 columns-1 sm:columns-2 md:columns-3 column-fill:_balance]">
 | 
			
		||||
        {%- for art in collections.art -%}
 | 
			
		||||
          <li>
 | 
			
		||||
            <a href={{ art.url }}>
 | 
			
		||||
              {% image art.data.src, art.data.alt, "(min-width: 30em) 50vw, 100vw", "rounded mb-3 drop-shadow-lg" %}
 | 
			
		||||
            </a>
 | 
			
		||||
          </li>
 | 
			
		||||
        {%- endfor -%}
 | 
			
		||||
        </ul>
 | 
			
		||||
    </main>
 | 
			
		||||
  </body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										3
									
								
								app.css
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,3 @@
 | 
			
		|||
@tailwind base;
 | 
			
		||||
@tailwind components;
 | 
			
		||||
@tailwind utilities;
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								collection/art-erotica-2019.jpg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.1 MiB  | 
							
								
								
									
										6
									
								
								collection/art-erotica-2019.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
---
 | 
			
		||||
tags: art
 | 
			
		||||
title: Art Erotica 2019
 | 
			
		||||
alt: TODO
 | 
			
		||||
src: art-erotica-2019.jpg
 | 
			
		||||
---
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								collection/falling.jpg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.3 MiB  | 
							
								
								
									
										6
									
								
								collection/falling.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
---
 | 
			
		||||
tags: art
 | 
			
		||||
title: Falling
 | 
			
		||||
alt: TODO
 | 
			
		||||
src: falling.jpg
 | 
			
		||||
---
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								collection/leaf.jpg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.4 MiB  | 
							
								
								
									
										6
									
								
								collection/leaf.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
---
 | 
			
		||||
tags: art
 | 
			
		||||
title: Elephant Ear
 | 
			
		||||
alt: TODO
 | 
			
		||||
src: leaf.jpg
 | 
			
		||||
---
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								collection/like-a-mirror.jpg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 5.6 MiB  | 
							
								
								
									
										6
									
								
								collection/like-a-mirror.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
---
 | 
			
		||||
tags: art
 | 
			
		||||
title: Like a Mirror
 | 
			
		||||
alt: TODO
 | 
			
		||||
src: like-a-mirror.jpg
 | 
			
		||||
---
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								collection/line-rider.jpg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.6 MiB  | 
							
								
								
									
										6
									
								
								collection/line-rider.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
---
 | 
			
		||||
tags: art
 | 
			
		||||
title: Line Rider
 | 
			
		||||
alt: TODO
 | 
			
		||||
src: line-rider.jpg
 | 
			
		||||
---
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								collection/metal-skies.jpg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 3 MiB  | 
							
								
								
									
										6
									
								
								collection/metal-skies.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
---
 | 
			
		||||
tags: art
 | 
			
		||||
title: Metal Skies
 | 
			
		||||
alt: TODO
 | 
			
		||||
src: metal-skies.jpg
 | 
			
		||||
---
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								collection/truths-without-mental-sight.jpg
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 459 KiB  | 
							
								
								
									
										12
									
								
								collection/truths-without-mental-sight.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,12 @@
 | 
			
		|||
---
 | 
			
		||||
tags: art
 | 
			
		||||
title: Truths Without Mental Sight
 | 
			
		||||
alt: TODO
 | 
			
		||||
src: truths-without-mental-sight.jpg
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
> I have no mind's eye
 | 
			
		||||
> Digitgrade legs carry me
 | 
			
		||||
> Soft wagging tail sways
 | 
			
		||||
> Ear tips floppy and listening
 | 
			
		||||
> Yet, I have a clear vision
 | 
			
		||||
							
								
								
									
										4
									
								
								index.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,4 @@
 | 
			
		|||
---
 | 
			
		||||
layout: index.njk
 | 
			
		||||
title: gaiety's gallery
 | 
			
		||||
---
 | 
			
		||||
							
								
								
									
										3724
									
								
								package-lock.json
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										24
									
								
								package.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,24 @@
 | 
			
		|||
{
 | 
			
		||||
  "name": "gallery",
 | 
			
		||||
  "version": "1.0.0",
 | 
			
		||||
  "description": "",
 | 
			
		||||
  "main": "index.js",
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "start": "concurrently npm:start:*",
 | 
			
		||||
    "serve": "concurrently npm:serve:*",
 | 
			
		||||
    "start:tailwindcss": "npx tailwindcss -i ./app.css -o ./_site/app.css",
 | 
			
		||||
    "start:eleventy": "npx @11ty/eleventy",
 | 
			
		||||
    "serve:tailwindcss": "npx tailwindcss -i ./app.css -o ./_site/app.css --watch",
 | 
			
		||||
    "serve:eleventy": "npx @11ty/eleventy --serve",
 | 
			
		||||
    "test": "echo \"Error: no test specified\" && exit 1"
 | 
			
		||||
  },
 | 
			
		||||
  "keywords": [],
 | 
			
		||||
  "author": "",
 | 
			
		||||
  "license": "ISC",
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
    "@11ty/eleventy": "^2.0.1",
 | 
			
		||||
    "@11ty/eleventy-img": "^3.1.0",
 | 
			
		||||
    "concurrently": "^8.0.1",
 | 
			
		||||
    "tailwindcss": "^3.3.2"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										59
									
								
								tailwind.config.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
				
			
			@ -0,0 +1,59 @@
 | 
			
		|||
/** @type {import('tailwindcss').Config} */
 | 
			
		||||
module.exports = {
 | 
			
		||||
  content: ["./**/*.md", "./_includes/*.njk"],
 | 
			
		||||
  theme: {
 | 
			
		||||
    extend: {
 | 
			
		||||
      colors: {
 | 
			
		||||
        gray: {
 | 
			
		||||
          50: "#f9faf9",
 | 
			
		||||
          100: "#f1f1f2",
 | 
			
		||||
          200: "#dfdee2",
 | 
			
		||||
          300: "#bbbbc0",
 | 
			
		||||
          400: "#909297",
 | 
			
		||||
          500: "#726f71",
 | 
			
		||||
          600: "#5b5454",
 | 
			
		||||
          700: "#453f3f",
 | 
			
		||||
          800: "#2f2a2c",
 | 
			
		||||
          900: "#1c191c",
 | 
			
		||||
        },
 | 
			
		||||
        beaver: {
 | 
			
		||||
          50: "#fcfbf9",
 | 
			
		||||
          100: "#f9f1eb",
 | 
			
		||||
          200: "#f2d7d4",
 | 
			
		||||
          300: "#e1aeab",
 | 
			
		||||
          400: "#d2807e",
 | 
			
		||||
          500: "#bc5c59",
 | 
			
		||||
          600: "#9e423e",
 | 
			
		||||
          700: "#78312e",
 | 
			
		||||
          800: "#522120",
 | 
			
		||||
          900: "#311413",
 | 
			
		||||
        },
 | 
			
		||||
        slate: {
 | 
			
		||||
          50: "#f7f9f8",
 | 
			
		||||
          100: "#e9f0f4",
 | 
			
		||||
          200: "#cedfe7",
 | 
			
		||||
          300: "#a2beca",
 | 
			
		||||
          400: "#6e98a7",
 | 
			
		||||
          500: "#547785",
 | 
			
		||||
          600: "#445d69",
 | 
			
		||||
          700: "#364650",
 | 
			
		||||
          800: "#262f38",
 | 
			
		||||
          900: "#171d25",
 | 
			
		||||
        },
 | 
			
		||||
        ochre: {
 | 
			
		||||
          50: "#fbfaf6",
 | 
			
		||||
          100: "#f9f0d2",
 | 
			
		||||
          200: "#f2daa3",
 | 
			
		||||
          300: "#dfb36f",
 | 
			
		||||
          400: "#c98842",
 | 
			
		||||
          500: "#ae6625",
 | 
			
		||||
          600: "#914c18",
 | 
			
		||||
          700: "#6e3914",
 | 
			
		||||
          800: "#4c2710",
 | 
			
		||||
          900: "#31180b",
 | 
			
		||||
        },
 | 
			
		||||
      },
 | 
			
		||||
    },
 | 
			
		||||
  },
 | 
			
		||||
  plugins: [],
 | 
			
		||||
};
 | 
			
		||||