Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: 📄 Add Detail Pages for Definitions #75

Merged
merged 60 commits into from
Mar 9, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
a63f864
fix: untrack definitions in dist
ovlb Feb 15, 2020
ea3420d
feat(detail pages): update item link
ovlb Feb 15, 2020
19a9e38
feat(detail pages): add layout
ovlb Feb 15, 2020
a3c4cd9
feat(detail pages): render whole definition content
ovlb Feb 15, 2020
48499fb
feat(detail pages): remove definitons from homepage
ovlb Feb 15, 2020
dcff70a
🧹 def list component
ovlb Feb 15, 2020
cfee01f
feat(layout): render site footer in all pages
ovlb Feb 15, 2020
1c35eb7
feat(detail pages): rename definition root class && move css into par…
ovlb Feb 15, 2020
77400ec
chore: abstract further css into own files
ovlb Feb 16, 2020
4af580b
feat(detail pages): update headling level of definition content
ovlb Feb 16, 2020
e43e6f8
feat(styles): set box sizing
ovlb Feb 16, 2020
0f1217f
feat(styles): add margin bottom utility
ovlb Feb 16, 2020
d785700
feat(styles): selection
ovlb Feb 16, 2020
1ee49fd
feat(components): sub page header own component
ovlb Feb 16, 2020
187a395
feat(detail pages): add sections
ovlb Feb 16, 2020
0430f12
feat(style): mian headline
ovlb Feb 16, 2020
3af8a2d
feat(page layout): rename page content grid
ovlb Feb 16, 2020
babe6b0
feat(page layout): add wide content class
ovlb Feb 16, 2020
b600fae
feat(detail pages): set document title
ovlb Feb 16, 2020
0d2817a
feat(detail pages): set uniform document title for docs and definitions
ovlb Feb 16, 2020
c460dae
feat(page title): add comment
ovlb Feb 16, 2020
821df1c
feat(detail pages): add meta description
ovlb Feb 16, 2020
caec890
feat(detail pages): wrap def header in article tag
ovlb Feb 16, 2020
14e3594
chore: set up ava
ovlb Feb 16, 2020
fa50c6d
feat(filters): move permalink function into file, add test
ovlb Feb 16, 2020
a482447
chore: rename _temp to _util, remove creation script
ovlb Feb 18, 2020
84ac638
feat(detail pages): helper function to find additional definitions
ovlb Feb 18, 2020
95893c8
chore: move helpers to single directory
ovlb Feb 18, 2020
faeb96a
feat(detail pages): create shortcode for further definition navigation
ovlb Feb 18, 2020
505822d
feat(detail pages): fix find defs function
ovlb Feb 18, 2020
6120e55
feat(detail pages): shortcode for browse nav markup
ovlb Feb 18, 2020
25250cf
chore: fix collection mock data
ovlb Feb 18, 2020
64d8422
feat(detail pages): render browse nav
ovlb Feb 18, 2020
1c3a88c
feat(detail pages): style browse nav, style improvements
ovlb Feb 18, 2020
eabfabc
feat(detail pages): test redirect
ovlb Feb 18, 2020
325190e
Merge remote-tracking branch 'origin/master' into feature/definition-…
ovlb Feb 18, 2020
f3bf666
feat(detail pages): client side redirect
ovlb Feb 18, 2020
b4b4f23
feat(homepage): set title
ovlb Feb 18, 2020
6e8841e
Merge branch 'master' into feature/definition-detail-page
ovlb Feb 19, 2020
706d373
Merge remote-tracking branch 'origin/master' into feature/definition-…
ovlb Mar 4, 2020
8d54280
💅
ovlb Mar 4, 2020
3f9574d
feat(detail pages): incorporate design changes
ovlb Mar 4, 2020
77694ab
feat(detail pages): hide browse headlines
ovlb Mar 4, 2020
6c0c310
feat(detail pages): label lists
ovlb Mar 4, 2020
8e26cbc
feat(footer): add aria label
ovlb Mar 4, 2020
6dbf184
feat(detail pages): redice heading level in md
ovlb Mar 4, 2020
cd123cb
feat(detail pages): spacing in browse nav
ovlb Mar 4, 2020
2cac7d7
feat(detail pages): reduce line height
ovlb Mar 4, 2020
48cdcb0
feat(detail pages): set max width w/o breaking homepage
ovlb Mar 4, 2020
391f7e4
feat(detail pages): replace in-definition definition links
ovlb Mar 4, 2020
5a7f697
🧹
ovlb Mar 4, 2020
b216e5b
feat(detail pages): recover spacing utility
ovlb Mar 4, 2020
725af04
🧹
ovlb Mar 4, 2020
29b0d54
chore(packages): update ava
ovlb Mar 4, 2020
68f96b2
config: specify nvm version
ovlb Mar 4, 2020
fa939ac
Merge remote-tracking branch 'origin/master' into feature/definition-…
ovlb Mar 5, 2020
5dc43d2
Merge remote-tracking branch 'origin/master' into feature/definition-…
ovlb Mar 8, 2020
d95a0f2
💅
ovlb Mar 8, 2020
2ca1f6e
Merge remote-tracking branch 'origin/master' into feature/definition-…
ovlb Mar 9, 2020
a24563f
💅
ovlb Mar 9, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 9 additions & 3 deletions .eleventy.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
const definitionPermalink = require('./11ty/helpers/definitionPermalink');
const renderDefinitionContentNextEntries = require('./11ty/shortcodes/renderDefinitionContentNextEntries');
const findExistingDefinition = require('./11ty/filters/helpers/findExistingDefinition');
const definitionPermalink = require('./11ty/filters/definitionPermalink');

module.exports = function(config) {
// Add a filter using the Config API
Expand Down Expand Up @@ -68,12 +69,17 @@ module.exports = function(config) {
const sep = flag.text && info.text ? '—' : '';
const text = flag.text ? [info.text, flag.text].join(sep) : info.text;

return `<p class="word__signal word__signal--${info.class}">${text}</p>`;
return `<p class="definition-content__signal definition-content__signal--${info.class}">${text}</p>`;
}

return '<p class="word__signal"></p>';
return '<p class="definition-content__signal"></p>';
});

config.addShortcode(
'renderDefinitionContentNextEntries',
renderDefinitionContentNextEntries
);

// NOTE (ovlb): this will not be remembered as the best code i’ve written. if anyone seeing this has a better solution then the following to achieve sub groups of the definitions: i am happy to get rid of it
config.addCollection('tableOfContent', (collection) => {
const allItems = collection
Expand Down
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
12
32 changes: 32 additions & 0 deletions 11ty/_includes/components/definition-content.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<section class="definition-content">
<section class="u-margin-bottom-double" aria-labelledby="definition-speech">
<h2 id="definition-speech" class="visually-hidden">Speech</h2>
<p class="definition-content__speech">{{ speech }}</p>
</section>
<section class="definition-content__content">
{{ content | safe }}
{# <p>{{ alt_words }}</p> #}
</section>
{%- if alt_words -%}
<section class="definition-content__content">
<h2 id="alt-words">Alt Words</h2>
<ul class="list-semicolon" aria-labelledby="alt-words">
{% for word in alt_words %}
<li>{{ word | linkIfExistsInCollection(collections.definedWords) | safe }}</li>
{% endfor %}
</ul>
</section>
{% endif %}
{%- if reading -%}
<section class="definition-content__content">
<h2 id="further-reading">Further Reading</h2>
<ul class="list-semicolon" aria-labelledby="further-reading">
{% for link in reading %}
<li>
<a href="{{link.href}}">{{ link.text }}</a>
</li>
{% endfor %}
</ul>
</section>
{% endif %}
</section>
29 changes: 0 additions & 29 deletions 11ty/_includes/components/definition.njk

This file was deleted.

5 changes: 0 additions & 5 deletions 11ty/_includes/components/defintions-list.njk

This file was deleted.

4 changes: 4 additions & 0 deletions 11ty/_includes/components/sub-page-header.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<div id="title">
<a href="/">Self-Defined</a>
<p>A modern dictionary about us.<br>We define our words, but they don't define us.</p>
</div>
22 changes: 19 additions & 3 deletions 11ty/_includes/layouts/base.njk
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,28 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>{{ renderData.title or title or metadata.title }}</title>
<meta name="description" content="{{ renderData.description or description or metadata.description }}">
{# Use title with path, or append a space to the page title to avoid collpasing with the meta title #}
{% set pageTitle = titleWithPath or title + ' ' or '' %}
<title>{{ pageTitle + metadata.title }}</title>
<meta
name="description"
content="{{ renderData.description or description or metadata.description }}"
>

<link rel="stylesheet" href="{{ '/assets/css/base.css' | url }}">
</head>
<body>
{% block content %}{% endblock content %}
<footer class="site-footer">
<nav aria-label="Complimentary">
<ul class="navigation-list">
<li>
<a href="/documentation/">Documentation</a>
</li>
</ul>
</nav>
</footer>
{% block pageScript %}
{% endblock pageScript %}
</body>
</html>
</html>
19 changes: 19 additions & 0 deletions 11ty/_includes/layouts/definition.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{% extends 'layouts/base.njk' %}
{% set pageType = 'Definition' %}
{% set titleWithPath = title + ' « Definitions « ' %}
{% set description = 'The definition of ' + title + ' in Self-Defined, a modern dictionary about us.'%}

{% block content %}
<div class="wide-content">
{% include 'components/sub-page-header.njk' %}
<main>
<article class="definition">
<header class="definition__header">
{% definitionFlag flag %}
<h1 class="main-headline" >{{ title }}</h1>
</header>
{% include 'components/definition-content.njk' %}
{% renderDefinitionContentNextEntries title, slug, collections.definedWords %}
</article>
</main>
{% endblock %}
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
{% extends 'layouts/base.njk' %}
{% set pageType = 'Page' %}
{% set titleWithPath = title + ' « Documentation « ' %}

{% block content %}
<div class="small-left-grid">
<div id="title">
<a href="/">Self-Defined</a>
<p>A modern dictionary about us.<br>We define our words, but they don't define us.</p>
</div>
<div class="article-content">
{% include 'components/sub-page-header.njk' %}
<main class="page">
{%- if parent -%}
<div>
Expand All @@ -16,4 +14,4 @@
<h1 class="title__thicc" >{{ title }}</h1>
{{ content | safe }}
</main>
{% endblock %}
{% endblock %}
34 changes: 23 additions & 11 deletions 11ty/_includes/layouts/index.njk
Original file line number Diff line number Diff line change
@@ -1,19 +1,31 @@
{% extends 'layouts/base.njk' %}
{% set titleWithPath = 'Home « ' %}

{% block content %}
<main>
{{ content | safe }}
{% include 'components/table-of-content.njk' %}
<section>
<h2>Words</h2>
{% include 'components/defintions-list.njk' %}
</section>

</main>
<footer class="site-footer">
<nav aria-label="">
<ul class="navigation-list">
<li><a href="/documentation/">Documentation</a></li>
</ul>
</nav>
</footer>

{% endblock %}


{% block pageScript%}
<script>
// don't use es6+ here because it will not be transpiled
window.addEventListener('DOMContentLoaded', function() {
if (location.hash) {
var allLinks = Array.from(document.querySelectorAll('.toc__list-item > a'));

for (var i = 0; i < allLinks.length; i++) {
var link = allLinks[i]

if (link.href.includes(location.hash.replace('#', ''))) {
window.location = link.href
}
}
}
})
</script>
{% endblock %}
4 changes: 2 additions & 2 deletions 11ty/definitions/ableism.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ a system that places value on people’s bodies and minds based on societally co

— Talia "TL" Lewis

#### Impact
## Impact

To paraphrase Lewis, ableism "leads to people and society determining who is valuable and worthy based on a person’s appearance and/or their ability to [...] produce, excel, and 'behave.'" You do not have to be disabled to experience ableism, and Disabled people can also reinforce ableism internally (manifesting as harm to themselves) and externally (harm to other disabled people).

#### Further reading
## Further reading

- [Longmore Lecture: Context, Clarity & Grounding](https://www.talilalewis.com/blog/longmore-lecture-context-clarity-grounding)
- [Ableism 2020: An Updated Definition](https://www.talilalewis.com/blog/ableism-2020-an-updated-definition)
21 changes: 11 additions & 10 deletions 11ty/definitions/barbaric.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,30 +7,31 @@ flag:
defined: true
speech: adjective
reading:
- text: "is the word barbarian a slur?"
- text: 'is the word barbarian a slur?'
href: https://seetobehumanityearth.wordpress.com/2015/07/16/is-the-term-barbarian-a-slur/
- text: "Barbarian wiki"
- text: 'Barbarian wiki'
href: https://en.wikipedia.org/wiki/Barbarian
alt_words:
- cruel
- vicious
- obscene
- feral
---

something which is obscenely cruel; primitive; unsophisticated

#### Issues
## Issues

Barbarian originates from the Greek word *bárbaros* meaning "babbler", to denote the "unintelligible sounds" (_"bar bar bar"_) made by foreign speakers.
Similar words exist in many other languages, for the identical purpose labeling a "strange"/"foreign" person/culture.
Barbarian originates from the Greek word _bárbaros_ meaning "babbler", to denote the "unintelligible sounds" (_"bar bar bar"_) made by foreign speakers.
Similar words exist in many other languages, for the identical purpose labeling a "strange"/"foreign" person/culture.

In modern day usage, you can notice this rhetoric being employed almost always for the purpose of demonizing "foreign" (more often than not from the global south) cultures - cultures that need to be civilized;
cultures that need to be colonized to rescue them from themselves. A perfect lingual weapon for warmongers and racists alike. Equally repulsive sibling of "savage".
cultures that need to be colonized to rescue them from themselves. A perfect lingual weapon for warmongers and racists alike. Equally repulsive sibling of "savage".

#### Impact
## Impact

When you use words, that are in vogue primarily inside circles of bigots, with racist etymologies, it's a wilful act of violence, ignorance and an indication to the vilified and minoritised communities that their history of wounds and abuses are inconsequential to our words.
When you use words, that are in vogue primarily inside circles of bigots, with racist etymologies, it's a wilful act of violence, ignorance and an indication to the vilified and minoritised communities that their history of wounds and abuses are inconsequential to our words.

#### Usage Tip
## Usage Tip

Avoid words that have obscene etymologies. There is almost always a better alternative: an inclusive and a less hurtful one.
Avoid words that have obscene etymologies. There is almost always a better alternative: an inclusive and a less hurtful one.
6 changes: 3 additions & 3 deletions 11ty/definitions/biromantic.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ reading:

of, relating to, or characterised by being romantically attracted to more than one gender.

#### Note
## Note

Biromantic does not imply any particular kind of sexual attraction, or sexual attraction at all. A biromantic person may be asexual, homosexual, heterosexual, [bisexual](#bisexual), [pansexual](#pan-sexual), etc.
Biromantic does not imply any particular kind of sexual attraction, or sexual attraction at all. A biromantic person may be asexual, homosexual, heterosexual, [bisexual](/definitions/bisexual), [pansexual](/definitions/pan-sexual), etc.

Biromantic does not preclude romantic attraction to [non-binary](#non-binary) or [transgender](#transgender) people.
Biromantic does not preclude romantic attraction to [non-binary](/definitions/non-binary) or [transgender](/definitions/transgender) people.
6 changes: 3 additions & 3 deletions 11ty/definitions/bisexual.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ defined: true

of, relating to, or characterised by being sexually attracted to more than one gender.

#### Note
## Note

Bisexuality does not preclude attraction to [non-binary](#non-binary) or [transgender](#transgender) people.
Bisexuality does not preclude attraction to [non-binary](/definitions/non-binary) or [transgender](/definitions/transgender) people.

#### Further Reading
## Further Reading

[Am I Bisexual?](http://www.bisexualindex.org.uk/index.php/AmIBisexual)
2 changes: 1 addition & 1 deletion 11ty/definitions/cisgender.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ defined: true

of, relating to, or characterised by being a gender that matches the gender they were assigned at birth.

The opposite of [transgender](/#transgender).
The opposite of [transgender](/definitions/transgender).
6 changes: 3 additions & 3 deletions 11ty/definitions/crazy.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,14 @@ alt_words:

mentally deranged; demented; insane.

#### Issues
## Issues

Crazy is very commonly used as an adjective to embody a vast array of ideas, often not specifically. It is used so frequently that it sometimes is a filler. Crazy can also be used in a derogatory manner for someone with mental or psychiatric disabilities.

#### Impact
## Impact

By using ableist language, we are perpetuating violence against people who experience mental or psychological disabilities. Using this language perpetuates those systems and language of harm, regardless of our intent.

#### Usage Tip
## Usage Tip

Be more specific. Typically we can find an alternate definition by simply reflecting on what emotion we're really feeling.
3 changes: 3 additions & 0 deletions 11ty/definitions/definitions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"layout": "layouts/definition.njk"
}
4 changes: 2 additions & 2 deletions 11ty/definitions/english-as-second-language.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ reading:

the teaching of English to people who speak a different language and who live in a country where English is the main language spoken

#### Issues
## Issues

Monolinguist, English-only speakers often refer to people who don't speak English natively as "ESL" or say they are learning a "second language". More often than not, this is not true, as many people are multi-lingual with 3 or more languages

#### Impact
## Impact

It makes false assumptions about English learners, centres English as the "default" or "expected" first language, ignoring that many people learn multiple (>3), non-English languages first.
4 changes: 2 additions & 2 deletions 11ty/definitions/fatphobia.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ reading:

the fear, hatred, and stigmitasation of fat people.

#### Issues
## Issues

Fatphobia is the racialised, classist, and ableist tool of oppression that codifies a “ideal” body type that centres a white, Western aesthetic, demands time and resources that people may not have, and attempts to correlate thinness and heathliness—perpetuating white supremacist violence against people of colour, perpetuates classist oppression of people living with limited resources, and the ableist idea of healthiness as an indicator of human value.

#### Impact
## Impact

A history of being ignored and shamed prevents many fat people from visiting medical professionals even if they have the financial and physical means to do so. Medical professionals hold fatphobic biases and often prescribe weight loss as a default instead of listening to their fat patients' concerns.

Expand Down
2 changes: 1 addition & 1 deletion 11ty/definitions/gaslighting.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ reading:

psychological manipulation tactic used to abuse by instilling doubt in the victim's own thoughts, observations, feelings by denying, misdirecting, and lying to them; originated from the Gaslight play (1933) and film (1944), where a man changes the lights in the house, while denying her observations of the changes.

#### Impact
## Impact

Gaslighting reinforces systems of power, as gaslighting abusers will tend to be in systematically dominant positions where they are intrinsically believed over their victim (e.g., white person over person of colour, man over woman, abled person over disabled person, parent over child, manager over worker, etc). Gaslighting is an abusive and oppressive behaviour and tactic.

Expand Down
Loading