forked from Fediversity/fediversity.eu
more structured front page
this allows for more customised styling
This commit is contained in:
parent
ee6e661eaf
commit
0470af8e94
|
@ -19,59 +19,107 @@ in
|
||||||
${pages.fediversity.summary}
|
${pages.fediversity.summary}
|
||||||
|
|
||||||
[Learn more about Fediversity](${link pages.fediversity})
|
[Learn more about Fediversity](${link pages.fediversity})
|
||||||
|
|
||||||
# Fediversity grants
|
|
||||||
|
|
||||||
${pages.grants.summary}
|
|
||||||
|
|
||||||
[Learn more about Fediversity grants](${link pages.grants})
|
|
||||||
|
|
||||||
# Consortium
|
|
||||||
|
|
||||||
The Consortium behind the Fediversity project is a cooperation between NLnet, Open Internet Discourse Foundation, NORDUnet and Tweag.
|
|
||||||
|
|
||||||
${toString (map (partner: ''
|
|
||||||
## ${partner.title}
|
|
||||||
|
|
||||||
${partner.summary}
|
|
||||||
|
|
||||||
[Read more about ${partner.title}](${link partner})
|
|
||||||
'') (with pages; [ nlnet oid tweag nordunet ]))}
|
|
||||||
|
|
||||||
# Fediverse explained
|
|
||||||
|
|
||||||
${toString (map (role: ''
|
|
||||||
## ${role.title}
|
|
||||||
|
|
||||||
${role.summary}
|
|
||||||
|
|
||||||
[Read more about ${role.title}](${link role})
|
|
||||||
'') (with pages; [ individuals developers european-commission ]))}
|
|
||||||
|
|
||||||
# News
|
|
||||||
|
|
||||||
${
|
|
||||||
let
|
|
||||||
sorted = with lib; reverseList (sortOn (entry: entry.date) cfg.collections.news.entry);
|
|
||||||
in
|
|
||||||
lib.join "\n" (map (article: ''
|
|
||||||
- ${article.date} [${article.title}](${link article})
|
|
||||||
'') sorted)
|
|
||||||
}
|
|
||||||
|
|
||||||
# Events
|
|
||||||
|
|
||||||
${
|
|
||||||
let
|
|
||||||
sorted = with lib; reverseList (sortOn (entry: entry.start-date) cfg.collections.events.entry);
|
|
||||||
in
|
|
||||||
lib.join "\n" (map (article: ''
|
|
||||||
- ${article.start-date} [${article.title}](${link article})
|
|
||||||
'') sorted)
|
|
||||||
}
|
|
||||||
'';
|
'';
|
||||||
outputs.html = (cfg.templates.html.page config).override {
|
outputs.html = (cfg.templates.html.page config).override (final: prev: {
|
||||||
html.head.title.text = "Fediversity";
|
html = {
|
||||||
};
|
head.title.text = "Fediversity";
|
||||||
|
body.content =
|
||||||
|
let
|
||||||
|
prev-content = prev.html.body.content;
|
||||||
|
to-section = { heading, body, attrs ? { } }: {
|
||||||
|
section = {
|
||||||
|
heading.content = heading;
|
||||||
|
inherit attrs;
|
||||||
|
content = [
|
||||||
|
(cfg.templates.html.markdown {
|
||||||
|
name = "${config.name}-${lib.slug heading}";
|
||||||
|
inherit body;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in
|
||||||
|
[
|
||||||
|
(lib.head prev-content) # header
|
||||||
|
{
|
||||||
|
section = {
|
||||||
|
attrs = { };
|
||||||
|
heading.content = config.title;
|
||||||
|
content = [
|
||||||
|
(cfg.templates.html.markdown { inherit (config) name body; })
|
||||||
|
]
|
||||||
|
++
|
||||||
|
(map to-section [
|
||||||
|
{
|
||||||
|
heading = "Fediversity grants";
|
||||||
|
body = ''
|
||||||
|
${pages.grants.summary}
|
||||||
|
|
||||||
|
[Learn more about Fediversity grants](${link pages.grants})
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
{
|
||||||
|
heading = "Consortium";
|
||||||
|
body = ''
|
||||||
|
The Consortium behind the Fediversity project is a cooperation between NLnet, Open Internet Discourse Foundation, NORDUnet and Tweag.
|
||||||
|
|
||||||
|
${toString (map (partner: ''
|
||||||
|
### ${partner.title}
|
||||||
|
|
||||||
|
${partner.summary}
|
||||||
|
|
||||||
|
[Read more about ${partner.title}](${link partner})
|
||||||
|
'') (with pages; [ nlnet oid tweag nordunet ]))}
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
{
|
||||||
|
heading = "Fediverse explained";
|
||||||
|
body = ''
|
||||||
|
${toString (map (role: ''
|
||||||
|
### ${role.title}
|
||||||
|
|
||||||
|
${role.summary}
|
||||||
|
|
||||||
|
[Read more about ${role.title}](${link role})
|
||||||
|
'') (with pages; [ individuals developers european-commission ]))}
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
]);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
]
|
||||||
|
++
|
||||||
|
(map to-section [
|
||||||
|
{
|
||||||
|
heading = "News";
|
||||||
|
attrs = { class = [ "collection" ]; };
|
||||||
|
body =
|
||||||
|
let
|
||||||
|
sorted = with lib; reverseList (sortOn (entry: entry.date) cfg.collections.news.entry);
|
||||||
|
in
|
||||||
|
lib.join "\n" (map
|
||||||
|
(article: ''
|
||||||
|
- ${article.date} [${article.title}](${link article})
|
||||||
|
'')
|
||||||
|
sorted);
|
||||||
|
}
|
||||||
|
{
|
||||||
|
heading = "Events";
|
||||||
|
attrs = { class = [ "collection" ]; };
|
||||||
|
body =
|
||||||
|
let
|
||||||
|
sorted = with lib; reverseList (sortOn (entry: entry.start-date) cfg.collections.events.entry);
|
||||||
|
in
|
||||||
|
lib.join "\n" (map
|
||||||
|
(article: ''
|
||||||
|
- ${article.start-date} [${article.title}](${link article})
|
||||||
|
'')
|
||||||
|
sorted);
|
||||||
|
}
|
||||||
|
]);
|
||||||
|
};
|
||||||
|
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue