Compare commits

...

1 Commits

  1. 16
      content/pages/colophon.en.md
  2. 16
      content/pages/colophon.nl.md
  3. 4
      content/pages/header.en.md
  4. 32
      content/pages/infrastructure.en.md
  5. 4
      content/pages/stream.en.md
  6. 16
      content/pages/stream.md
  7. 4
      content/pages/stream.nl.md
  8. 207
      themes/varia/static/css/main.css
  9. 38
      themes/varia/templates/base.html
  10. 167
      themes/varia/templates/index.html

16
content/pages/colophon.en.md

@ -0,0 +1,16 @@
Title: colophon
Date: 2018-12-18
Category: about
Slug: colophon
lang: en
Varia<br>
Gouwstraat 3<br>
3082 BA<br>
Rotterdam<br>
[info@varia.zone](mailto:info@varia.zone)
[mailinglist](https://we.lurk.org/postorius/lists/varia.we.lurk.org/)<br>
[RSS feed](feeds/all-en.rss.xml)
[NL](/) / [EN](/en/){.active} <br>

16
content/pages/colophon.nl.md

@ -0,0 +1,16 @@
Title: colophon
Date: 2018-12-18
Category: about
Slug: colophon
lang: nl
Varia<br>
Gouwstraat 3<br>
3082 BA<br>
Rotterdam<br>
[info@varia.zone](mailto:info@varia.zone)
[mailinglijst](https://we.lurk.org/postorius/lists/varia.we.lurk.org/)<br>
[RSS feed](feeds/all-nl.rss.xml)
[NL](/){.active} / [EN](/en/)<br>

4
content/pages/header.en.md

@ -4,4 +4,6 @@ Category: about
Slug: header
lang: en
<a class="h-card" rel="me" href="https://varia.zone/en/">*varia*</a> (Gouwstraat 3, Rotterdam) is a space for developing collective approaches to everyday technology. *varia* is an [association](/en/pages/about.html#contact) whose members organize [events](/en/category/event.html) and collaborate in [work groups](/en/category/work-group.html). *varia* is [around 90m<sup>2</sup>](/en/pages/about.html#offline) and has a [100/35<sup>mbps</sup> connection](/en/pages/about.html#online). *varia* works with [free software](https://git.vvvvvvaria.org), provides [a set of tools](/en/pages/about.html). *varia* figures things out as she goes, tries to keep [notes](https://vvvvvvaria.org/archive), is [bilingual](/) and uses [info[@]varia.zone](mailto:info@varia.zone) to send and receive emails.
<a class="h-card" rel="me" href="https://varia.zone/en/">*varia*</a> (Gouwstraat 3, Rotterdam) is a space for collective approaches to everyday technology. Through events and work groups, varia members facilitate [a social infrastructure](/en/pages/infrastructure.html) for questions, opinions, modifications, help and action. *varia* works with free software, is around 90m2 and has a 100/35mbps connection. *varia* figures things out as she goes, tries to keep notes, is [bilingual](/) and can be contacted via [info[@]varia.zone](mailto:info@varia.zone).

32
content/pages/infrastructure.en.md

@ -0,0 +1,32 @@
Title: infrastructure
Date: 2018-12-18
Category: about
Slug: infrastructure
lang: en
#Channels
varia experiments with tools for building physical and digital infrastructures of affinity.
A conscious decision has been taken to be considerate about the channels that we use to communicate through: what kind of new interactions are made possible through the protocolary other? Its members use federated networks like XMPP group chats, Mastodon instances, RSS feeds or the unflinching mailing list. Fragmented spaces of sociality that self-determine how they connect to one another.
We look for ways to stay connected by offering a locally-accessible [library](https://books.vvvvvvaria.org/)(accessible without login in Varia itself), etherpads, calendar and [git repositories](https://git.vvvvvvaria.org/). Similarly, we are working on developing a depot for electronic parts and workbenches, as well as printing facilities.
+ archive mentioned somewhere
## <a id="online">online resources</a>
*varia* hosts , , [etherpad](https://pad.vvvvvvaria.org/) and a [calender](https://cal.vvvvvvaria.org/).
###XMPP
In addition to the above web services *varia* hosts a server for the federated chat protocol XMPP, supporting all the latest features.
<a href='https://check.messaging.one/result.php?domain=vvvvvvaria.org&amp;type=client'>
<img src='https://check.messaging.one/badge.php?domain=vvvvvvaria.org' alt='IM observatory score' />
</a>
<a href='https://compliance.conversations.im/server/vvvvvvaria.org'><img src='https://compliance.conversations.im/badge/vvvvvvaria.org'></a>
###RSS
Subscribe to our RSS feeds, available in [Dutch](http://varia.zone/feeds/all-nl.rss.xml) and [English](http://varia.zone/en/feeds/all-en.rss.xml).
<a href="https://validator.w3.org/feed/check.cgi?url=http%3A//varia.zone/feeds/all-nl.rss.xml"><img src="/images/valid-rss-rogers.png" alt="[Valid RSS]" title="Validate my RSS feed" /></a>

4
content/pages/stream.en.md

@ -1,4 +0,0 @@
Title: stream
Category: meta
Slug: stream
lang: en

16
content/pages/stream.md

@ -0,0 +1,16 @@
Title: stream
Category: meta
Slug: stream
# 18 Dec 2018
[![](https://vvvvvvaria.org/stream/fXQltIw8Ti2w4C0eYlQE5g.jpg)](https://vvvvvvaria.org/stream/fXQltIw8Ti2w4C0eYlQE5g.jpg){.container}
---
# 12 Dec 2018
XPPL is running!
---

4
content/pages/stream.nl.md

@ -1,4 +0,0 @@
Title: stream.nl
Category: meta
Slug: stream
lang: nl

207
themes/varia/static/css/main.css

@ -34,23 +34,21 @@
font-weight: bold;
font-style: italic;
}
body{
position: relative;
width: calc(100% - 50px);
width: calc(100% - 100px);
min-width: 500px;
top:0px;
left:0px;
margin:0 auto 5em auto;
padding: 14px 15px;
margin:15px;
padding:0 10px;
font-family: "main", monospace;
font-size: 22px;
line-height:1.65;
background-color: rgba(238, 238, 238, 0.5);
color:#164515;
}
#content{
margin-top:1em;
}
/****************************/
/* general elements */
@ -136,8 +134,9 @@ ul li{
}
/* date */
.article-info .event-details{
color:#7e5211;
color:#164515;
}
/* featured image */
.article-info .featured-image img{
width:100%;
@ -174,94 +173,105 @@ ul li{
content:'→';
}
/****************************/
/* streambot */
#background{
display: block;
position: fixed;
top:0px;
left:0px;
width: 100%;
height: 100vh;
z-index: -1;
opacity: 0.15;
background-clip: padding-box;
background-position: center center;
background-size: cover;
}
#stream{
min-height: 200px;
font-size: 14px;
margin:2em 0 2em 0;
border:1px dotted;
min-height: 300px;
}
#stream .log{
display: inline-block;
}
#stream a.container{
background-clip: padding-box;
background-position: center center;
background-size: cover;
/*height: none;*/
/*width: none;*/
}
/* reset header img styles */
#stream a.container img{
min-width: none;
min-height: none;
width: 100px;
height: auto;
}
#stream a{
display: block;
}
#stream.overview{
width: 100%;
}
div#stream a:nth-child(odd) {
transform: skew(-2deg);
}
div#stream a:nth-child(even) {
transform: skew(2deg);
}
/****************************/
/* header & #translation */
header {
width:calc(100% - 50px);
margin-top:26px;
margin-bottom:5em;
padding-bottom:1em;
width:100%;
min-height: 230px;
font-family: "header";
font-size: 17px;
line-height: 1.6;
letter-spacing: -0.03em;
}
header img{
width: 50px;
display: inline;
margin: 0;
vertical-align: calc(-2px);
}
/* custom font size for index */
#content.index header{
font-size: 24px;
line-height: 1.5;
margin-top:0;
}
header p{
display: inline;
}
#stream{
position: absolute;
width: 100%;
header #about{
display: inline-block;
width: calc(100% - 130px);
}
#stream a .container{
background-clip: padding-box;
background-position: center center;
background-size: cover;
height: 600px;
width: 100%;
header #about p{
display: inline;
}
/* reset header img styles */
#stream a .container img{
min-width: none;
min-height: none;
width: none;
height: none;
}
#stream a{
display: block;
}
#stream.overview{
width: 100%;
}
div#stream a:nth-child(odd) {
transform: skew(-2deg);
}
div#stream a:nth-child(even) {
transform: skew(2deg);
}
.buttons{
position: absolute;
font-size: 14px;
margin:0;
padding:0;
}
.buttons.top, .buttons.side{
top:10px;
right:15px;
text-align: right;
}
.buttons.side{
top:40px;
header #colophon{
position: relative;
float: right;
margin:8px 0 10px 0;
padding:0;
width:100px;
text-align: center;
font-family: "main";
font-size: 14px;
letter-spacing: 0em;
}
.buttons.side li{
display: block;
#colophon a.active{
text-decoration: none;
}
#colophon a.active:hover{
cursor: default;
}
.buttons li{
list-style: none;
display: inline-block;
padding-left: 3px;
}
.buttons li.active a{
text-decoration: none;
}
/****************************/
/* main/index overview page */
#content #post-list{
width: 100%;
}
@ -300,13 +310,14 @@ header {
display: block;
width: 100%;
font-family: "kop";
font-size: 185%;
font-size: 170%;
font-weight: bold;
line-height: 1.15;
margin:0;
}
.hentry .article-info .entry-title a{
text-decoration: none;
color: #164515;
}
/* ascii art styling */
.hentry pre{
@ -314,19 +325,49 @@ header {
font-weight: normal;
clear:both; /*to prevent the ascii to break up*/
}
/* double-blocks for super important categories */
.hentry.current, .hentry.article, .hentry.artikel, .hentry.current .article-info, .hentry.current .featured-image img{
/* custom css for upcoming events */
.hentry.current, .hentry.current .entry-title a, .hentry.current .summary .read_more a, .hentry.current .summary .read_more::before, .hentry.current .post-info a, .hentry.current .post-info .categories::before, .hentry.current .event-details{
/*color:blue;*/
}
.hentry.current .separator hr{
/*border-top: 1px dotted blue;*/
}
/* upcoming */
.current .article-info .event-details::after{
/*background-color:pink;*/
content:'UPCOMING';
font-size: 11px;
transform: rotate(0deg);
position: absolute;
padding: 5px;
border-radius: 100%;
margin-left: 1em;
-webkit-animation: 0.2s linear 1s infinite alternate blink;
animation: 0.2s linear 1s infinite alternate blink;
}
/* double-blocks for articles */
.hentry.article, .hentry.artikel {
width: calc(400px + 1em);
}
/* color background for articles */
/* custom css for articles */
.hentry.article, .hentry.artikel{
padding:1.5em 1em 1em 1em;
border:1px dashed #7e5211;
border-radius:15px;
}
/****************************/
/* page */
div#page-content{
margin-top:3em;
}
/****************************/
/* article */
#content.body .entry-title{
display:inline-block;
font-family: "kop";
@ -341,6 +382,10 @@ header {
width:200px;
float: left;
}
/****************************/
/* page + article */
.entry-content-container, #page-content-container{
width: calc(100% - 260px);
float: right;
@ -401,3 +446,11 @@ sup span{
sup span p{
display: inline;
}
/* animations */
@-webkit-keyframes blink { from { opacity: 1; } to { opacity: 0.2; } }
@keyframes blink { from { opacity: 1; } to { opacity: 0.2; }
@-webkit-keyframes wobble { from { transform: rotate(-15deg); } to { transform: rotate(15deg); } }
@keyframes wobble { from { transform: rotate(-15deg); } to { transform: rotate(15deg); } }

38
themes/varia/templates/base.html

@ -14,37 +14,11 @@
</head>
<body id="index" class="home">
<div class="buttons top">
{% if I18N_SUBSITES %}
{% for lang, url in I18N_SUBSITES.items() %}
{% if DEFAULT_LANG == 'nl' %}
{% if lang == 'nl' %}
<li><em>varia</em> kent de volgende gedaantes: </li>
<li><a href="https://we.lurk.org/postorius/lists/varia.we.lurk.org/" target="_blank"><i class="fa fa-rss "></i>mailinglijst </a></li>
<li><a href="feeds/all-{{ DEFAULT_LANG }}.rss.xml" type="application/rss+xml"><i class="fa fa-rss "></i>RSS feed </a></li>
<!-- <li><a href="#"><i class="fa fa-rss "></i>.ics kalendar</a></li> -->
<li {% if DEFAULT_LANG == 'nl' %} class="active"><a href="/">Nederlands</a>{% else %}><a href="/">Nederlands</a>{% endif %}</li>
<li{% if DEFAULT_LANG == 'en' %} class="active"><a href="/en/">English</a>{% else %}><a href="/en/">English</a>{% endif %}</li>
{% endif %}
{% endif %}
{% if DEFAULT_LANG == 'en' %}
{% if lang == 'en' %}
<li><em>varia</em> comes in many forms: </li>
<li><a href="https://we.lurk.org/postorius/lists/varia.we.lurk.org/" target="_blank"><i class="fa fa-rss "></i>mailinglist </a></li>
<li><a href="feeds/all-{{ DEFAULT_LANG }}.rss.xml" type="application/rss+xml"><i class="fa fa-rss "></i>RSS feed </a></li>
<!-- <li><a href="#"><i class="fa fa-rss "></i>.ics calendar</a></li> -->
<li {% if DEFAULT_LANG == 'nl' %} class="active"><a href="/">Nederlands</a>{% else %}><a href="/">Nederlands</a>{% endif %}</li>
<li{% if DEFAULT_LANG == 'en' %} class="active"><a href="/{{lang}}">English</a>{% else %}><a href="/{{lang}}">English</a>{% endif %}</li>
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
<br>
</div>
<div class="buttons top">
</div>
{% block content %}
{% endblock %}
<!-- <div id="background" style="background-image: url(https://vvvvvvaria.org/stream/YL6kn2e-QvOn2BOCbfx-yw.jpg)"></div> -->
<!-- <div id="background" style="background-image: url(https://vvvvvvaria.org/stream/Lo4AAGW9TCuZr664UYL55g.jpg)"></div> -->
<!-- <div id="background" style="background-image: url(https://vvvvvvaria.org/stream/KXdP3NScR-2Zd5uUZn5OoA.jpg)"></div> -->
<div id="background" style="background-image: url(https://vvvvvvaria.org/stream/Fsso8ElEThSM6cwkE4rCMA.jpg)"></div>
{% block content %}
{% endblock %}
</body>
</html>

167
themes/varia/templates/index.html

@ -1,16 +1,35 @@
{% extends "base.html" %}
{% block content %}
<section id="content" class="index">
<header id="banner">
{% for p in pages %}
{% if p.title == 'header' %}
<div id="title">
{{ p.content }}
</div>
{% endif %}
{% endfor %}
<header>
<div id="about">
{% for p in pages %}
{% if p.title == 'header' %}
{{ p.content }}
{% endif %}
{% endfor %}
</div>
<div id="colophon">
{% for p in pages %}
{% if p.title == 'colophon' %}
{{ p.content }}
{% endif %}
{% endfor %}
</div>
</header>
<div id="stream">
<div class="intro">Since the last update of the website, the streambot collected the following logs:</div>
<div class="logs">
{% for p in pages %}
{% if p.title == 'stream' %}
{{ p.content }}
{% endif %}
{% endfor %}
</div>
</div>
{% set glob={} %}
{% if DEFAULT_LANG == 'nl' %}
@ -35,75 +54,75 @@
<div id="post-list">
{% for article in articles_page.object_list %}
{% set thumb_size = '/thumb' %}
{% if article.category %}
{% if article.event_start %}
{% set event_status = '' %}
{% if article.event_start < article.date.now() %}
{% set event_status = ' past' %}
{% endif %}
{% if article.event_start >= article.date.now() %}
{% set event_status = ' current' %}
{% set thumb_size = '/thumb2x' %}
{% endif %}
{% if article.category == 'article' %}
{% set thumb_size = '/thumb2x' %}
{% endif %}
{% endif %}
<article class="hentry {{article.category}}{{event_status}}">
{% endif %}
<div class="article-info">
<span class="entry-title"><a href="/{% if article.lang == 'en' %}en/{% endif %}{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></span>
{% if article.event_start %}
<div class="event-details">
{{ article.event_start | strftime('%d %B %Y') }}
</div>
{% else %}
<div class="event-details"></div>
{% endif %}
<div class="featured-image {{event_status}}">
{% if article.featured_image %}
<a href="/{% if article.lang == 'en' %}en/{% endif %}{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}">
{% if article.featured_image.endswith('.gif') %}
{% set thumb_size =''%}
{% endif %}
<img src="{{ article.featured_image | replace('images','images'+thumb_size) }}">
{% if loop.index < 6 %}
{% set thumb_size = '/thumb' %}
{% if article.event_start %}
{% set event_status = '' %}
{% if article.event_start < article.date.now() %}
{% set event_status = ' past' %}
{% endif %}
{% if article.event_start >= article.date.now() %}
{% set event_status = ' current' %}
{% endif %}
{% endif %}
<article class="hentry {{article.category}}{{event_status}}">
<div class="article-info">
<span class="entry-title"><a href="/{% if article.lang == 'en' %}en/{% endif %}{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></span>
{% if article.event_start %}
<div class="event-details">
{{ article.event_start | strftime('%d %B %Y') }}
</div>
{% else %}
<div class="event-details"></div>
{% endif %}
<div class="featured-image {{event_status}}">
{% if article.featured_image %}
<a href="/{% if article.lang == 'en' %}en/{% endif %}{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}">
{% if article.featured_image.endswith('.gif') %}
{% set thumb_size =''%}
{% endif %}
<img src="{{ article.featured_image | replace('images','images/thumb') }}">
</a>
{% endif %}
</div>
</div>
<div class="summary {{ article.category }}">{{ article.summary }}
<span class="read_more">
{% if DEFAULT_LANG == 'en' %}
<a href="/en/{{ article.url }}">{{ glob.read_more }}</a>
{% elif DEFAULT_LANG == 'nl' %}
<a href="/{{ article.url }}">{{ glob.read_more }}</a>
{% endif %}
</span>
</div>
<div class="separator"><hr></div>
<div class="post-info">
{% if article.category %}
<span class="categories">
<span itemprop="articleSection">
<a href="/category{{ article.category.url }}" rel="category">{{ article.category }}</a>
</span>
</span>
{% endif %}
{% if article.tags %}
<span class="tags">
{{ glob.related_to }}
{% for tag in article.tags %}
<span itemprop="keywords">
<a href="/{{ tag.url }}" rel="tag">{{ tag }}</a>
</span> {% endfor %}
</span>
{% endif %}
</div>
</article>
</a>
{% endif %}
</div>
</div>
{% endif %}
<div class="summary {{ article.category }}">{{ article.summary }}
<span class="read_more">
{% if DEFAULT_LANG == 'en' %}
<a href="/en/{{ article.url }}">{{ glob.read_more }}</a>
{% elif DEFAULT_LANG == 'nl' %}
<a href="/{{ article.url }}">{{ glob.read_more }}</a>
{% endif %}
</span>
</div>
<div class="separator"><hr></div>
<div class="post-info">
{% if article.category %}
<span class="categories">
<span itemprop="articleSection">
<a href="/category{{ article.category.url }}" rel="category">{{ article.category }}</a>
</span>
</span>
{% endif %}
{% if article.tags %}
<span class="tags">
{{ glob.related_to }}
{% for tag in article.tags %}
<span itemprop="keywords">
<a href="/{{ tag.url }}" rel="tag">{{ tag }}</a>
</span> {% endfor %}
</span>
{% endif %}
</div>
</article>
{% endfor %}
</div><!-- /#posts-list -->

Loading…
Cancel
Save