meta content
This commit is contained in:
parent
b9ce32ea8d
commit
90bbdce08f
142
src/books/books.json
Normal file
142
src/books/books.json
Normal file
|
@ -0,0 +1,142 @@
|
|||
{
|
||||
"completed": {
|
||||
"desc": "Individual books, series, and manga I read and enjoyed enough to keep in my collection",
|
||||
"items": [
|
||||
{
|
||||
"main": "I am a Strange Loop",
|
||||
"sub": "Douglass R. Hofstadter",
|
||||
"url": "https://openlibrary.org/works/OL8067922W/I_Am_a_Strange_Loop?edition=key%3A/books/OL24948194M"
|
||||
},
|
||||
{
|
||||
"main": "2001 a Space Odyssey (series)",
|
||||
"sub": "Arthur C. Clarke",
|
||||
"url": "https://openlibrary.org/books/OL18674505M/2001"
|
||||
},
|
||||
{
|
||||
"main": "Zeros and Ones",
|
||||
"sub": "Sadie Plant",
|
||||
"url": "https://openlibrary.org/works/OL937516W/Zeros_and_Ones"
|
||||
},
|
||||
{
|
||||
"main": "Xenofeminism",
|
||||
"sub": "Helen Hester",
|
||||
"url": "https://openlibrary.org/works/OL20586475W/Xenofeminism"
|
||||
},
|
||||
{
|
||||
"main": "Daodejing (Wang Pi's commentary)",
|
||||
"sub": "Lao-Tzu",
|
||||
"url": "https://openlibrary.org/works/OL26585958W/Translation_of_Lao-Tzu%27s_Tao_Te_Ching_and_Wang_Pi%27s_Commentary?edition=key%3A/books/OL37483524M"
|
||||
},
|
||||
{
|
||||
"main": "Groundwork for the Metaphysics of Morals",
|
||||
"sub": "Immanuel Kant",
|
||||
"url": "https://openlibrary.org/works/OL99843W/Grundlegung_zur_Metaphysik_der_Sitten"
|
||||
},
|
||||
{
|
||||
"main": "The Burn Journals",
|
||||
"sub": "Brent Runyon",
|
||||
"url": "https://openlibrary.org/works/OL8043765W/The_Burn_Journals"
|
||||
},
|
||||
{
|
||||
"main": "The Hitch Hikers Guide to the Galaxy (series)",
|
||||
"sub": "Douglas Adams",
|
||||
"url": "https://openlibrary.org/works/OL2163649W/The_Hitch_Hiker%27s_Guide_to_the_Galaxy?edition=key%3A/books/OL32838419M"
|
||||
},
|
||||
{
|
||||
"main": "Six of Crows (duology)",
|
||||
"sub": "Leigh Bardugo",
|
||||
"url": "https://openlibrary.org/works/OL17332479W/Six_of_Crows?edition=key%3A/books/OL32178549M"
|
||||
},
|
||||
{
|
||||
"main": "Berserk (series)",
|
||||
"sub": "三浦建太郎",
|
||||
"url": "https://openlibrary.org/works/OL8988597W/Berserk_Vol._1"
|
||||
},
|
||||
{
|
||||
"main": "Hunter x Hunter (series)",
|
||||
"sub": "冨樫 義博",
|
||||
"url": "https://openlibrary.org/works/OL8215148W/Hunter_x_Hunter_Volume_1"
|
||||
}
|
||||
]
|
||||
},
|
||||
"backlog": {
|
||||
"desc": "Works sitting on my shelf right now waiting to be read",
|
||||
"items": [
|
||||
{
|
||||
"main": "Gödel, Escher, Bach",
|
||||
"sub": "Douglas R. Hofstadter",
|
||||
"url": "https://openlibrary.org/works/OL716850W/G%C3%B6del_Escher_Bach"
|
||||
},
|
||||
{
|
||||
"main": "Snow Crash",
|
||||
"sub": "Neal Stephenson",
|
||||
"url": "https://openlibrary.org/works/OL38501W/Snow_Crash"
|
||||
},
|
||||
{
|
||||
"main": "Dune",
|
||||
"sub": "Frank Herbert",
|
||||
"url": "https://openlibrary.org/works/OL893415W/Dune?edition=key%3A/books/OL26242482M"
|
||||
},
|
||||
{
|
||||
"main": "Catch 22",
|
||||
"sub": "Joseph Heller",
|
||||
"url": "https://openlibrary.org/works/OL29300587W/Catch_22"
|
||||
},
|
||||
{
|
||||
"main": "The End of History and the Last Man",
|
||||
"sub": "Francis Fukuyama",
|
||||
"url": "https://openlibrary.org/works/OL2670501W/The_End_of_History_and_the_Last_Man"
|
||||
},
|
||||
{
|
||||
"main": "Spiritual Writings",
|
||||
"sub": "Søren Kierkegaard",
|
||||
"url": "https://openlibrary.org/works/OL112700W/Provocations?edition=key%3A/books/OL3319828M"
|
||||
},
|
||||
{
|
||||
"main": "Gravity's Rainbow",
|
||||
"sub": "Thomas Pynchon",
|
||||
"url": "https://openlibrary.org/works/OL24784277W/Beyond_Good_and_Evil"
|
||||
},
|
||||
{
|
||||
"main": "Beyond Good and Evil",
|
||||
"sub": "Friedrich Nietzsche",
|
||||
"url": "https://openlibrary.org/works/OL24784277W/Beyond_Good_and_Evil"
|
||||
}
|
||||
]
|
||||
},
|
||||
"novelties": {
|
||||
"desc": "Books I will probably never read, but were interesting enough to collect anyway",
|
||||
"items": [
|
||||
{
|
||||
"main": "Raster Graphics Handbook",
|
||||
"sub": "Van Nostrand Reinhold",
|
||||
"url": "https://openlibrary.org/works/OL16444194W/Raster_graphics_handbook?edition=key%3A/books/OL2849584M"
|
||||
},
|
||||
{
|
||||
"main": "Fanged Noumena",
|
||||
"sub": "Nick Land",
|
||||
"url": "https://openlibrary.org/works/OL20705619W/Fanged_Noumena"
|
||||
},
|
||||
{
|
||||
"main": "Beginning Flash Game Programming for Dummies",
|
||||
"sub": "Andy Harris",
|
||||
"url": "https://openlibrary.org/works/OL4110556W/Beginning_Flash_Game_Programming_For_Dummies"
|
||||
},
|
||||
{
|
||||
"main": "The Infinite and the Final Cause for Creation",
|
||||
"sub": "Emanuel Swedenborg",
|
||||
"url": "https://openlibrary.org/works/OL33307W/Outlines_of_a_philosophical_argument_on_the_infinite"
|
||||
},
|
||||
{
|
||||
"main": "Compilers: Principles, Techniques, and Tools (1st ed)",
|
||||
"sub": "Alfred V. Aho",
|
||||
"url": "https://openlibrary.org/works/OL3509433W/Compilers_principles_techniques_and_tools"
|
||||
},
|
||||
{
|
||||
"main": "Hypermedia Systems",
|
||||
"sub": "Carson Gross",
|
||||
"url": "https://openlibrary.org/works/OL38674782W/Hypermedia_Systems?edition=key%3A/books/OL53364657M"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
|
@ -1,60 +1,5 @@
|
|||
# books
|
||||
My favorite book is always the last one I read (unless it sucked)
|
||||
## completed
|
||||
Individual books, series, and manga I read and enjoyed enough to keep in my
|
||||
collection
|
||||
* [I am a Strange Loop](https://openlibrary.org/works/OL8067922W/I_Am_a_Strange_Loop?edition=key%3A/books/OL24948194M) -
|
||||
_Douglas R. Hofstadter_
|
||||
* [2001 a Space Odyssey (series)](https://openlibrary.org/books/OL18674505M/2001) -
|
||||
_Arthur C. Clarke_
|
||||
* [Zeros and Ones](https://openlibrary.org/works/OL937516W/Zeros_and_Ones) -
|
||||
_Sadie Plant_
|
||||
* [Xenofeminism](https://openlibrary.org/works/OL20586475W/Xenofeminism) -
|
||||
_Helen Hester_
|
||||
* [Daodejing (Wang Pi's commentary)](https://openlibrary.org/works/OL26585958W/Translation_of_Lao-Tzu%27s_Tao_Te_Ching_and_Wang_Pi%27s_Commentary?edition=key%3A/books/OL37483524M) -
|
||||
_Lao-Tzu_
|
||||
* [Groundwork for the Metaphysics of Morals](https://openlibrary.org/works/OL99843W/Grundlegung_zur_Metaphysik_der_Sitten) -
|
||||
_Immanuel Kant_
|
||||
* [The Burn Journals](https://openlibrary.org/works/OL8043765W/The_Burn_Journals) -
|
||||
_Brent Runyon_
|
||||
* [The Hitch Hikers Guide to the Galaxy (series)](https://openlibrary.org/works/OL2163649W/The_Hitch_Hiker%27s_Guide_to_the_Galaxy?edition=key%3A/books/OL32838419M) -
|
||||
_Douglas Adams_
|
||||
* [Six of Crows (duology)](https://openlibrary.org/works/OL17332479W/Six_of_Crows?edition=key%3A/books/OL32178549M) -
|
||||
_Leigh Bardugo_
|
||||
* [Berserk (series)](https://openlibrary.org/works/OL8988597W/Berserk_Vol._1) -
|
||||
_三浦建太郎_
|
||||
* [Hunter x Hunter (series)](https://openlibrary.org/works/OL8215148W/Hunter_x_Hunter_Volume_1) -
|
||||
_冨樫 義博_
|
||||
## backlog
|
||||
Works sitting on my shelf right now waiting to be read
|
||||
* [Gödel, Escher, Bach](https://openlibrary.org/works/OL716850W/G%C3%B6del_Escher_Bach) -
|
||||
_Douglas R. Hofstadter_
|
||||
* [Snow Crash](https://openlibrary.org/works/OL38501W/Snow_Crash) -
|
||||
_Neal Stephenson_
|
||||
* [Dune](https://openlibrary.org/works/OL893415W/Dune?edition=key%3A/books/OL26242482M) -
|
||||
_Frank Herbert_
|
||||
* [Catch 22](https://openlibrary.org/works/OL29300587W/Catch_22) -
|
||||
_Joseph Heller_
|
||||
* [The End of History and the Last Man](https://openlibrary.org/works/OL2670501W/The_End_of_History_and_the_Last_Man) -
|
||||
_Francis Fukuyama_
|
||||
* [Spiritual Writings](https://openlibrary.org/works/OL112700W/Provocations?edition=key%3A/books/OL3319828M) -
|
||||
_Søren Kierkegaard_
|
||||
* [Gravity's Rainbow](https://openlibrary.org/works/OL2636675W/Gravity%27s_Rainbow) -
|
||||
_Thomas Pynchon_
|
||||
* [Beyond Good and Evil](https://openlibrary.org/works/OL24784277W/Beyond_Good_and_Evil) -
|
||||
_Friedrich Nietzsche_
|
||||
## novelties
|
||||
Books I will probably never read, but were interesting
|
||||
enough to collect anyway
|
||||
* [Raster Graphics Handbook](https://openlibrary.org/works/OL16444194W/Raster_graphics_handbook?edition=key%3A/books/OL2849584M) -
|
||||
_Van Nostrand Reinhold_
|
||||
* [Fanged Noumena](https://openlibrary.org/works/OL20705619W/Fanged_Noumena) -
|
||||
_Nick Land_
|
||||
* [Beginning Flash Game Programming for Dummies](https://openlibrary.org/works/OL4110556W/Beginning_Flash_Game_Programming_For_Dummies) -
|
||||
_Andy Harris_
|
||||
* [The Infinite and the Final Cause for Creation](https://openlibrary.org/works/OL33307W/Outlines_of_a_philosophical_argument_on_the_infinite) -
|
||||
_Emanuel Swedenborg_
|
||||
* [Compilers: Principles, Techniques, and Tools (1st ed)](https://openlibrary.org/works/OL3509433W/Compilers_principles_techniques_and_tools) -
|
||||
_Alfred V. Aho_
|
||||
* [Hypermedia Systems](https://openlibrary.org/works/OL38674782W/Hypermedia_Systems?edition=key%3A/books/OL53364657M) -
|
||||
_Carson Gross_
|
||||
|
||||
<json-data src="/books/books.json" show="list"></json-data>
|
||||
|
||||
|
|
|
@ -46,37 +46,12 @@ table, th, td {
|
|||
align-content: center;
|
||||
}
|
||||
|
||||
a {
|
||||
a, a:visited {
|
||||
color: #df3e23;
|
||||
/* font-style: italic; */
|
||||
font-weight: bold;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #df3e23;
|
||||
font-style: italic;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:focus:before,a:active:before,a:hover:before {
|
||||
content: "[";
|
||||
font-style: normal;
|
||||
color: black;
|
||||
outline: none;
|
||||
outline-color: transparent;
|
||||
outline-style: none;
|
||||
}
|
||||
|
||||
a:focus:after,a:active:after,a:hover:after {
|
||||
content: "]";
|
||||
font-style: normal;
|
||||
color: black;
|
||||
outline: none;
|
||||
outline-color: transparent;
|
||||
outline-style: none;
|
||||
}
|
||||
|
||||
p,ul {
|
||||
margin-top: 0.3em;
|
||||
}
|
||||
|
@ -109,7 +84,11 @@ figcaption {
|
|||
line-height: 110%;
|
||||
}
|
||||
|
||||
img {
|
||||
img[src] {
|
||||
border-radius: 0.25em;
|
||||
}
|
||||
|
||||
figure img {
|
||||
display: block;
|
||||
width: 100%
|
||||
}
|
||||
|
|
16
src/hyperspace/index.md
Normal file
16
src/hyperspace/index.md
Normal file
|
@ -0,0 +1,16 @@
|
|||
# hyperspace
|
||||
## interesting sites
|
||||
* [dimden](https://dimden.dev/)
|
||||
* [zenmai studio](https://zenmaistudio.com/)
|
||||
* [oddity commoddity](https://odditycommoddity.neocities.org/)
|
||||
* [texture town](https://textures.neocities.org/)
|
||||
* [cabbage sorter](https://cabbagesorter.neocities.org/)
|
||||
* [mr bashful](https://mrbashful.com/)
|
||||
* [sad girls club](https://sadgirlsclub.wtf/)
|
||||
* [BJ's website](https://beedge.neocities.org/)
|
||||
* [angels are mathematical](https://angelsaremathematical.neocities.org/)
|
||||
* [psychocool](https://psychcool.org/links)
|
||||
* [nenrikido](https://nenrikido.neocities.org/)
|
||||
* [incessantpain](https://incessantpain.neocities.org/)
|
||||
## cool webrings
|
||||
* [neocratives](http://neocreatives.byethost5.com/)
|
22
src/index.md
22
src/index.md
|
@ -6,11 +6,19 @@ am from the United States, where I was born in 2003. In 2025 I will receive my
|
|||
bachellors in Computer Science from the [University of Texas at San
|
||||
Antonio](https://utsa.edu).
|
||||
|
||||
|
||||
## site map
|
||||
* [my git server](https://git.lgatlin.dev/logan) - _personal code forge_
|
||||
* [software](/software) - _thoughts on programming_
|
||||
* [books](/books) - _reading corner_
|
||||
* [music](/music) - _sick tunes_
|
||||
* [toybox](/toys) - _awesome web apps_
|
||||
* [hyperspace](/hyperspace) - _everything world wide web_
|
||||
* [my git server](https://git.lgatlin.dev/logan) - _Private forgejo instance_
|
||||
* [software](/software) - _Thoughts on programming_
|
||||
* [books](/books) - _Reading corner_
|
||||
* [music](/music) - _Sick tunes_
|
||||
* [toybox](/toys) - _Awesome web apps_
|
||||
* [hyperspace](/hyperspace) - _Everything world wide web_
|
||||
|
||||
## meta
|
||||
* [server info](/server-info.html) - _Technical information about this server_
|
||||
* [style guide](/style-guide.html) - _Formatting rules for this site_
|
||||
|
||||
<section>
|
||||
<img src="favicon.gif" style="width: 10em;"> <br>
|
||||
<em>If you're not remembered, then you never existed</em>
|
||||
</section>
|
||||
|
|
|
@ -1,10 +1,18 @@
|
|||
async function figureGrid(jsonURL) {
|
||||
const response = await fetch(jsonURL);
|
||||
const json = await response.json();
|
||||
class JsonData extends HTMLElement {
|
||||
static observedAttributes = ["src", "show"];
|
||||
constructor() {
|
||||
super();
|
||||
}
|
||||
|
||||
static grid(json) {
|
||||
let html = "";
|
||||
for (const headerName in json) {
|
||||
html = html.concat("<section>")
|
||||
let entries = json[headerName];
|
||||
html = html.concat(`
|
||||
<h2>${headerName}</h2>
|
||||
<p>${json[headerName].desc || ""}</p>
|
||||
<section>
|
||||
`);
|
||||
let entries = json[headerName].items || [];
|
||||
for (let i = 0; i < entries.length; i++) {
|
||||
let entry = entries[i];
|
||||
html = html.concat(
|
||||
|
@ -20,20 +28,58 @@ async function figureGrid(jsonURL) {
|
|||
html = html.concat("</section>")
|
||||
}
|
||||
return html;
|
||||
}
|
||||
}
|
||||
|
||||
class FigureGrid extends HTMLElement {
|
||||
static observedAttributes = ["src"];
|
||||
constructor() {
|
||||
super();
|
||||
static list(json) {
|
||||
let html = "";
|
||||
for (const headerName in json) {
|
||||
html = html.concat(`
|
||||
<h2>${headerName}</h2>
|
||||
<p>${json[headerName].desc || ""}</p>
|
||||
`);
|
||||
let entries = json[headerName].items || [];
|
||||
html = html.concat("<ul>")
|
||||
for (let i = 0; i < entries.length; i++) {
|
||||
let entry = entries[i];
|
||||
html = html.concat(`<li>
|
||||
<a href="${entry.url}">
|
||||
<b>${entry.main}</b>
|
||||
</a> -
|
||||
<em>${entry.sub}</em>
|
||||
</li>`);
|
||||
}
|
||||
html = html.concat("</ul>")
|
||||
}
|
||||
return html;
|
||||
}
|
||||
|
||||
async connectedCallback() {
|
||||
if (this.src == undefined) {
|
||||
this.innerHTML = "src is undefined";
|
||||
return;
|
||||
}
|
||||
const response = await fetch(this.src);
|
||||
const json = await response.json();
|
||||
switch(this.show) {
|
||||
case "grid":
|
||||
this.innerHTML = JsonData.grid(json);
|
||||
break;
|
||||
case "list":
|
||||
this.innerHTML = JsonData.list(json);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
};
|
||||
}
|
||||
|
||||
async attributeChangedCallback(name, oldValue, newValue) {
|
||||
if (name == "src") {
|
||||
this.innerHTML = await figureGrid(newValue);
|
||||
this.src = newValue;
|
||||
} else if (name == "show") {
|
||||
this.show = newValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
customElements.define("figure-grid", FigureGrid);
|
||||
customElements.define("json-data", JsonData);
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{
|
||||
"chill": [
|
||||
"chill": {
|
||||
"items": [
|
||||
{
|
||||
"main": "Cosmos",
|
||||
"sub": "Yuji Ohno",
|
||||
|
@ -50,8 +51,10 @@
|
|||
"sub": "CASIOPEA",
|
||||
"url": "/res/albums/mint_jams.webp"
|
||||
}
|
||||
],
|
||||
"experimental": [
|
||||
]
|
||||
},
|
||||
"experimental": {
|
||||
"items": [
|
||||
{
|
||||
"main": "Departing",
|
||||
"sub": "Jesus Molina",
|
||||
|
@ -92,8 +95,10 @@
|
|||
"sub": "Chuck Salamone",
|
||||
"url": "/res/albums/hylics2.webp"
|
||||
}
|
||||
],
|
||||
"electronic": [
|
||||
]
|
||||
},
|
||||
"electronic": {
|
||||
"items": [
|
||||
{
|
||||
"main": "H.A.Q.Q.",
|
||||
"sub": "Liturgy",
|
||||
|
@ -134,8 +139,10 @@
|
|||
"sub": "Graham Kartna",
|
||||
"url": "/res/albums/tmp2.webp"
|
||||
}
|
||||
],
|
||||
"high energy": [
|
||||
]
|
||||
},
|
||||
"high energy": {
|
||||
"items": [
|
||||
{
|
||||
"main": "Each and Every Word Leaves Me Here Alone",
|
||||
"sub": "Foreground Eclipse",
|
||||
|
@ -161,8 +168,10 @@
|
|||
"sub": "Polyphia",
|
||||
"url": "/res/albums/new_levels_new_devils.webp"
|
||||
}
|
||||
],
|
||||
"misc": [
|
||||
]
|
||||
},
|
||||
"misc": {
|
||||
"items": [
|
||||
{
|
||||
"main": "27 Demos",
|
||||
"sub": "Margo Guryan ",
|
||||
|
@ -204,4 +213,5 @@
|
|||
"url": "/res/albums/oncle_jazz.webp"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,4 +3,4 @@ Music is a huge passion of mine. I prefer listening to albums in full from
|
|||
start to finish in order. My favorite albums are usually experimental, unique,
|
||||
or have a particular theme they explore
|
||||
|
||||
<figure-grid src="/music/albums.json"></figure-grid>
|
||||
<json-data src="/music/albums.json" show="grid"></json-data>
|
||||
|
|
BIN
src/res/AtkinsonHyperlegible-Bold.ttf
Normal file
BIN
src/res/AtkinsonHyperlegible-Bold.ttf
Normal file
Binary file not shown.
14
src/server-info.md
Normal file
14
src/server-info.md
Normal file
|
@ -0,0 +1,14 @@
|
|||
# server info
|
||||
## hardware
|
||||
I host this website locally on an [Intel
|
||||
NUC](https://www.intel.com/content/dam/support/us/en/documents/mini-pcs/NUC8i3BE_NUC8i5BE_NUC8i7BE_TechProdSpec.pdf).
|
||||
It runs an i3-8109U 4 core 3.6 GHz processor, 32 GB of RAM, and 120 GB SSD
|
||||
storage.
|
||||
## software
|
||||
Pages and resources are served using Apache. I write pages using a custom
|
||||
subset of markup, which gets compiled to static HTML files using my [simple
|
||||
build system](https://git.lgatlin.dev/logan/mdconvert). Deployments are handled
|
||||
automatically using git hooks. I host my own [forgejo](https://forgejo.org/)
|
||||
git instance on the same machine, which makes continuous integration simple and
|
||||
fast
|
||||
|
34
src/style-guide.md
Normal file
34
src/style-guide.md
Normal file
|
@ -0,0 +1,34 @@
|
|||
# style guide
|
||||
Having a consistent design language is very important to me. This document lays
|
||||
out specific stylistic rules for pages on this site. Human error is always a
|
||||
factor, and so these rules are more prescription than description
|
||||
## headings
|
||||
One heading should appear at the top of every page. Text should contain only
|
||||
lowercase ascii alphabetic characters. It should represent the title of the
|
||||
page, and match the URL tail (substituting spaces for hyphens, and sans
|
||||
file extension)
|
||||
## subheadings
|
||||
Pages may have any number of subheadings under the top level heading. Text
|
||||
should contain only lowercase ascii alphabetic characters. A subheading must
|
||||
never be immediately followed by another subheading
|
||||
## paragraphs
|
||||
Paragraph text should be written in complete grammatically correct sentences,
|
||||
and may use any non-emoji unicode characters. The last sentence in a paragraph
|
||||
should not end in a period if the paragraph is followed by anything other than
|
||||
another paragraph
|
||||
## hyperlinks
|
||||
Hyperlinks may appear inline in any text other than headings and subheadings.
|
||||
The hyperlink text should be descriptive of the page it is linking to, and
|
||||
never the same as the link itself (e.g. [logan's site](/) not
|
||||
[https://lgatlin.dev/](/)). Internal links should have the same text as the
|
||||
page title they link to. Hyperlinks should be used liberally, and regularly
|
||||
audited for dead or redirected targets
|
||||
## lists
|
||||
List items should begin with a title that is all lowercase, optionally followed
|
||||
by a hyphen ('-') and a subtitle or attribution. The subtitle or attribution
|
||||
should start with a capital letter and contain no punctuation
|
||||
## collage
|
||||
A collage consists of a set of images, optionally with a title and subtitle
|
||||
below each image. Collages should not be on a fixed grid, and should rearrange
|
||||
themselves to best fit the screen dimensions. Image titles may contain
|
||||
hyperlinks, but images may never be hyperlinks themselves
|
Loading…
Reference in a new issue