commit e34483c431b3154ee58c52201f969563c64effb9 Author: ydreniv Date: Wed Jan 25 08:55:24 2023 +0000 feat(init): Initial dump commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0a24bc5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +pushl-cache + diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..850249a --- /dev/null +++ b/Makefile @@ -0,0 +1,8 @@ +all: build pushl + +build: + yes | ~/zola build -o ~/public_html + +pushl: + . /home/ydreniv/venv-pushl/bin/activate ; pushl -c pushl-cache/ "https://tilde.town/~ydreniv/atom.xml" + diff --git a/README.md b/README.md new file mode 100644 index 0000000..a3c8090 --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# README + +## External resources + +* [Old English](https://www.dafont.com/fr/old-london.font) by Dieter Steffmann diff --git a/authors.yaml b/authors.yaml new file mode 100644 index 0000000..ccd72eb --- /dev/null +++ b/authors.yaml @@ -0,0 +1,3 @@ +authors: + - name: Ydreniv + url: "https://tilde.town/~ydreniv" diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..87f7b56 --- /dev/null +++ b/config.toml @@ -0,0 +1,18 @@ +# The URL the site will be built for +base_url = "https://tilde.town/~ydreniv" + +# Whether to automatically compile all Sass files in the sass directory +compile_sass = true + +# Whether to build a search index to be used later on by a JavaScript library +build_search_index = false + +generate_feed = true + +[markdown] +# Whether to do syntax highlighting +# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola +highlight_code = true + +[extra] +# Put all your custom variables here diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..7c06fe6 --- /dev/null +++ b/content/_index.md @@ -0,0 +1,69 @@ ++++ +title = " Welcome to my ~~~~~~~~ homepage !" +template = "index.html" +date = "2022-10-26" +updated = "2022-12-14" +extra = { "theme" = "pink-right.css" } ++++ + +
+ +## Basic stuff about me + +* I like rocks, especially the imprints of long gone species. +* I like metals, especially when it's black, heavy and dead. +I have a [music blog](https://masuksa.github.io/blog/). +* I like birds. I should put a bird picture somewhere. +* I like doing miniature stuff. +* I have a [blog on the subject](https://minis.kestrels-and-roses.rocks/). +It's all in french, but I'd like to translate it eventually. +* I like computers, but I don't like the modern web. +* I think you can use they/them pronouns for me, but he/him or she/her would be fine too. +* I speak french, english, a bit of german and esperanto, and I know a couple morse and japanese stuff. +* I also have a [homepage](https://matthias4217.github.io/) that I need to update. +* You can find the feed of + [Webmentions](https://en.wikipedia.org/wiki/WebMention) to this website here : + [Webmention.io](https://webmention.io/api/mentions.html?token=acmD8qoePApJNDAgaftB8Q) + +
+ +
+ +## Contact + +* tilde.town : ~ydreniv + +
+ +
+ +## What to do on Tilde Town ? + +* I'd like to do some visual HTML/CSS experiments, starting with this website. +* I will use a static site generator, but I don't know if I'll use Zola or something else. +* I could host a twtxt account here. +* RSS feeds : To use with [Feels](https://tilde.town/wiki/socializing/feels.html) +(for quick general updates) or after setting a more serious blog. + +
+ +
+ +## Questions + +*These are some questions I ask myself.* +*If you have answers, even partial ones, feel free to send them to me !* + +* *How do electric cars compare to thermic ones, taking into account all their lifespan, + including the construction, use and recycling.* + Of course, this is a complex question, requiring several parameters : which car model ? + how is electricity produced ? where do the resources come from ? + In terms of pure energy, thermic cars are much more efficient than electric cars, but + the electricity may be produced from renewable energy, which would make them better at + first glance. + But how much better ? + And what about the cost of production and disposal ? +* *From how many people is it better to use the train instead of cars ?* + +
+ diff --git a/content/blog/2022-11-02-hello-world.md b/content/blog/2022-11-02-hello-world.md new file mode 100644 index 0000000..1018ac7 --- /dev/null +++ b/content/blog/2022-11-02-hello-world.md @@ -0,0 +1,124 @@ ++++ +title = "Hello World" +date = "2022-11-02" +updated = "2022-11-02" +[extra] +authors = ["Ydreniv"] ++++ + +Hello ! +This is my first blog post on this website. +I will talk about my plans for it. + +## Current state of blogging + +Let's begin by taking a look at my current blogging situation. +First off, I currently maintain two blogs : +[Minis](https://minis.kestrels-and-roses.rocks), about wargaming and +miniatures, and [I am the Fog in the Forest](https://masuksa.github.io/blog), +a music blog. +However, I also have a [personal website](https://matthias4217.github.io), and +this Tilde website as well. +I am planning to transfer my personal website from +[Jekyll](https://jekyllrb.com/) to [Zola](https://www.getzola.org/), and I will +probably setup a blog on it then. +But as you can see with this post, I am also starting a Tilde blog. +I'm worried that I'll be able to keep up with so many platforms. +However, I'm not planning to regularly update my personal or Tilde blog. +Concerning *Minis*, I'm trying to post a new article every week. +I haven't been able to follow this schedule, but I've posted more than an +article per month on average, so I'm okay with this. +As for *I am the Fog in the Forest*, until yesterday, it had had no update for +more than a year. +There are still a couple of technical things to work on, and this has bothered +me, to the pouint of not publishing anything. +So adding to more blogs may not be the best idea ever. +I'll see how that goes. + +In the future, I am still not sure what I will post on which platform. +I know that I will try to regularly write pieces of fiction. +I also want to talk a bit about computer stuff. +Yet I am not sure where to put these two. +They are well within the genre of content of [Tilde Town](https://tilde.town), +so would fit nicely there. +But I want to store my projects, whether technical or artistic on my own +server, and so talking about them there would make more sense. +Thus, my plan is to post news of my projects on my personal server. +This would also serve as a sort of portfolio. +On this Tilde I would mostly talk about this Tilde, and maybe some silly +experiments, smaller pieces of things and various stuff. +As you can see, I don't have any clear plan yet, but I'll get there. + +## The future of this site + +Given that you're reading my blog, you may already have noticed that there are +several pages on my Tilde site. +None are truly finished, but I've fleshed out the basic concept. +I want every single page to have a different style, except the blog part. +The index is a pink page with a static right column, and a retro vibe. +I don't know where this will lead me. +For my Ideas page (more on this later), I want to give it the look of a +parchment. +The colors are there, as is the layout, but I'll need to add the texture and +the font. +As I want to keep it as lightweight as possible, I don't want to have a 4K +parchment texture background image, so I don't know yet how I will do this. +The last page I have created so far is this blog, or rather, this *newspaper*. +This is quite simple to do, and I'd say 95% of it is done. + +[Lucidiot](http://tilde.town/~lucidiot/), the one who introduced the concept +of tildes to me, maintains a list of [his +ideas](http://tilde.town/~lucidiot/ideas). +They are mostly the abandoned ones, given to the public, and with some +explanations about what made him abandon them. +I think it's neat, both on a personal scale and on a public one. +Such a list allows to get an overview of things one has undertaken, with a +reminder of the purpose of the project as well as the challenges. +It also means anyone can come and potentially finish one of the ideas one day. +I've decided I'd do an idea page as well. +For now, it's mostly new ideas, that I haven't even started. +This serves both as a project todo list and as a brain dump. +Indeed, the issues with ideas is that I don't want to abandon them. +If I don't write them down, they will just poison my mind, until I forget all +about them. +By giving them such a space, it should ease my mind. + +In a similar vein to this ideas page, I've started a question section on my +homepage, which will eventually become a fully-fledged page. +I will write there things I wonder, but haven't got time to do research yet. +If anybody reads it and has some answers, or elements of them, I'd like to be +contacted to get them ! + +Another thing I want to work on there is feeds. +I've been using feeds for years, and I regret that they aren't more used on +the web. +Too often, I find blogs, or websites posting news on a subject, and they don't +have any kind of feeds. +It's usually because of a lack of time by the webmaster, or a will to monetize +content by having people come directly to the site. +The latter is quite a bad capitalist practice in my opinion, and social media +have made it worse. +So I try having feeds on my weblogs. +For now, every static-site generator I have used had this feature, so setting +this up has been relatively painless. +With Zola, all I needed was to add a line in the `config.toml` file : + +```toml +generate_feed = true +``` + +But while I was at it, something came to my mind, which I immediately wrote to +my [ideas](@/ideas.md) : between my blogs, Github, Gitlab, Wikipedia, +Openstreetmaps and all kind of other accounts, I probably generate quite a +number of feeds. +I'd like to list them, and see if that tells me something. + +## Tilde Town + +I've been on Tilde Town for about a week now. +It's a nice place, and there are lots of cyberstuff to learn and experiment +with. +I'm not the most outgoing person, and my time has been taken by various other +activities, but I've still been able to mail a couple people and chat on IRC. +So far, I'd say my presence here has been quite positive to me. + diff --git a/content/blog/2022-12-11-project-spg.md b/content/blog/2022-12-11-project-spg.md new file mode 100644 index 0000000..8024d31 --- /dev/null +++ b/content/blog/2022-12-11-project-spg.md @@ -0,0 +1,55 @@ ++++ +title = "PROJECT SPG" +date = "2022-12-11" +updated = "2022-12-11" +[extra] +authors = ["Ydreniv"] ++++ + +[`PROJECT SPG`](@/project-spg.md) is an art project I've begun a couple years +ago, though I haven't produced a ton. +The core concept is simple : using a lot of Gimp filters. +Previously, when producing pictures in Gimp, I've relied on the pencil to +create pixel-art stuff. +As a challenge to myself, I decided to minimize my use of manual tools, and +instead rely on Gimps filters and selection tools. +I've still only brushed the outer edge of it. + +As I wanted to publish something in the 6th issue of [Tilde Town +Zine](http://tilde.town/~zine/), and faced with very short time, I've decided +to create a new piece for this project. +My original plan was very different, but a busy month ensured I didn't have +time to complete it peacefully, so I put it on standby. +Instead, I made the (currently redacted) `TSS-001`. +I am unfortunately under very strict orders to not divulge any information +about it yet. + +However, there are still news that I can publish about this project : I've +created a page on [Tilde.Town](https://tilde.town) to showcase the publicly +available ones. +Each art piece is sorted and put into precise categories. +Moreover, they are all composed of a picture and some text. +On my computer, they are all organized in a structured folder, with README.md +and the like. +However, I've decided to put it all on a single page here. +Indeed, I want to keep my work more manageable by having a "one page equals +one topic". +But there was still the question on how to display here, preferably with some +cool CSS stuff, as I'm trying to do around here. +Given the theme of `PROJECT SPG`, I've settled on a "green on black computer" +aesthetic. +And what better than to having a computer *inside your computer* ? +So I created a greyish computer, had it display an overflowing block of +contents, and the core of my concept was done. +I've added some shadows and reflections on the screen, to better sell the +effect. +I'm pleased with the end result, although the outer computer is still a work +in progress. +I want to add a power button and some more texture. +But the more important thing is that you may enjoy `PROJECT SPG` immediately, +without having to wait for me to get this page in a more ready form. + +In due time, `TSS-001` will join its simblings. +And from the few information I've got, we've never been closer to said time. +I hope to make more in the future, and not only for the Zine. + diff --git a/content/blog/2022-12-13-beginner-hcard-hentry.md b/content/blog/2022-12-13-beginner-hcard-hentry.md new file mode 100644 index 0000000..c585ad1 --- /dev/null +++ b/content/blog/2022-12-13-beginner-hcard-hentry.md @@ -0,0 +1,163 @@ ++++ +title = "A beginner h-card and h-entry usage" +date = "2022-12-13T20:05:00Z" +updated = "2022-12-13T20:05:00Z" +[extra] +authors = ["Ydreniv"] ++++ + +I've just got started on discovering what [Indieweb](https://indieweb.org/) is. +I've been making static sites for years now, and I've always been interested +in "small-scale web". +Thus, it was only natural that I got into IndieWeb. +I won't go into too much details about this initiative. +I'm still only a beginner, and you will have more accurate information looking +at their website. +But it's basically a set of tools and practices to build a decentralized +version of the web, far from the big social media. +The specificity, compared to what one could simply do with a classic static +sites, is adding ways to interact and understand content. +I will cover interaction in another blog post. +Today, I want to focus on microformats, and especially `h-card` and `h-entry`. + +In Une tranche de console +dans Internet Explorer 8, [lucidiot](https://tilde.town/~lucidiot) talked +about WebSlices, and introduced for the first time the notion of [microformats](https://microformats.org) to me. +Later on, while browsing some IndieWeb stuff, microformats appeared once +again. +That's why, on one chilly winter night, I began to try harness this mysterious +knowledge. +However I didn't know where to really start. +I first read the [IndieWeb Getting Started](https://indieweb.org/Getting_Started), then tried [Indie Webify](https://indiewebify.me). +The latter is a linear and interactive introduction. +The sequential steps are great at progressively introducing new notions. +With the help of the [IndieWeb wiki](https://indieweb.org/) and the +[Microformats wiki](https://microformats.org/wiki/Main_Page), I've been able to +get going. + +## h-card + +So I've started implementing `h-card` on this website. +This is a static site, generated using [Zola](https://www.getzola.org/). +I won't teach you all about Zola. +Basically, you can right Markdown content, which will then be formatted using +templated HTML. +While I use a different template for each page, they all use a `base.html` +template, to put in the basic structure (`head` block for instance). +Thus, I simply included a `include/h-card.html` in this base template. +The `h-card` template is fairly simple : + +```html + +``` + +The `hidden` class just means there is a `display: none` associated with the +block in my CSS file. +It's not necessary, and some people show these informations on their website, +but I felt they were mostly redundant. + +As for the `h-card` itself, it is simply added with a `h-card` class on a +block. +Then, classes are added to various elements in the block to specify the +`h-card` attributes. +A full list of attributes can be found in the +[documentation](https://microformats.org/wiki/h-card). +Here, I have a `p-name` to list my name, and nicknames in `p-nickname`. +I've put some urls to my websites. +The fact that they are urls useful to the `hCard` is shown with the class +`u-url`. +And since these various links represent sites of mine, I've added a +`rel="me"`. +This is an attribute used in authentication on the IndieWeb, and thus is quite +important. +I will talk a bit more about it in the Webmention article. +I've also added a public GPG key, which can also be used in authentication. +And lastly is my birthday here, with the appropriate class : `dt-bday`. + +There are many more attributes I could have used, but for various reasons, +decided to leave out. +The most important ones are `p-name` and `u-url` anyway. +While this simple block doesn't seem like much, it provides the basic +information for IndieWeb apps to use. +Moreover, it can help you sort out your various online presences. + +# h-entry + +The second microformat I've tackled is `h-entry` +Here, I went into my `blog.html` template. + +```html +
+
+

+ {{ page.title }} +

+

, by {{ authors_macros::authors_inline(authors=page.extra.authors) }}

+ {% if page.updated != page.date -%} +

This article has been edited on .

+ {% endif %} +
+
+ {{ page.content | safe }} +
+
+``` + +I'm using a macro to generate the author field. I've shown it below, but this +simply outputs the author name as a link, with some `hCard` classes to give a +couple information about the author. +As I'm the only one writing articles here, this is a bit overkill, but if +people ever publish articles on this blog, at least I'll be able to let them +do easily. + +```html +{% macro authors_inline(authors) %} + {% set authors_infos = load_data(path="authors.yaml") %} + {% for author in authors %} + {% for author_infos in authors_infos.authors %} + {% if author_infos.name == author %} + {% set_global author = author_infos %} + {% endif %} + {% endfor %} +{{ author.name }} + {% endfor %} +{% endmacro authors_inline %} +``` + +There are a lot more Zola templating stuff involved here. +I believe you can however understand or ignor most of it, but wanted to include +it if someone having a go at Zola wanted some example. +Like the `h-card`, everything is in a `h-entry` block. +I then use several classes for the different attributes : + +* `p-name` : Name of the entry, here a post title. Entries could be used for + other kind of contents. `p-name` is also used in other microformats, + including `h-product` or `h-recipe`. +* `u-url` indicates a URL. +* `dt-published` : Publication date +* `dt-updated` : Last update. This will appear optionally, if the article has + been updated. +* `e-content` : Body of the article. + +## Wrap-up + +On Tilde Town, you can always access the (non-compilated) sources in +`/home/ydreniv/tilde-site`. +Feel free to browse it if you want to know more, or if you read this in the +far future, what changes I did bring. +I'll be working on a Webmention article for later. It will probably be split +in halves. +I would talk first about the basic manual setup, then write about how one can +automate things. +Oh, and lastly, a disclaimer : I'm quite new to IndieWeb, so I may be mistaken +on some things. +Feel free to contact me if you want to inform me on the subject. + diff --git a/content/blog/_index.md b/content/blog/_index.md new file mode 100644 index 0000000..b4099c8 --- /dev/null +++ b/content/blog/_index.md @@ -0,0 +1,10 @@ ++++ +title = "Blog" +date = "2022-11-02" +updated = "2022-11-02" +sort_by = "date" +template = "blog.html" +page_template = "blog.html" +paginate_by = 10 +extra = { "theme" = "/~ydreniv/blog.css" } ++++ diff --git a/content/blog/draft-opengraph.md b/content/blog/draft-opengraph.md new file mode 100644 index 0000000..818d5b1 --- /dev/null +++ b/content/blog/draft-opengraph.md @@ -0,0 +1,57 @@ ++++ +draft = true +title = "Using OpenGraph with Zola" +[extra] +image = "/img/blogposts/opengraph-example-2022-12-16.png" +tags = ["web", "zola", "opengraph"] ++++ + +## What is OpenGraph + +After having [tried Microformats](@/blog/2022-12-13-beginner-hcard-hentry.md), I've made a first implementation of [OpenGraph](). +This is an initiative launched by Facebook, and widely adopted, to give some metadata about webpages. +This allows external applications to preview the links, displaying the title, linked to the url, a description, a picture etc. + +![Two links to two different pages of this website]({{ config.base_url }}/img/blogposts/opengraph-example-2022-12-16.png) + +## How I did it with Zola + +```html +{% macro opengraph(title, url, content, type="", image="") %} + + + +{% if image %} + +{% endif %} +{% if type %} + +{% endif %} +{% endmacro %} +``` + +In the templates where I want it, I can then do something along the following : + +```html +{% import "macros/opengraph.html" as opengraph_macros %} + +... + +{% block head_extra %} +{{ opengraph_macros::opengraph(title=page.title, url=page.permalink, content=page.content, type="website", image=config.base_url ~ "/img/project-spg/%5BMCS-003%5D%20Window%20to%20the%20Fire.png") }} +{% endblock %} +``` + +## Comparison with Microformats + +While OpenGraph is not meant to be the same as Microformats, they do share some similarities. +I use them both on my blog posts, to semantically represent various metadata about those posts. +However, while mainstream applications (Discord, Twitter, Facebook etc) support OpenGraph, they tend not to support Microformats. +This greatly diminishes the use of it. + +But I prefer Microformats nonetheless. +I feel like they are better standardized, and suit the "small-scale" web better. +they don't require additional html elements, only some more classes. +And Microformats are more versatile. +There are more properties available, and one can represent several objects on a single webpage, contrary to Opengraph. + diff --git a/content/blog/draft-origin-of-ydreniv.md b/content/blog/draft-origin-of-ydreniv.md new file mode 100644 index 0000000..5ce2d0a --- /dev/null +++ b/content/blog/draft-origin-of-ydreniv.md @@ -0,0 +1,9 @@ ++++ +draft = true +title = "The Origin of Ydreniv" +date = "2022-11-03" +updated = "2022-11-03" +[extra] +author = "Ydreniv" ++++ + diff --git a/content/blog/draft-tss-001.md b/content/blog/draft-tss-001.md new file mode 100644 index 0000000..ec61727 --- /dev/null +++ b/content/blog/draft-tss-001.md @@ -0,0 +1,37 @@ ++++ +draft = true +title = "TSS-001 - The Pearled Gates" +[extra] +image = "/img/project-spg/[TSS-001] The Pearled Gates.png" +tags = ["project-spg", "art"] ++++ + +This is part of [PROJECT SPG](@/project-spg.md). +This particular synthetic picture has been created for [Tilde Town Zine](https://tilde.town/~zine/) nĀ°6. +It's my first contribution to this zine, and about the first time I've +published anything in a collaborative thing. +When I discovered this zine, I was pretty excited, and thought about creating +various things. +However, time constraints amid a busy month forced me to find a quick project. +With that in mind, I've resurrected PROJECT SPG. +I had started this a couple years ago, but it had remained without activity +for about a year. + +I've started this serie of artworks with the goal of using as much automatic +filters as possible in Gimp. +My previous art experiment in Gimp had mostly been pixel-art, and I wanted +this to change. +I've rapidly started to classify the different pieces of art, and started +developing a loose universe. + +I don't know what synthetic picture I will do next, and when that will happen, +but I'll be sure to notify you. + +![](/~ydreniv/img/project-spg/[TSS-001]%20The%20Pearled%20Gates.png) + +The Pearled Gates are a B55 TSS-class SYNTHETIC PICTURE. +The Pearled Gates are a fabled gateway to a mystical land where the sky always shines blue. +Strange cybercreatures dwell there, including standing manatees. +They use their hypnotizing shroud-daemons to catch weakly-protected programs. +Then they use the entropy of their preys to feed their favourite food : the rare iridescent netmoss. + diff --git a/content/buttons.md b/content/buttons.md new file mode 100644 index 0000000..a622c2c --- /dev/null +++ b/content/buttons.md @@ -0,0 +1,15 @@ ++++ +title = "Buttons !" +template = "buttons.html" +date = "2022-11-02" +updated = "2022-12-13" ++++ + +Buttons with a yellow outline are one I made myself. +I should properly license them, but basically, you're free to use and modify +them. + +You can find other buttons on the websites below : +* [Web Badges World](https://web.badges.world/) +* [Sh2.us web buttons](https://sh2.us/buttons/) + diff --git a/content/ideas.md b/content/ideas.md new file mode 100644 index 0000000..1c27683 --- /dev/null +++ b/content/ideas.md @@ -0,0 +1,112 @@ ++++ +title = "Ideas" +template = "ideas.html" +date = "2022-11-01" +updated = "2022-12-13" +extra = { "theme" = "ideas.css" } ++++ + +
+ +## Computer stuff + +### Web + +* A page to gather all my personal feeds. I've already got a couple blogs, + plus my Shaarli, and I could add Gitlab or social media feeds. + I'm not sure such a list would be truly useful, but it would be nice to have + it, as I currently lack such an overview. +* Take a look at [IndieWeb](https://indieweb.org/) +* Learn more about [Microformats](https://indieweb.org/microformats) + ([Microformats](https://microformats.org/wiki/microformats2)) + * `h-card` and `h-entry` have been implemented here. + * To be implemented on my other static websites +* Learn about [Micropub](https://indieweb.org/Micropub) +* Learn about [Webmention](https://indieweb.org/Webmention) + * Self-host a Webmention service : + * [Telegraph](https://github.com/aaronpk/Telegraph) + * [Webmention Receiver](https://github.com/capjamesg/webmention-receiver) + * [Webmention.io](https://webmention.io/) + * Alternatively, [use + cURL](https://indieweb.org/Webmention-developer#How_to_send_webmentions_with_cURL) + * Or [Pushl](https://indieweb.org/Pushl) + * See also [article + 1](https://mxb.dev/blog/using-webmentions-on-static-sites/) or [article + 2](https://gabriellazcano.com/blog/why-you-might-replace-disqus-with-webmentions/). They use Webmention.io (hosted version), which may be enough for now ? +* A + [/feeds](https://marcus.io/blog/making-rss-more-visible-again-with-slash-feeds) + page. +* A standard Zola development base for my websites +* [Documentation about + self-hosting](https://unknown-artist-selfhost.frama.io/selfhost-wiki/) +* A `/uses` page, explaining how this website works (Zola, IndieWeb etc) +* A contact page, to tell people to not be afraid to contact me, and using + which platform. + +### Web design + +* A page using Comic Sans. +* A CLI-like page (green on black). +* A page with all kinds of blinkies, 80x15 buttons and the like. I'm already + collecting some in the footer of this site, but I'd like a page with the + ones I make and the other cool I find. + * [Web Badges World](https://web.badges.world/) has some nice stuff. + * [SH2/Buttons](https://sh2.us/buttons) too + * Done [here](@/buttons.md) +* Buttons for my various websites + +### Miscellaneous + +* **Ponysay files** : There are [a lot + of](https://framagit.org/matthias4217/custom-ponysay/-/issues/?label_name%5B%5D=New%20pony) + new ponies I would like to add. Unfortunatly, I haven't found the time and + motivation to do so in a long time. +* **Ponysay development** : [Ponysay](https://github.com/erkin/ponysay) is not + dead, but not often updated either. + I'd like to help, but a lack of time, motivation and knowledge in the + codebase prevent me to do so unfortunately. +* A shell script to get statistics about my `feels` entries : + * Total number of chars/words/lines + * Same but per months + +
+ +
+ +## Data + +* **Large fire numbers** + Last summer, I've started doing a spreadsheet of burnt area by state, using + mostly wikipedia as a source. + I wanted to get some better understanding of the scale of it, and the + evolution, if I kept tallying the numbers every year. + However, Wikipedia data is far from being complete, and it took too much of + my time to collect them. + I'd need to find some better sources, on which I could do some automation to + import them in Grafana or a similar thing. + +
+ +
+ +## Fiction + +* In a Cyberpunk world, there may be technophobic communities living outside the huge cities. + Although strongly opposed to the invasive technology pushed by megacorporation, they could + maintain a cast of techno-druids. + Indeed, they would need to defend themselves against said megacorporations, which would attack + them to get access to resources. + Thus having people able to fight them with more advanced technology would be very useful. + These druids could nevertheless be seen as pariahs, not fully integrated in the anti-technology + communities, despite their usefulness. + +
+ +
+ +## Miniature and Modelism + +* A *Munitorum Armoured Container* painted in blue, with a whale logo on it. + Docker reference ! + +
diff --git a/content/project-spg.md b/content/project-spg.md new file mode 100644 index 0000000..cc9e8da --- /dev/null +++ b/content/project-spg.md @@ -0,0 +1,138 @@ ++++ +title = "PROJECT SPG" +template = "project-spg.html" +date = "2022-12-01" +updated = "2022-12-03" ++++ + + + + diff --git a/content/test.md b/content/test.md new file mode 100644 index 0000000..92ed5f5 --- /dev/null +++ b/content/test.md @@ -0,0 +1,30 @@ ++++ +title = "Test" +author = "ydreniv" +date = "2022-12-13" +updated = "2022-12-13" +template = "test.html" ++++ + +This is a test page. + +## Webmention tests + +1. Ydreniv's Ideas +2. Ydreniv's Ideas +3. This ? +
+ Ydreniv's Ideas +
+ +
+

Testing webmention.js

+ +

+I've quickly setup Webmention.js on the blog. +I'm not sure it works yet, but I'm still linking +my Hello World to try. + +

+ diff --git a/sass/base.scss b/sass/base.scss new file mode 100644 index 0000000..f4d336f --- /dev/null +++ b/sass/base.scss @@ -0,0 +1,3 @@ +.hidden { + display: none; +} diff --git a/sass/blog.scss b/sass/blog.scss new file mode 100644 index 0000000..b5e3e0c --- /dev/null +++ b/sass/blog.scss @@ -0,0 +1,133 @@ +$text-color: black; +$background-color: white; +$link-color: black; +$base_url: "https://tilde.town/~ydreniv"; + +@font-face { + font-family: 'Old English'; + src: url($base_url + "/fonts/OldLondon.ttf"); + font-weight: normal; + font-style: normal; +} + +body { + margin: 4em; + color: $text-color; + background-color: $background-color; + font-family: serif; + text-align: justify; +} + +h1 { + margin: 0; +} + +a { + color: $link-color; + font-weight: bold; +} + +article { + padding: 1em; + border: 1px solid $text-color; + + .last-updated { + margin-top: 0; + font-style: italic; + } + + pre { + padding: 1rem; + overflow: auto; + } + // The line numbers already provide some kind of left/right padding + pre[data-linenos] { + padding: 1rem 0; + } + pre table td { + padding: 0; + } + // The line number cells + pre table td:nth-of-type(1) { + text-align: center; + user-select: none; + } + pre mark { + // If you want your highlights to take the full width. + display: block; + // The default background colour of a mark is bright yellow + background-color: rgba(254, 252, 232, 0.9); + } + pre table { + width: 100%; + border-collapse: collapse; + } +} + +header { + padding-bottom: 1em; + + #title-date { + display: flex; + flex-flow: row nowrap; + gap: 2em; + justify-content: space-between; + align-items: flex-end; + margin-bottom: 1em; + border-bottom: 1px solid $text-color; + + .newspaper-title { + margin: 0; + font-family: "Old English", serif; + font-size: 4em; + a { + text-decoration: none; + } + } + } + nav { + width: 100%; + padding: .4em 0; + border-top: 3px double $text-color; + border-bottom: 1px solid $text-color; + + ul { + display: flex; + flex-flow: row nowrap; + gap: 2em; + justify-content: space-between; + + list-style-type: none; + margin: 0; + padding: 0; + + li { + display: inline-block; + } + } + } +} + +.pagination-navigation { + margin: auto; + + ul { + list-style-type: none; + margin: 0 auto; + padding: 0; + width: fit-content; + } + + li { + display: inline-block; + // border: 1px solid black; + margin: 0; + padding: .2em .5em; + } +} + +footer { + img { + filter: grayscale(100%); + } +} diff --git a/sass/buttons.scss b/sass/buttons.scss new file mode 100644 index 0000000..daefb6f --- /dev/null +++ b/sass/buttons.scss @@ -0,0 +1,98 @@ +$colour-my-shadow: rgba(224, 196, 58, 0.5); +$accent-colour: chocolate; +$border-colour: grey; +$border-colour-light: silver; +$dark-blue: midnightblue; + +body { + background-color: lavender; + margin: 0; + max-width: 100vw; + font-family: sans-serif; +} + +.me { + box-shadow: 0 0 .3em .1em $colour-my-shadow; +} + +a { + color: $accent-colour; +} + +header { + position: absolute; + top: 0; + left: 0; + right: 0; + background-color: lightsteelblue; + box-shadow: 0 -4em 5em 2em rgba(25,25,112,0.5); + + h1 { + margin-left: 4em; + } + + nav { + width: 100%; + max-width: 100%; + border-bottom: 1px solid $border-colour; + + ul { + display: flex; + flex-flow: row nowrap; + justify-content: center; + + list-style-type: none; + border-top: 1px solid $border-colour; + padding: 0; + margin: 0; + + li { + display: inline-block; + padding: 1em 2em; + border-left: 1px solid $border-colour; + //background-image: radial-gradient(rgba(0,0,0,0), rgba(0,0,0,0.03)); + box-shadow: 0 0 1em rgba(0,0,0,0.07) inset; + } + + li:last-child { + border-right: 1px solid $border-colour; + } + } + } +} + +#main { + width: 100%; + padding-top: 10em; + padding-bottom: 2em; + background-image: linear-gradient(thistle, lavender); + + p { + margin: 0 1em 0; + } + + section { + margin: 0 1em 0; + } +} + +footer { + position: relative; + bottom: 0; + left: 0; + right: 0; + + background-color: $dark-blue; + color: cornsilk; + box-shadow: 0 1em 1em 1em $dark-blue; + padding: .5em 1em; + + p { + margin: 1em; + } + + #tilde_ring { + border: 1px dotted $border-colour-light !important; + margin-bottom: 2em; + } +} diff --git a/sass/ideas.scss b/sass/ideas.scss new file mode 100644 index 0000000..3e40598 --- /dev/null +++ b/sass/ideas.scss @@ -0,0 +1,53 @@ +$text-color: #000066; +$text-accent-color: #990000; +$background-color: #e5d5ba; +$base_url: "https://tilde.town/~ydreniv"; + +@font-face { + font-family: 'Old English'; + src: url($base_url + "/fonts/OldLondon.ttf"); + font-weight: normal; + font-style: normal; +} + +body { + margin: 4em; + background-color: $background-color; + color: $text-color; + font-family: cursive; + font-size: 1.6em; + text-align: justify; +} + +a { + color: $text-accent-color; +} + +li { + list-style-type: square; +} + +header { + border-bottom: 2px solid $text-color; + padding-bottom: 1em; + + nav { + width: 100%; + + ul { + display: flex; + flex-flow: row nowrap; + gap: 2em; + justify-content: space-between; + + list-style-type: none; + margin: 0; + padding: 0; + + li { + display: inline-block; + } + } + } +} + diff --git a/sass/index.scss b/sass/index.scss new file mode 100644 index 0000000..e729323 --- /dev/null +++ b/sass/index.scss @@ -0,0 +1,76 @@ +body { + margin: 0; + background-color: pink; + font-family: courier; +} + +header { + position: fixed; + top: 0; + right: 0; + height: 100%; + width: 20%; + border-left: 3px double black; + background-color: plum; +} + +header nav { + margin: 1em; +} + +header nav ul { + list-style-type: none; + margin: 0; + padding: 0; +} + +#main { + width: 80%; + overflow: scroll; +} + +section { + max-width: 100%; + padding: 1em; + border-top: 3px dashed grey; +} + +footer { + border-top: 2px solid black; + max-width: 100%; + padding: 10px; + margin: auto; +} + +.identity-card { + font-size: 0.7em; + width: 90%; + margin: 1em auto; + background-color: #d3d3d3; + border: 3px double black; + box-shadow: .5em .5em; +} + +.row { + display: flex; + flex-flow: row nowrap; + flex-grow: 1; +} + +.col { + display: flex; + flex-flow: column nowrap; + flex-grow: 1; +} + +.cell { + border: 1px solid grey; + flex-grow: 1; + padding: 0.2em; +} + +.identity-picture { + width: 256px; +} + + diff --git a/sass/project-spg.scss b/sass/project-spg.scss new file mode 100644 index 0000000..91e0eef --- /dev/null +++ b/sass/project-spg.scss @@ -0,0 +1,102 @@ +$accent-color: greenyellow; +$green: green; +$grey: grey; +$light-grey: lightgrey; +$dark-grey: darkgrey; + +body { + width: 100vw; + margin: 0; + background-color: black; + color: $green; + font-family: monospace; +} + +a { + color: $accent-color; +} + +h1 { + margin: .5em auto; + width: fit-content; +} + +header { + nav { + width: 100%; + max-width: 100%; + + ul { + display: flex; + flex-flow: row nowrap; + justify-content: center; + + list-style-type: none; + padding: 0; + margin: 0; + + li { + display: inline-block; + padding: 1em 2em; + } + } + } +} + +#gallery { + width: 90%; + height: 72vh; + background-color: $light-grey; + margin: auto; + padding: 1em; + + #screen { + position: relative; + width: 90%; + height: calc(90% - 2em); + margin: auto; + + #screen-content { + width: 100%; + height: 100%; + padding: 1em; + overflow: scroll; + background-color: #111; + border: 2px solid $dark-grey; + border-radius: 5px; + + img { + max-width: 90%; + margin: auto; + } + } + } + + // this has been done thanks to this : + // https://stackoverflow.com/questions/13188828/inset-box-shadow-beneath-content + #screen::before { + content: ''; + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + width: 100%; + height: 100%; + padding: calc(1em + 2px); // padding + border of #screen-content + border-radius: 5px; + box-shadow: 0 0 3em 0 black inset; + background-image: radial-gradient(rgba(70,70,70,0.5),rgba(0,0,0,0)); + pointer-events: none; + } + + #brand { + position: relative; + color: dimgray; + margin: auto; + width: fit-content; + bottom: -3em; + font-weight: 900; + font-family: sans-serif; + } +} diff --git a/static/README.md b/static/README.md new file mode 100644 index 0000000..9e5b6d4 --- /dev/null +++ b/static/README.md @@ -0,0 +1,8 @@ +# README.md + +As this directory is public, I figure some people may stumble upon it. +So I'll try to describe it, although I cannot guarantee it will be up-to-date. + +For now, this is my personal website, comprising of a single index.html. +So there isn't much to say here... + diff --git a/static/fonts/OldLondon.ttf b/static/fonts/OldLondon.ttf new file mode 100644 index 0000000..f24a340 Binary files /dev/null and b/static/fonts/OldLondon.ttf differ diff --git a/static/fonts/OldLondonAlternate.ttf b/static/fonts/OldLondonAlternate.ttf new file mode 100644 index 0000000..6010ffd Binary files /dev/null and b/static/fonts/OldLondonAlternate.ttf differ diff --git a/static/fonts/Olondon_.otf b/static/fonts/Olondon_.otf new file mode 100644 index 0000000..9a68b20 Binary files /dev/null and b/static/fonts/Olondon_.otf differ diff --git a/static/fonts/Olondona.otf b/static/fonts/Olondona.otf new file mode 100644 index 0000000..56161c8 Binary files /dev/null and b/static/fonts/Olondona.otf differ diff --git a/static/fonts/old_london.zip b/static/fonts/old_london.zip new file mode 100644 index 0000000..7c32323 Binary files /dev/null and b/static/fonts/old_london.zip differ diff --git a/static/img/80x15/anarcom.png b/static/img/80x15/anarcom.png new file mode 100644 index 0000000..a08d2bd Binary files /dev/null and b/static/img/80x15/anarcom.png differ diff --git a/static/img/80x15/april.gif b/static/img/80x15/april.gif new file mode 100644 index 0000000..0ef317c Binary files /dev/null and b/static/img/80x15/april.gif differ diff --git a/static/img/80x15/atom-0.3.gif b/static/img/80x15/atom-0.3.gif new file mode 100644 index 0000000..5ca4c41 Binary files /dev/null and b/static/img/80x15/atom-0.3.gif differ diff --git a/static/img/80x15/atom-valid.png b/static/img/80x15/atom-valid.png new file mode 100644 index 0000000..bd17f0e Binary files /dev/null and b/static/img/80x15/atom-valid.png differ diff --git a/static/img/80x15/atom.png b/static/img/80x15/atom.png new file mode 100644 index 0000000..a90c243 Binary files /dev/null and b/static/img/80x15/atom.png differ diff --git a/static/img/80x15/august.gif b/static/img/80x15/august.gif new file mode 100644 index 0000000..8c21d78 Binary files /dev/null and b/static/img/80x15/august.gif differ diff --git a/static/img/80x15/banana.png b/static/img/80x15/banana.png new file mode 100644 index 0000000..97ffa7f Binary files /dev/null and b/static/img/80x15/banana.png differ diff --git a/static/img/80x15/beerpowered.gif b/static/img/80x15/beerpowered.gif new file mode 100644 index 0000000..664e958 Binary files /dev/null and b/static/img/80x15/beerpowered.gif differ diff --git a/static/img/80x15/bisexual.gif b/static/img/80x15/bisexual.gif new file mode 100644 index 0000000..53fb59a Binary files /dev/null and b/static/img/80x15/bisexual.gif differ diff --git a/static/img/80x15/candyaddict.png b/static/img/80x15/candyaddict.png new file mode 100644 index 0000000..043ac4a Binary files /dev/null and b/static/img/80x15/candyaddict.png differ diff --git a/static/img/80x15/coffee-cup.gif b/static/img/80x15/coffee-cup.gif new file mode 100644 index 0000000..2d63800 Binary files /dev/null and b/static/img/80x15/coffee-cup.gif differ diff --git a/static/img/80x15/coffee.gif b/static/img/80x15/coffee.gif new file mode 100644 index 0000000..41c59fc Binary files /dev/null and b/static/img/80x15/coffee.gif differ diff --git a/static/img/80x15/contact.png b/static/img/80x15/contact.png new file mode 100644 index 0000000..ea609aa Binary files /dev/null and b/static/img/80x15/contact.png differ diff --git a/static/img/80x15/cranberry.png b/static/img/80x15/cranberry.png new file mode 100644 index 0000000..da101d6 Binary files /dev/null and b/static/img/80x15/cranberry.png differ diff --git a/static/img/80x15/december.gif b/static/img/80x15/december.gif new file mode 100644 index 0000000..d5c9de1 Binary files /dev/null and b/static/img/80x15/december.gif differ diff --git a/static/img/80x15/drupal.gif b/static/img/80x15/drupal.gif new file mode 100644 index 0000000..133e5a2 Binary files /dev/null and b/static/img/80x15/drupal.gif differ diff --git a/static/img/80x15/email-me.gif b/static/img/80x15/email-me.gif new file mode 100644 index 0000000..1767379 Binary files /dev/null and b/static/img/80x15/email-me.gif differ diff --git a/static/img/80x15/email.gif b/static/img/80x15/email.gif new file mode 100644 index 0000000..b86e271 Binary files /dev/null and b/static/img/80x15/email.gif differ diff --git a/static/img/80x15/evil-cheese.gif b/static/img/80x15/evil-cheese.gif new file mode 100644 index 0000000..9922a39 Binary files /dev/null and b/static/img/80x15/evil-cheese.gif differ diff --git a/static/img/80x15/february.gif b/static/img/80x15/february.gif new file mode 100644 index 0000000..8d3eb20 Binary files /dev/null and b/static/img/80x15/february.gif differ diff --git a/static/img/80x15/feedback.png b/static/img/80x15/feedback.png new file mode 100644 index 0000000..831c259 Binary files /dev/null and b/static/img/80x15/feedback.png differ diff --git a/static/img/80x15/floyd.gif b/static/img/80x15/floyd.gif new file mode 100644 index 0000000..0cd84a1 Binary files /dev/null and b/static/img/80x15/floyd.gif differ diff --git a/static/img/80x15/frenchy.gif b/static/img/80x15/frenchy.gif new file mode 100644 index 0000000..2d1bd1d Binary files /dev/null and b/static/img/80x15/frenchy.gif differ diff --git a/static/img/80x15/geo-url.gif b/static/img/80x15/geo-url.gif new file mode 100644 index 0000000..be5412a Binary files /dev/null and b/static/img/80x15/geo-url.gif differ diff --git a/static/img/80x15/go-veg.png b/static/img/80x15/go-veg.png new file mode 100644 index 0000000..1d02738 Binary files /dev/null and b/static/img/80x15/go-veg.png differ diff --git a/static/img/80x15/hotsauce.png b/static/img/80x15/hotsauce.png new file mode 100644 index 0000000..c7ddc56 Binary files /dev/null and b/static/img/80x15/hotsauce.png differ diff --git a/static/img/80x15/jabber.gif b/static/img/80x15/jabber.gif new file mode 100644 index 0000000..f37b343 Binary files /dev/null and b/static/img/80x15/jabber.gif differ diff --git a/static/img/80x15/january.gif b/static/img/80x15/january.gif new file mode 100644 index 0000000..1ad46f0 Binary files /dev/null and b/static/img/80x15/january.gif differ diff --git a/static/img/80x15/july.gif b/static/img/80x15/july.gif new file mode 100644 index 0000000..5b91370 Binary files /dev/null and b/static/img/80x15/july.gif differ diff --git a/static/img/80x15/june.gif b/static/img/80x15/june.gif new file mode 100644 index 0000000..35d3c9b Binary files /dev/null and b/static/img/80x15/june.gif differ diff --git a/static/img/80x15/linux.png b/static/img/80x15/linux.png new file mode 100644 index 0000000..855416b Binary files /dev/null and b/static/img/80x15/linux.png differ diff --git a/static/img/80x15/march.gif b/static/img/80x15/march.gif new file mode 100644 index 0000000..b95b145 Binary files /dev/null and b/static/img/80x15/march.gif differ diff --git a/static/img/80x15/may.gif b/static/img/80x15/may.gif new file mode 100644 index 0000000..66e3dcb Binary files /dev/null and b/static/img/80x15/may.gif differ diff --git a/static/img/80x15/mozfirefox.png b/static/img/80x15/mozfirefox.png new file mode 100644 index 0000000..e97fd01 Binary files /dev/null and b/static/img/80x15/mozfirefox.png differ diff --git a/static/img/80x15/mp3love.gif b/static/img/80x15/mp3love.gif new file mode 100644 index 0000000..0613345 Binary files /dev/null and b/static/img/80x15/mp3love.gif differ diff --git a/static/img/80x15/noie.png b/static/img/80x15/noie.png new file mode 100644 index 0000000..1810650 Binary files /dev/null and b/static/img/80x15/noie.png differ diff --git a/static/img/80x15/november.gif b/static/img/80x15/november.gif new file mode 100644 index 0000000..3f0504f Binary files /dev/null and b/static/img/80x15/november.gif differ diff --git a/static/img/80x15/october.gif b/static/img/80x15/october.gif new file mode 100644 index 0000000..050e184 Binary files /dev/null and b/static/img/80x15/october.gif differ diff --git a/static/img/80x15/onigiri.gif b/static/img/80x15/onigiri.gif new file mode 100644 index 0000000..5508c07 Binary files /dev/null and b/static/img/80x15/onigiri.gif differ diff --git a/static/img/80x15/opml-share-it.png b/static/img/80x15/opml-share-it.png new file mode 100644 index 0000000..e4b9564 Binary files /dev/null and b/static/img/80x15/opml-share-it.png differ diff --git a/static/img/80x15/pgpkey.gif b/static/img/80x15/pgpkey.gif new file mode 100644 index 0000000..26f58e9 Binary files /dev/null and b/static/img/80x15/pgpkey.gif differ diff --git a/static/img/80x15/pizza.gif b/static/img/80x15/pizza.gif new file mode 100644 index 0000000..d9a5e8b Binary files /dev/null and b/static/img/80x15/pizza.gif differ diff --git a/static/img/80x15/pride.gif b/static/img/80x15/pride.gif new file mode 100644 index 0000000..412ed9b Binary files /dev/null and b/static/img/80x15/pride.gif differ diff --git a/static/img/80x15/rss-0.90.gif b/static/img/80x15/rss-0.90.gif new file mode 100644 index 0000000..61af3c7 Binary files /dev/null and b/static/img/80x15/rss-0.90.gif differ diff --git a/static/img/80x15/rss-0.91.gif b/static/img/80x15/rss-0.91.gif new file mode 100644 index 0000000..c5b6cf7 Binary files /dev/null and b/static/img/80x15/rss-0.91.gif differ diff --git a/static/img/80x15/rss-0.92.gif b/static/img/80x15/rss-0.92.gif new file mode 100644 index 0000000..d90044d Binary files /dev/null and b/static/img/80x15/rss-0.92.gif differ diff --git a/static/img/80x15/rss-0.93.gif b/static/img/80x15/rss-0.93.gif new file mode 100644 index 0000000..e316dfd Binary files /dev/null and b/static/img/80x15/rss-0.93.gif differ diff --git a/static/img/80x15/rss-0.94.gif b/static/img/80x15/rss-0.94.gif new file mode 100644 index 0000000..e4e936b Binary files /dev/null and b/static/img/80x15/rss-0.94.gif differ diff --git a/static/img/80x15/rss-1.0.gif b/static/img/80x15/rss-1.0.gif new file mode 100644 index 0000000..eaec4b4 Binary files /dev/null and b/static/img/80x15/rss-1.0.gif differ diff --git a/static/img/80x15/rss-2.0.gif b/static/img/80x15/rss-2.0.gif new file mode 100644 index 0000000..60f7e7d Binary files /dev/null and b/static/img/80x15/rss-2.0.gif differ diff --git a/static/img/80x15/rss-3.0.gif b/static/img/80x15/rss-3.0.gif new file mode 100644 index 0000000..266e2bc Binary files /dev/null and b/static/img/80x15/rss-3.0.gif differ diff --git a/static/img/80x15/rss-button.png b/static/img/80x15/rss-button.png new file mode 100644 index 0000000..6ff37eb Binary files /dev/null and b/static/img/80x15/rss-button.png differ diff --git a/static/img/80x15/rss-comments.gif b/static/img/80x15/rss-comments.gif new file mode 100644 index 0000000..4d94ec4 Binary files /dev/null and b/static/img/80x15/rss-comments.gif differ diff --git a/static/img/80x15/rss-excerpts.gif b/static/img/80x15/rss-excerpts.gif new file mode 100644 index 0000000..240476a Binary files /dev/null and b/static/img/80x15/rss-excerpts.gif differ diff --git a/static/img/80x15/rss-feed.gif b/static/img/80x15/rss-feed.gif new file mode 100644 index 0000000..206aa89 Binary files /dev/null and b/static/img/80x15/rss-feed.gif differ diff --git a/static/img/80x15/rss-fullposts.png b/static/img/80x15/rss-fullposts.png new file mode 100644 index 0000000..e7fae34 Binary files /dev/null and b/static/img/80x15/rss-fullposts.png differ diff --git a/static/img/80x15/rss-newsfeed.gif b/static/img/80x15/rss-newsfeed.gif new file mode 100644 index 0000000..904b398 Binary files /dev/null and b/static/img/80x15/rss-newsfeed.gif differ diff --git a/static/img/80x15/rss-post-com.gif b/static/img/80x15/rss-post-com.gif new file mode 100644 index 0000000..6445654 Binary files /dev/null and b/static/img/80x15/rss-post-com.gif differ diff --git a/static/img/80x15/rss-valid.gif b/static/img/80x15/rss-valid.gif new file mode 100644 index 0000000..0e741c7 Binary files /dev/null and b/static/img/80x15/rss-valid.gif differ diff --git a/static/img/80x15/rss_blogtorrent.png b/static/img/80x15/rss_blogtorrent.png new file mode 100644 index 0000000..f4c59c3 Binary files /dev/null and b/static/img/80x15/rss_blogtorrent.png differ diff --git a/static/img/80x15/rss_whocares.png b/static/img/80x15/rss_whocares.png new file mode 100644 index 0000000..3db0dd6 Binary files /dev/null and b/static/img/80x15/rss_whocares.png differ diff --git a/static/img/80x15/september.gif b/static/img/80x15/september.gif new file mode 100644 index 0000000..3aae950 Binary files /dev/null and b/static/img/80x15/september.gif differ diff --git a/static/img/80x15/sms-me.gif b/static/img/80x15/sms-me.gif new file mode 100644 index 0000000..55ce9d8 Binary files /dev/null and b/static/img/80x15/sms-me.gif differ diff --git a/static/img/80x15/spip.png b/static/img/80x15/spip.png new file mode 100644 index 0000000..5b3768a Binary files /dev/null and b/static/img/80x15/spip.png differ diff --git a/static/img/80x15/tea.gif b/static/img/80x15/tea.gif new file mode 100644 index 0000000..e95413f Binary files /dev/null and b/static/img/80x15/tea.gif differ diff --git a/static/img/80x15/ultratech.png b/static/img/80x15/ultratech.png new file mode 100644 index 0000000..acf7f9f Binary files /dev/null and b/static/img/80x15/ultratech.png differ diff --git a/static/img/80x15/unicode.png b/static/img/80x15/unicode.png new file mode 100644 index 0000000..6ea2095 Binary files /dev/null and b/static/img/80x15/unicode.png differ diff --git a/static/img/80x15/veg-etarian.gif b/static/img/80x15/veg-etarian.gif new file mode 100644 index 0000000..3c88cca Binary files /dev/null and b/static/img/80x15/veg-etarian.gif differ diff --git a/static/img/80x15/w3cxhtml1.1.png b/static/img/80x15/w3cxhtml1.1.png new file mode 100644 index 0000000..16d19d5 Binary files /dev/null and b/static/img/80x15/w3cxhtml1.1.png differ diff --git a/static/img/80x15/wordpress.png b/static/img/80x15/wordpress.png new file mode 100644 index 0000000..707c9f8 Binary files /dev/null and b/static/img/80x15/wordpress.png differ diff --git a/static/img/80x15/wp-wordpress.png b/static/img/80x15/wp-wordpress.png new file mode 100644 index 0000000..f8e56b7 Binary files /dev/null and b/static/img/80x15/wp-wordpress.png differ diff --git a/static/img/80x15/xml-rss-2.0.png b/static/img/80x15/xml-rss-2.0.png new file mode 100644 index 0000000..663b812 Binary files /dev/null and b/static/img/80x15/xml-rss-2.0.png differ diff --git a/static/img/80x15/xmlfeed.gif b/static/img/80x15/xmlfeed.gif new file mode 100644 index 0000000..830149d Binary files /dev/null and b/static/img/80x15/xmlfeed.gif differ diff --git a/static/img/80x15/xmpp_me.gif b/static/img/80x15/xmpp_me.gif new file mode 100644 index 0000000..926847e Binary files /dev/null and b/static/img/80x15/xmpp_me.gif differ diff --git a/static/img/88x31/88x31.gif b/static/img/88x31/88x31.gif new file mode 100644 index 0000000..c6ccdad Binary files /dev/null and b/static/img/88x31/88x31.gif differ diff --git a/static/img/88x31/LocalNetwork.gif b/static/img/88x31/LocalNetwork.gif new file mode 100644 index 0000000..5c1044e Binary files /dev/null and b/static/img/88x31/LocalNetwork.gif differ diff --git a/static/img/88x31/acab.gif b/static/img/88x31/acab.gif new file mode 100644 index 0000000..c86ff0e Binary files /dev/null and b/static/img/88x31/acab.gif differ diff --git a/static/img/88x31/anarchynow.gif b/static/img/88x31/anarchynow.gif new file mode 100644 index 0000000..c6ffe22 Binary files /dev/null and b/static/img/88x31/anarchynow.gif differ diff --git a/static/img/88x31/antifa.png b/static/img/88x31/antifa.png new file mode 100644 index 0000000..8541803 Binary files /dev/null and b/static/img/88x31/antifa.png differ diff --git a/static/img/88x31/antinft.gif b/static/img/88x31/antinft.gif new file mode 100644 index 0000000..1a4caf0 Binary files /dev/null and b/static/img/88x31/antinft.gif differ diff --git a/static/img/88x31/anybrowser-2.gif b/static/img/88x31/anybrowser-2.gif new file mode 100644 index 0000000..e9bb645 Binary files /dev/null and b/static/img/88x31/anybrowser-2.gif differ diff --git a/static/img/88x31/anybrowser.gif b/static/img/88x31/anybrowser.gif new file mode 100644 index 0000000..f80df66 Binary files /dev/null and b/static/img/88x31/anybrowser.gif differ diff --git a/static/img/88x31/archlinux.gif b/static/img/88x31/archlinux.gif new file mode 100644 index 0000000..6fcc440 Binary files /dev/null and b/static/img/88x31/archlinux.gif differ diff --git a/static/img/88x31/e-scp.gif b/static/img/88x31/e-scp.gif new file mode 100644 index 0000000..0f543d8 Binary files /dev/null and b/static/img/88x31/e-scp.gif differ diff --git a/static/img/88x31/gnunano.png b/static/img/88x31/gnunano.png new file mode 100644 index 0000000..c73cd44 Binary files /dev/null and b/static/img/88x31/gnunano.png differ diff --git a/static/img/88x31/maia.crimew.gay.png b/static/img/88x31/maia.crimew.gay.png new file mode 100644 index 0000000..8757d99 Binary files /dev/null and b/static/img/88x31/maia.crimew.gay.png differ diff --git a/static/img/88x31/minecraft.gif b/static/img/88x31/minecraft.gif new file mode 100644 index 0000000..a149b45 Binary files /dev/null and b/static/img/88x31/minecraft.gif differ diff --git a/static/img/88x31/noclick.gif b/static/img/88x31/noclick.gif new file mode 100644 index 0000000..b99fc12 Binary files /dev/null and b/static/img/88x31/noclick.gif differ diff --git a/static/img/88x31/nonbinary.png b/static/img/88x31/nonbinary.png new file mode 100644 index 0000000..737034a Binary files /dev/null and b/static/img/88x31/nonbinary.png differ diff --git a/static/img/88x31/philadelphia_fl.png b/static/img/88x31/philadelphia_fl.png new file mode 100644 index 0000000..04d9bda Binary files /dev/null and b/static/img/88x31/philadelphia_fl.png differ diff --git a/static/img/88x31/piracy.gif b/static/img/88x31/piracy.gif new file mode 100644 index 0000000..37b73b8 Binary files /dev/null and b/static/img/88x31/piracy.gif differ diff --git a/static/img/88x31/queer.png b/static/img/88x31/queer.png new file mode 100644 index 0000000..e5fa4c4 Binary files /dev/null and b/static/img/88x31/queer.png differ diff --git a/static/img/88x31/saynotoweb3.gif b/static/img/88x31/saynotoweb3.gif new file mode 100644 index 0000000..4f5a2f1 Binary files /dev/null and b/static/img/88x31/saynotoweb3.gif differ diff --git a/static/img/88x31/sucks.gif b/static/img/88x31/sucks.gif new file mode 100644 index 0000000..bfec3fc Binary files /dev/null and b/static/img/88x31/sucks.gif differ diff --git a/static/img/88x31/suricrasia.gif b/static/img/88x31/suricrasia.gif new file mode 100644 index 0000000..940bf2e Binary files /dev/null and b/static/img/88x31/suricrasia.gif differ diff --git a/static/img/88x31/tildetownpink.gif b/static/img/88x31/tildetownpink.gif new file mode 100644 index 0000000..83a6a5a Binary files /dev/null and b/static/img/88x31/tildetownpink.gif differ diff --git a/static/img/88x31/trans.png b/static/img/88x31/trans.png new file mode 100644 index 0000000..cfc7f8e Binary files /dev/null and b/static/img/88x31/trans.png differ diff --git a/static/img/88x31/versarytown.png b/static/img/88x31/versarytown.png new file mode 100644 index 0000000..f47cee7 Binary files /dev/null and b/static/img/88x31/versarytown.png differ diff --git a/static/img/88x31/vim.gif b/static/img/88x31/vim.gif new file mode 100644 index 0000000..7a00d7f Binary files /dev/null and b/static/img/88x31/vim.gif differ diff --git a/static/img/88x31/void.gif b/static/img/88x31/void.gif new file mode 100644 index 0000000..1099de4 Binary files /dev/null and b/static/img/88x31/void.gif differ diff --git a/static/img/88x31/y2k.png b/static/img/88x31/y2k.png new file mode 100644 index 0000000..c939ae6 Binary files /dev/null and b/static/img/88x31/y2k.png differ diff --git a/static/img/blogposts/opengraph-example-2022-12-16.png b/static/img/blogposts/opengraph-example-2022-12-16.png new file mode 100644 index 0000000..85bbe6c Binary files /dev/null and b/static/img/blogposts/opengraph-example-2022-12-16.png differ diff --git a/static/img/project-spg/[MCS-001] Fuzzy Wave.png b/static/img/project-spg/[MCS-001] Fuzzy Wave.png new file mode 100644 index 0000000..6cccd41 Binary files /dev/null and b/static/img/project-spg/[MCS-001] Fuzzy Wave.png differ diff --git a/static/img/project-spg/[MCS-002] Dark Glitched Sierpinski.png b/static/img/project-spg/[MCS-002] Dark Glitched Sierpinski.png new file mode 100644 index 0000000..94c1ce9 Binary files /dev/null and b/static/img/project-spg/[MCS-002] Dark Glitched Sierpinski.png differ diff --git a/static/img/project-spg/[MCS-003] Window to the Fire.png b/static/img/project-spg/[MCS-003] Window to the Fire.png new file mode 100644 index 0000000..422767c Binary files /dev/null and b/static/img/project-spg/[MCS-003] Window to the Fire.png differ diff --git a/static/img/project-spg/[MPS-001] Purple Depths.png b/static/img/project-spg/[MPS-001] Purple Depths.png new file mode 100644 index 0000000..8b9775f Binary files /dev/null and b/static/img/project-spg/[MPS-001] Purple Depths.png differ diff --git a/static/img/project-spg/[MPS-002] Sierpinski Whale.png b/static/img/project-spg/[MPS-002] Sierpinski Whale.png new file mode 100644 index 0000000..ed94dcd Binary files /dev/null and b/static/img/project-spg/[MPS-002] Sierpinski Whale.png differ diff --git a/static/img/project-spg/[MPS-003] Cosmic Microwave Background Over Silica Mountains.png b/static/img/project-spg/[MPS-003] Cosmic Microwave Background Over Silica Mountains.png new file mode 100644 index 0000000..e026555 Binary files /dev/null and b/static/img/project-spg/[MPS-003] Cosmic Microwave Background Over Silica Mountains.png differ diff --git a/static/img/project-spg/[TSS-001] The Pearled Gates.png b/static/img/project-spg/[TSS-001] The Pearled Gates.png new file mode 100644 index 0000000..5e86335 Binary files /dev/null and b/static/img/project-spg/[TSS-001] The Pearled Gates.png differ diff --git a/static/mg-key.asc b/static/mg-key.asc new file mode 100644 index 0000000..e85211f --- /dev/null +++ b/static/mg-key.asc @@ -0,0 +1,87 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +0ePAdfGEB7m/xK501kY= +=Dtsj +-----END PGP PUBLIC KEY BLOCK----- diff --git a/static/scripts/webmention.min.js b/static/scripts/webmention.min.js new file mode 100644 index 0000000..4a5139d --- /dev/null +++ b/static/scripts/webmention.min.js @@ -0,0 +1,3 @@ +// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt +!function(){"use strict";window.i18next=window.i18next||{t:function(n){return n}};const n=window.i18next.t.bind(window.i18next);function t(n,t){return document.currentScript.getAttribute("data-"+n)||t}const e=t("page-url",window.location.href.replace(/#.*$/,"")),o=t("add-urls",void 0),r=t("id","webmentions"),s=t("wordcount"),i=t("max-webmentions",30),l=t("prevent-spoofing")?"wm-source":"url",c=t("sort-by","published"),a=t("sort-dir","up"),u=t("comments-are-reactions"),p={"in-reply-to":n("replied"),"like-of":n("liked"),"repost-of":n("reposted"),"bookmark-of":n("bookmarked"),"mention-of":n("mentioned"),rsvp:n("RSVPed"),"follow-of":n("followed")},f={"in-reply-to":"šŸ’¬","like-of":"ā¤ļø","repost-of":"šŸ”„","bookmark-of":"ā­ļø","mention-of":"šŸ’¬",rsvp:"šŸ“…","follow-of":"šŸœ"},d={yes:"āœ…",no:"āŒ",interested:"šŸ’”",maybe:"šŸ’­"};function m(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""")}function h(t,e){const o=m(t.author?.name||t.url.split("/")[2]);let r=p[t["wm-property"]]||n("reacted");!e&&t.content&&t.content.text&&(r+=": "+g(t));let s="";t.author&&t.author.photo&&(s=`\n \n `);let i="";return t.rsvp&&d[t.rsvp]&&(i=`${d[t.rsvp]}`),`\n \n ${s}\n ${f[t["wm-property"]]||"šŸ’„"}\n ${i}\n \n `}function w(n){return n.substr(n.indexOf("//"))}function $(n){const t=[],e={};return n.forEach((function(n){const o=w(n.url);e[o]||(t.push(n),e[o]=!0)})),t}function g(n){let t=m(n.content.text);if(s){let n=t.replace(/\s+/g," ").split(" ",s+1);n.length>s&&(n[s-1]+="…",n=n.slice(0,s),t=n.join(" "))}return t}window.addEventListener("load",(async function(){const t=document.getElementById(r);if(!t)return;const s=[w(e)];o&&o.split("|").forEach((function(n){s.push(w(n))}));let p=`https://webmention.io/api/mentions.jf2?per-page=${i}&sort-by=${c}&sort-dir=${a}`;s.forEach((function(n){p+=`&target[]=${encodeURIComponent("http:"+n)}&target[]=${encodeURIComponent("https:"+n)}`}));let f={};try{const n=await window.fetch(p);n.status>=200&&n.status<300?f=await n.json():(console.error("Could not parse response"),new Error(n.statusText))}catch(n){console.error("Request failed",n)}let d=[];const b=[];u&&(d=b);const y={"in-reply-to":d,"like-of":b,"repost-of":b,"bookmark-of":b,"follow-of":b,"mention-of":d,rsvp:d};f.children.forEach((function(n){const t=y[n["wm-property"]];t&&t.push(n)}));let k="";d.length>0&&d!==b&&(k=function(t){return`\n

${n("Responses")}

\n
    ${t.map((t=>{const e=h(t,!0);let o=m(t.url.split("/")[2]);t.author&&t.author.name&&(o=m(t.author.name));const r=`${o}`;let s="name",i=`(${n("mention")})`;return t.name?(s="name",i=t.name):t.content&&t.content.text&&(s="text",i=g(t)),`
  • ${e} ${r} ${i}
  • `})).join("")}
\n `}($(d)));let x="";var v;b.length>0&&(v=$(b),x=`\n

${n("Reactions")}

\n
    ${v.map((n=>h(n))).join("")}
\n `),t.innerHTML=`${k}${x}`}))}(); +// @license-end \ No newline at end of file diff --git a/templates/base.html b/templates/base.html new file mode 100644 index 0000000..5b8404c --- /dev/null +++ b/templates/base.html @@ -0,0 +1,22 @@ + + + + Ydreniv's ~ webpage + + {% block stylesheet %} + {% endblock %} + {% block rss %} + + {% endblock %} + {% block head_extra %} + {% endblock %} + + + + + {% block content %} {% endblock %} + + {% include "includes/h-card.html" %} + {% include "includes/webmentions.html" %} + + diff --git a/templates/blog.html b/templates/blog.html new file mode 100644 index 0000000..1939a3d --- /dev/null +++ b/templates/blog.html @@ -0,0 +1,88 @@ +{% import "macros/authors.html" as authors_macros %} +{% import "macros/opengraph.html" as opengraph_macros %} + +{% extends "base.html" %} + +{% block stylesheet %} + + +{% endblock %} + +{% block head_extra %} +{% if section %} +{{ opengraph_macros::opengraph(title=section.title, url=section.permalink, content=section.content, type="website") }} +{% else %} +{% if page.extra.image %} +{% set image = config.base_url ~ page.extra.image %} +{% else %} +{% set image = "" %} +{% endif %} +{{ opengraph_macros::opengraph(title=page.title, url=page.permalink, content=page.content, type="article", image=image) }} +{% endif %} +{% endblock %} + +{% block content %} + +{% if page %} +{% set newspaper_date = page.date %} +{% else %} +{% set newspaper_date = now() %} +{% endif %} +
+
+

The Ydreniv Time

+ +
+ +
+ +
+ + {% if section %} + + {{ section.content | safe }} + +
+ {% for page in paginator.pages %} +
+
+

+ {{ page.title }} +

+

, by {{ authors_macros::authors_inline(authors=page.extra.authors) }}

+ {% if page.updated != page.date -%} +

This article has been edited on .

+ {% endif %} +
+
+ {{ page.content | safe }} +
+
+ {% endfor %} +
+ {% include "includes/pagination-navigation.html" %} + + {% elif page %} +
+
+

+ {{ page.title }} +

+

, by {{ authors_macros::authors_inline(authors=page.extra.authors) }}

+ {% if page.updated != page.date -%} +

This article has been edited on .

+ {% endif %} +
+
+ {{ page.content | safe }} +
+
+
+ {% endif %} +
+ +{% include "includes/footer.html" %} + +{% endblock content %} diff --git a/templates/buttons.html b/templates/buttons.html new file mode 100644 index 0000000..7c292dc --- /dev/null +++ b/templates/buttons.html @@ -0,0 +1,173 @@ +{% import "macros/opengraph.html" as opengraph_macros %} + +{% extends "base.html" %} + +{% block stylesheet %} + +{% endblock %} + +{% block head_extra %} +{{ opengraph_macros::opengraph(title=page.title, url=page.permalink, content=page.content, type="website", image=config.base_url ~ "/img/80x15/rss-fullposts.png") }} +{% endblock %} + +{% block content %} + +
+

+ {{ page.title }} +

+ +
+ +
+ {{ page.content | safe }} +
+

80x15

+
+

Feeds

+ RSS | Fullposts + RSS | Excerpts + RSS | Comments + RSS | Post + Com + RSS | Newsfeed + RSS | Who cares + RSS | Feed + RSS | 0.90 + RSS | 0.91 + RSS | 0.92 + RSS | 0.93 + RSS | 0.94 + RSS | 1.0 + RSS | 1.0 + RSS | 2.0 + Atom + Atom 0.3 + Atom | Valid + XML | Feed + XML | RSS 2.0 + RSS | Blogtorrent + OPML | Share it! + RSS + RSS | Valid !!! +
+
+

Computer stuff

+ mozilla firefox + no internet explorer + W3C | XHTML 1.1 + Jabber + Email me + Ultra | Tech + PGP Key + Unicode + Linux + Drupal.org + WP | Wordpress + Wordpress + Spip + XMPP me + Email + Contact + SMS me + Leave | feedback + Geo URL +
+
+

Music

+ pink floyd +
+
+

Political

+ Anar-com +
+
+

Queer

+ Bisexual + Pride +
+
+

Miscellaneous

+ i <3 mp3 + Frenchy + Go | veg! + January + February + March + April + May + June + July + August + September + October + November + December + Coffee | Powered + Evil | Cheese Is + Beer | Powered + Veg | Etarian + Coffee + Pizza !!! + Tea | Powered + <3 | Cranberry + šŸŒ | Banana + Hot | Sauce + Candy | Addict + Onigiri +
+
+
+

88x31

+ + 88x31 + +
+

People's sites, webrings and pubnixes

+ maia dot crimew dot gay + tilde.town logo + shark isp + versary town +
+
+

Computer stuff

+ Made with Vim + arch linux + this website sucks + best viewed with any browser + screw ya'll i'm going back to my local network + Made using GNU Nano editor + best viewed with any browser + Year 2000 Compliant | Y2K +
+
+

Political

+ acab + Anarchy now + this is an anti-nft site + piracy now! + keep the web free, say no to web3 + Anti Fascist Action +
+
+

Queer

+ queer pride + nonbinary pride + A trans flag : horizontal bands of light blue, pink, white, pink, light blue + A pride flag, with stripes of black, brown, red, orange, yellow, green, blue, purple +
+
+

Miscellaneous

+ don't click here + minecraft + powered by the void + SCP +
+ +
+
+ +{% include "includes/footer.html" %} + +{% endblock content %} diff --git a/templates/ideas.html b/templates/ideas.html new file mode 100644 index 0000000..a8f8bb7 --- /dev/null +++ b/templates/ideas.html @@ -0,0 +1,32 @@ +{% import "macros/opengraph.html" as opengraph_macros %} + +{% extends "base.html" %} + +{% block stylesheet %} + +{% endblock %} + +{% block head_extra %} +{{ opengraph_macros::opengraph(title=page.title, url=page.permalink, content=page.content, type="website") }} +{% endblock %} + +{% block content %} + +
+{% include "includes/site-navigation.html" %} +
+ +
+ + +

{{ page.title }}

+ +{% include "includes/page-navigation.html" %} + + {{ page.content |safe }} + +
+ +{% include "includes/footer.html" %} + +{% endblock content %} diff --git a/templates/includes/footer.html b/templates/includes/footer.html new file mode 100644 index 0000000..b289f33 --- /dev/null +++ b/templates/includes/footer.html @@ -0,0 +1,45 @@ +
+

+ + {% if page %} + Last update : {{ page.updated }} + {% elif section %} + Last update : {{ now() | date(format="%Y-%m-%d") }} + {% endif %} +

+
+

a member of the tilde.town ~ring

+

random ~user + | random ~box + | next ~user

+

join

+ +
+ +
+ tilde.town logo + Made with Vim + arch linux + this website sucks + best viewed with any browser + Anarchy now + this is an anti-nft site + piracy now! + don't click here + minecraft + powered by the void +
+
+ Anar-com + i <3 mp3 + Frenchy +
+ +
+ Made with Zola +
+
diff --git a/templates/includes/h-card.html b/templates/includes/h-card.html new file mode 100644 index 0000000..17a44d0 --- /dev/null +++ b/templates/includes/h-card.html @@ -0,0 +1,14 @@ + diff --git a/templates/includes/identity-card.html b/templates/includes/identity-card.html new file mode 100644 index 0000000..fe06090 --- /dev/null +++ b/templates/includes/identity-card.html @@ -0,0 +1,67 @@ +
+
+THIS IS A CONFIDENTIAL DOCUMENT, REQUIRING LEVEL-2 CLEARANCE PERMISSIONS. +ANY SECURITY BREACH MUST BE REPORTED. +INFRINGEMENT WILL BE PUNISHED. +
+
+
### 404 IMG NOT FOUND ###
+
+
+
+ NAME :YDRENIV +
+
+ALIASES : ### MISSING DATA ### +
+
+
+
+ DATE OF BIRTH : +
+
+PLACE OF BIRTH : TILDE.TOWN +
+
+
+
+
+
+STATUS IN OBSERVATION +
+
+ PRONOUNS THEY/THEM/WHATEVER +
+
+
+
+TILDE.TOWN YDRENIV +
+
+HOMEPAGE MATTHIAS4217 +
+
+MINIATURES MINIS BLOG +
+ +
+
+
+GITLAB ā›§ +
+
+GITHUB MATTHIAS4217 +
+ +
+
+
+REPUBLIC OF CYBERCAP +
+
+NĀ°349-74297-TJ-8142-81 +
+
+
diff --git a/templates/includes/links.html b/templates/includes/links.html new file mode 100644 index 0000000..120aaea --- /dev/null +++ b/templates/includes/links.html @@ -0,0 +1,10 @@ + diff --git a/templates/includes/list-pages.html b/templates/includes/list-pages.html new file mode 100644 index 0000000..d275ae7 --- /dev/null +++ b/templates/includes/list-pages.html @@ -0,0 +1,7 @@ + diff --git a/templates/includes/page-navigation.html b/templates/includes/page-navigation.html new file mode 100644 index 0000000..dc1c59e --- /dev/null +++ b/templates/includes/page-navigation.html @@ -0,0 +1,16 @@ + diff --git a/templates/includes/pagination-navigation.html b/templates/includes/pagination-navigation.html new file mode 100644 index 0000000..53c357a --- /dev/null +++ b/templates/includes/pagination-navigation.html @@ -0,0 +1,42 @@ +
+ + {% set last_page_index = (paginator.total_pages - 1)/paginator.paginate_by | int + 1 %} {# it's last_index -1 actually #} + + + + +
diff --git a/templates/includes/site-navigation.html b/templates/includes/site-navigation.html new file mode 100644 index 0000000..a603694 --- /dev/null +++ b/templates/includes/site-navigation.html @@ -0,0 +1,6 @@ + diff --git a/templates/includes/webmentions.html b/templates/includes/webmentions.html new file mode 100644 index 0000000..91ed5fa --- /dev/null +++ b/templates/includes/webmentions.html @@ -0,0 +1 @@ + diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 0000000..83560bc --- /dev/null +++ b/templates/index.html @@ -0,0 +1,38 @@ +{% import "macros/opengraph.html" as opengraph_macros %} + +{% extends "base.html" %} + +{% block stylesheet %} + +{% endblock %} + +{% block head_extra %} +{{ opengraph_macros::opengraph(title=section.title, url=section.permalink, content=section.content, type="website") }} +{% endblock %} + +{% block content %} + +
+{% include "includes/site-navigation.html" %} +{% include "includes/page-navigation.html" %} +{% include "includes/links.html" %} +
+ +
+ +

{{ section.title }}

+ +
+ +

Identity Card

+ + {% include "includes/identity-card.html" %} + +

+ + {{ section.content |safe }} + + {% include "includes/footer.html" %} +
+ +{% endblock content %} diff --git a/templates/macros/authors.html b/templates/macros/authors.html new file mode 100644 index 0000000..7d4987c --- /dev/null +++ b/templates/macros/authors.html @@ -0,0 +1,14 @@ +{# +# I assume we get an array of author names. in the variable `authors` +#} +{% macro authors_inline(authors) %} + {% set authors_infos = load_data(path="authors.yaml") %} + {% for author in authors %} + {% for author_infos in authors_infos.authors %} + {% if author_infos.name == author %} + {% set_global author = author_infos %} + {% endif %} + {% endfor %} +{{ author.name }} + {% endfor %} +{% endmacro %} diff --git a/templates/macros/opengraph.html b/templates/macros/opengraph.html new file mode 100644 index 0000000..59f106e --- /dev/null +++ b/templates/macros/opengraph.html @@ -0,0 +1,11 @@ +{% macro opengraph(title, url, content, type="", image="") %} + + + +{% if image %} + +{% endif %} +{% if type %} + +{% endif %} +{% endmacro %} diff --git a/templates/project-spg.html b/templates/project-spg.html new file mode 100644 index 0000000..7ed5f81 --- /dev/null +++ b/templates/project-spg.html @@ -0,0 +1,29 @@ +{% import "macros/opengraph.html" as opengraph_macros %} + +{% extends "base.html" %} + +{% block stylesheet %} + +{% endblock %} + +{% block head_extra %} +{{ opengraph_macros::opengraph(title=page.title, url=page.permalink, content=page.content, type="website", image=config.base_url ~ "/img/project-spg/%5BMCS-003%5D%20Window%20to%20the%20Fire.png") }} +{% endblock %} + +{% block content %} + +
+

{{ page.title }}

+ +
+ +
+ + {{ page.content |safe }} + +
+ +{% include "includes/footer.html" %} +{% endblock content %} diff --git a/templates/test.html b/templates/test.html new file mode 100644 index 0000000..a34ce2c --- /dev/null +++ b/templates/test.html @@ -0,0 +1,26 @@ +{% extends "base.html" %} + +{% block stylesheet %} + +{% endblock %} + +{% block content %} + +
+{% include "includes/site-navigation.html" %} +
+ +
+ + +

{{ page.title }}

+ +{% include "includes/page-navigation.html" %} + + {{ page.content |safe }} + +
+ +{% include "includes/footer.html" %} + +{% endblock content %}