Skip to content

Commit

Permalink
WIP: launch prep (#123)
Browse files Browse the repository at this point in the history
* pare down to pages ready for content and launch

* start adding history

* getting started on get-started

* start the history page (#125)

* start the history page

* build

* Mauves fixes (#126)

* Fix navigation to external links in footer

* Modified wording in the chat

* Added people to collection and about page

* Remove unnecessary script

* Initial files for projects

* Projects get

* Added some modules to the DB

* change description of supported developers

* Added datpy

* Added datpy

* Messed with wording for projects and modules.

* Added playproject

* Fix YAML for history page

* Fix get-started page not loading YAML file

* Added static assets from old site

* Removed duplicate favicons

* Change main branch to release instead of master

* fix netlfixy config cms

* change netlify cms to launch-prep for testing

* update build

* Touched up links

* Point get started to docs website
  • Loading branch information
Joe Hand authored and RangerMauve committed Dec 9, 2019
1 parent abc563e commit 7dfece0
Show file tree
Hide file tree
Showing 98 changed files with 701 additions and 1,637 deletions.
51 changes: 40 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
# Dat Foundation website

This is a shiny new website for the Dat Foundation! It is built on [VuePress](https://vuepress.vuejs.org/), pulls its content from this GitHub repo, is editable with [Netlify CMS](https://www.netlifycms.org/), and is continuously integrated with Netlify.
This is a shiny new website for the Dat Foundation! It is built on [VuePress](https://vuepress.vuejs.org/), pulls its content from this GitHub repo, is editable with [Netlify CMS](https://www.netlifycms.org/), and is continuously integrated with Netlify.

## Development

For local development:

Install dependencies using Yarn.

```bash
```bash
yarn install
```

Run the development server.
## Contributing

```bash
npm run dev
npm run dev
```

**Things to note:**
Expand All @@ -24,9 +24,9 @@ npm run dev

## Build and deploy

To build the site:
To build the site:
```bash
npm run build
npm run build
```

This repo is continuously integrated with Netlify and all commits to master will trigger a deploy.
Expand All @@ -38,7 +38,6 @@ Edit the site content at `/admin` with [Netlify CMS](https://www.netlifycms.org/

Edit the CMS configuration in `.vuepress/public/admin/config.yml`


### Login with Netlify Identity
This ties your contributions to your GitHub account.

Expand All @@ -52,17 +51,47 @@ This is a layer of abstraction on top of standard Git pull requests and merges;
| Approve and publish draft | Merges pull request and deletes branch |


# Content Structure
## Content Structure
We deviated from the default VuePress content model in order to integrate Netlify CMS. **Pages** and **Global** content is stored in `/site/_data` as YML and imported directly into views and components as needed. This separation of data from view component is a solution to Netlify CMS occasionally overwriting template data when updating YML frontmatter via the editorial workflow. Unfortunately it makes it harder to take advantage of some of the default VuePress features, and hope that as Netlify CMS matures we can troubleshoot this.


## Collections
### Collections
Collections consist of objects that can be related to pages and other collection objects sitewide. Currently, the collections are `People`, `Projects`, `Modules`, `Tags`, and `Events`. These collections serve as a version-controlled directory of all people, projects, modules, and events related to the Dat Foundation, including how they're related to one another.

For example, before displaying a `Person` on the About/People page, you'd have to add them as a `Person` in the `People` collection. That `Person` is now represented by a single record in the `People` collection. Different pages can "use" that `Person` object via relation fields, and any changes you make to that object propagate sitewide at build.

## Globals
### Globals
Things that don't change often. This serves as the canonical source of truth for things like the Dat Foundation mission statement, values, etc. Also the site navigation!

## Blog
### Blog
The blog is a little bit different; it follows normal VuePress content structure in that it's just a directory of markdown files.


## Development

For local development:

Install dependencies with `npm` or `Yarn`.

```bash
npm install
```

Run the development server.

```bash
npm run dev
```

**Things to note:**
- If you edit the VuePress config file (`site/config.json`) you'll have to restart the development server for any changes to take effect.


## Build and deploy

To build the site:
```bash
npm run build
```

This repo is continuously integrated with Netlify and all commits to master will trigger a deploy.
9 changes: 6 additions & 3 deletions site/.vuepress/components/Footer.vue
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<div v-for="(footerItem, index) in footerItems"
:key="`footerItem-${index}`"
class="footer__section">

<router-link v-if="footerItem.path"
:to="footerItem.path"
:href="footerItem.path"
Expand All @@ -19,7 +19,10 @@
<ul class="footer__section__items">
<li v-for="secondary in footerItem.secondary"
class="footer__section__items__link">
<router-link :to="secondary.path">
<a v-if="secondary.external" :href="secondary.path">
{{ secondary.label }}
</a>
<router-link :to="secondary.path" v-else>
{{ secondary.label }}
</router-link>
</li>
Expand Down Expand Up @@ -66,7 +69,7 @@ export default {
display: flex;
flex-wrap: wrap;
margin-bottom: $space-large;
@include tablet {
flex-wrap: nowrap;
justify-content: space-between;
Expand Down
13 changes: 6 additions & 7 deletions site/.vuepress/components/Person.vue
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
<template>
<div class="person"
:class="{ 'full-bio': person.active }">
<div class="person full-bio">
<a :href="person.website">
<ImageHelper :image="person.image"
:imageAltText="person.imageAltText" />
</a>
<div class="person__info">
<a :href="person.website" class="person__name"><h3>{{ person.name }}</h3></a>
<div class="person__title">{{ person.title }}</div>
<a :href="person.affiliation.url" class="person__affiliation">{{ person.affiliation.name }} </a>
<div v-if="person.title" class="person__title">{{ person.title }}</div>
<a v-if="person.affiliation" :href="person.affiliation.url" class="person__affiliation">{{ person.affiliation.name }} </a>
<br/><br/>
<div v-html="markdown(person.bio)" class="person__bio"></div>
</div>
Expand Down Expand Up @@ -41,7 +40,7 @@ export default {
<style lang="scss">
@import '../assets/stylesheets/variables.scss';
// Change these!
// Change these!
$person-width: 125px;
$person-stroke: 3px;
Expand Down Expand Up @@ -72,7 +71,7 @@ $person-outline-height: $person-height + ($person-stroke * 2);
figure { margin-right: 0; }
}
figure {
background: $color-green;
clip-path: polygon(49% 0, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
Expand All @@ -81,7 +80,7 @@ $person-outline-height: $person-height + ($person-stroke * 2);
margin-right: $space-medium;
position: relative;
width: $person-outline-width;
img {
clip-path: polygon(49% 0, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
height: $person-height;
Expand Down
12 changes: 6 additions & 6 deletions site/.vuepress/components/Timeline.vue
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<div v-for="item in sortedItems"
class="timeline__item"
:class="{ 'milestone': item.milestone }">
<div v-if="item.milestone"
<div v-if="item.milestone"
class="timeline__item--milestone">
</div>
<div class="timeline__item__description">
Expand All @@ -15,7 +15,7 @@
<div class="timeline__item milestone">
<div class="timeline__item--milestone">
</div>
<p class="timeline__item__description">What's next? <a href="#">Sponsor us</a> or join our <a href="#">community</a> to learn how you can help build the future of the web.</p>
<p class="timeline__item__description">What's next? <a href="https://opencollective.com/dat">Sponsor us</a> or join our <a href="https://docs.datproject.org/docs/intro">community</a> to learn how you can help build the future of the web.</p>
</div>
</div>
</template>
Expand All @@ -37,7 +37,7 @@ export default {
return this.items.sort((a, b) => new Date(b.date) - new Date(a.date))
}
},
methods: { markdown }
methods: { markdown }
}
</script>

Expand All @@ -51,7 +51,7 @@ export default {
margin-bottom: $space-medium;
position: relative;
margin-left: $space-large;
// The green vertical line
&::before {
height: 200%;
Expand All @@ -65,8 +65,8 @@ export default {
}
&:last-of-type {
&::before {
background-color: $color-white;
&::before {
background-color: $color-white;
height: 120%;
}
}
Expand Down
54 changes: 50 additions & 4 deletions site/.vuepress/dist/404.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,58 @@
<meta name="description" content="p2p protocol">
<link rel="icon" href="favicon-32x32.png">
<script src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,200i,300,300i,400,400i,600,600i,700,700i,900,900i&amp;display=swap">

<link rel="preload" href="/assets/css/0.styles.8eb67bfb.css" as="style"><link rel="preload" href="/assets/js/app.96c91db2.js" as="script"><link rel="preload" href="/assets/js/12.a7ddbc8a.js" as="script"><link rel="prefetch" href="/assets/js/10.a71cf302.js"><link rel="prefetch" href="/assets/js/11.fcc9694f.js"><link rel="prefetch" href="/assets/js/13.c0c90c18.js"><link rel="prefetch" href="/assets/js/14.4c56bde8.js"><link rel="prefetch" href="/assets/js/15.ce56e5c8.js"><link rel="prefetch" href="/assets/js/16.5146dad3.js"><link rel="prefetch" href="/assets/js/17.897b2767.js"><link rel="prefetch" href="/assets/js/18.8e3d06f9.js"><link rel="prefetch" href="/assets/js/19.3454215f.js"><link rel="prefetch" href="/assets/js/2.a3999cd8.js"><link rel="prefetch" href="/assets/js/20.8b19e896.js"><link rel="prefetch" href="/assets/js/21.6eae9511.js"><link rel="prefetch" href="/assets/js/22.6402b3fe.js"><link rel="prefetch" href="/assets/js/23.81c822c6.js"><link rel="prefetch" href="/assets/js/24.9bdb537a.js"><link rel="prefetch" href="/assets/js/25.de1f32b7.js"><link rel="prefetch" href="/assets/js/26.1f777d28.js"><link rel="prefetch" href="/assets/js/27.f9852d5b.js"><link rel="prefetch" href="/assets/js/28.9404b3c8.js"><link rel="prefetch" href="/assets/js/29.0ec8dc0c.js"><link rel="prefetch" href="/assets/js/3.c98d36aa.js"><link rel="prefetch" href="/assets/js/30.26b39ae8.js"><link rel="prefetch" href="/assets/js/31.91b8995d.js"><link rel="prefetch" href="/assets/js/32.826a2e06.js"><link rel="prefetch" href="/assets/js/33.d64c4d0c.js"><link rel="prefetch" href="/assets/js/34.5ec205c4.js"><link rel="prefetch" href="/assets/js/35.1cde4208.js"><link rel="prefetch" href="/assets/js/36.3dffe605.js"><link rel="prefetch" href="/assets/js/37.3f7ebc7e.js"><link rel="prefetch" href="/assets/js/38.80ef1185.js"><link rel="prefetch" href="/assets/js/39.c4787fb3.js"><link rel="prefetch" href="/assets/js/4.6cc2fbd6.js"><link rel="prefetch" href="/assets/js/40.60cd96f9.js"><link rel="prefetch" href="/assets/js/41.dbdfd192.js"><link rel="prefetch" href="/assets/js/42.66968d03.js"><link rel="prefetch" href="/assets/js/43.0ef04eff.js"><link rel="prefetch" href="/assets/js/44.949e67df.js"><link rel="prefetch" href="/assets/js/45.0291516b.js"><link rel="prefetch" href="/assets/js/46.ac14ba58.js"><link rel="prefetch" href="/assets/js/5.3c89439e.js"><link rel="prefetch" href="/assets/js/6.4bdba59f.js"><link rel="prefetch" href="/assets/js/7.e6f38046.js"><link rel="prefetch" href="/assets/js/8.ef5cf86b.js"><link rel="prefetch" href="/assets/js/9.b2ffc83f.js">
<link rel="stylesheet" href="/assets/css/0.styles.8eb67bfb.css">
<link rel="preload" href="/assets/css/0.styles.928377cc.css" as="style"><link rel="preload" href="/assets/js/app.bf1064fe.js" as="script"><link rel="preload" href="/assets/js/25.0189664c.js" as="script"><link rel="preload" href="/assets/js/3.71866c16.js" as="script"><link rel="preload" href="/assets/js/14.d978fc16.js" as="script"><link rel="prefetch" href="/assets/js/1.cd86504d.js"><link rel="prefetch" href="/assets/js/10.28c8a9d3.js"><link rel="prefetch" href="/assets/js/11.dcddd9c9.js"><link rel="prefetch" href="/assets/js/12.e2cedc75.js"><link rel="prefetch" href="/assets/js/13.fc230828.js"><link rel="prefetch" href="/assets/js/15.01194a76.js"><link rel="prefetch" href="/assets/js/16.2a358414.js"><link rel="prefetch" href="/assets/js/17.b9c404b1.js"><link rel="prefetch" href="/assets/js/18.a7c08c36.js"><link rel="prefetch" href="/assets/js/19.2b8c2467.js"><link rel="prefetch" href="/assets/js/20.25f86487.js"><link rel="prefetch" href="/assets/js/21.b252c755.js"><link rel="prefetch" href="/assets/js/22.71efc327.js"><link rel="prefetch" href="/assets/js/23.88df5cb3.js"><link rel="prefetch" href="/assets/js/24.6564e818.js"><link rel="prefetch" href="/assets/js/26.cd274d2b.js"><link rel="prefetch" href="/assets/js/27.a0abbcac.js"><link rel="prefetch" href="/assets/js/28.4a7aa7a7.js"><link rel="prefetch" href="/assets/js/29.e16b3ecf.js"><link rel="prefetch" href="/assets/js/30.074c22b5.js"><link rel="prefetch" href="/assets/js/31.69c403e0.js"><link rel="prefetch" href="/assets/js/32.42a3187a.js"><link rel="prefetch" href="/assets/js/33.02b12a65.js"><link rel="prefetch" href="/assets/js/34.122262b1.js"><link rel="prefetch" href="/assets/js/35.373427bf.js"><link rel="prefetch" href="/assets/js/36.f6df4972.js"><link rel="prefetch" href="/assets/js/37.359abdf8.js"><link rel="prefetch" href="/assets/js/38.9fb4af24.js"><link rel="prefetch" href="/assets/js/39.284a0911.js"><link rel="prefetch" href="/assets/js/4.f2b37793.js"><link rel="prefetch" href="/assets/js/40.630dd7ea.js"><link rel="prefetch" href="/assets/js/41.0dcdf6b1.js"><link rel="prefetch" href="/assets/js/42.a4b14e27.js"><link rel="prefetch" href="/assets/js/43.309d31ed.js"><link rel="prefetch" href="/assets/js/44.fa047d8a.js"><link rel="prefetch" href="/assets/js/45.ca80d6a3.js"><link rel="prefetch" href="/assets/js/46.a71faea2.js"><link rel="prefetch" href="/assets/js/47.aaaffe16.js"><link rel="prefetch" href="/assets/js/48.47db47d9.js"><link rel="prefetch" href="/assets/js/49.ca570f96.js"><link rel="prefetch" href="/assets/js/5.72c8864c.js"><link rel="prefetch" href="/assets/js/50.82bebbbc.js"><link rel="prefetch" href="/assets/js/51.c4d9f4e4.js"><link rel="prefetch" href="/assets/js/52.35b195dc.js"><link rel="prefetch" href="/assets/js/53.ba326116.js"><link rel="prefetch" href="/assets/js/54.215e425a.js"><link rel="prefetch" href="/assets/js/55.732e013a.js"><link rel="prefetch" href="/assets/js/56.dfbe9e6f.js"><link rel="prefetch" href="/assets/js/57.467ceab3.js"><link rel="prefetch" href="/assets/js/58.407ea9b5.js"><link rel="prefetch" href="/assets/js/59.c384f0a9.js"><link rel="prefetch" href="/assets/js/6.f53d2c0a.js"><link rel="prefetch" href="/assets/js/60.68898327.js"><link rel="prefetch" href="/assets/js/61.7e0beaec.js"><link rel="prefetch" href="/assets/js/62.7692d0d2.js"><link rel="prefetch" href="/assets/js/63.2b3d650a.js"><link rel="prefetch" href="/assets/js/64.47444d16.js"><link rel="prefetch" href="/assets/js/65.8cfdb428.js"><link rel="prefetch" href="/assets/js/66.a952dd48.js"><link rel="prefetch" href="/assets/js/67.71c7df83.js"><link rel="prefetch" href="/assets/js/7.6b4a4d5c.js"><link rel="prefetch" href="/assets/js/8.8f252397.js"><link rel="prefetch" href="/assets/js/9.04a42d4d.js">
<link rel="stylesheet" href="/assets/css/0.styles.928377cc.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><div class="content"><h1>404</h1> <blockquote>That's a Four-Oh-Four.</blockquote> <a href="/" class="router-link-active">Take me home.</a></div></div><div class="global-ui"></div></div>
<script src="/assets/js/app.96c91db2.js" defer></script><script src="/assets/js/12.a7ddbc8a.js" defer></script>
<div id="app" data-server-rendered="true"><div class="app"><header><a href="/" tabindex="0" class="router-link-active"><div class="logo"></div></a> <div class="nav__mobile__open"><svg width="18" height="14" xmlns="http://www.w3.org/2000/svg"><g fill-rule="evenodd"><path d="M0 0h18v2H0zM0 6h18v2H0zM0 12h18v2H0z"></path></g></svg></div> <!----> <nav role="navigation" aria-label="Main Navigation"><div class="nav__mobile__close"><svg width="16" height="16" xmlns="http://www.w3.org/2000/svg"><g fill-rule="evenodd"><path d="M2.343.929l12.728 12.728-1.414 1.414L.929 2.343z"></path><path d="M13.657.929L.929 13.657l1.414 1.414L15.071 2.343z"></path></g></svg></div> <div class="nav-section has-submenu"><div aria-expanded="false" tabindex="0" class="nav-section__name">
About
</div> <ul class="nav-section__items"><li class="nav-section__items__link"><a href="/about/foundation/">
Foundation
</a></li><li class="nav-section__items__link"><a href="/about/history/">
History
</a></li><li class="nav-section__items__link"><a target="_blank" rel="noopener" href="https://blog.datproject.org" tabindex="0">
Blog
</a></li></ul></div><div class="nav-section has-submenu"><div aria-expanded="false" tabindex="0" class="nav-section__name">
Community
</div> <ul class="nav-section__items"><li class="nav-section__items__link"><a href="/explore/get-started/">
Get Started
</a></li><li class="nav-section__items__link"><a href="/explore/projects/">
Projects
</a></li><li class="nav-section__items__link"><a target="_blank" rel="noopener" href="https://dat.discourse.group/" tabindex="0">
Forum
</a></li></ul></div><div class="nav-section has-submenu"><div aria-expanded="false" tabindex="0" class="nav-section__name">
Learn
</div> <ul class="nav-section__items"><li class="nav-section__items__link"><a target="_blank" rel="noopener" href="https://docs.dat.foundation/" tabindex="0">
Docs
</a></li><li class="nav-section__items__link"><a target="_blank" rel="noopener" href="https://www.datprotocol.com" tabindex="0">
Protocol
</a></li></ul></div></nav></header> <main class="app__main not-found"><h1 class="not-found__header">Uh oh!</h1> <p>There's nothing here! If you think you've reached this page in error, <a>open an issue</a>. Otherwise, head on <a href="/" class="router-link-active">home</a>.</p></main> <footer class="footer"><div class="footer__wrapper"><div class="footer__section"><div class="footer__section__name">
About
</div> <ul class="footer__section__items"><li class="footer__section__items__link"><a href="/about/foundation/">
Foundation
</a></li><li class="footer__section__items__link"><a href="/about/history/">
History
</a></li><li class="footer__section__items__link"><a href="https://blog.datproject.org">
Blog
</a></li></ul></div><div class="footer__section"><div class="footer__section__name">
Community
</div> <ul class="footer__section__items"><li class="footer__section__items__link"><a href="/explore/get-started/">
Get Started
</a></li><li class="footer__section__items__link"><a href="/explore/projects/">
Projects
</a></li><li class="footer__section__items__link"><a href="https://dat.discourse.group/">
Forum
</a></li></ul></div><div class="footer__section"><div class="footer__section__name">
Learn
</div> <ul class="footer__section__items"><li class="footer__section__items__link"><a href="https://docs.dat.foundation/">
Docs
</a></li><li class="footer__section__items__link"><a href="https://www.datprotocol.com">
Protocol
</a></li></ul></div></div> <div class="footer__copyright">
Dat Foundation © 2013 - 2019 • Source on <a href="#">GitHub</a></div></footer></div><div class="global-ui"></div></div>
<script src="/assets/js/app.bf1064fe.js" defer></script><script src="/assets/js/25.0189664c.js" defer></script><script src="/assets/js/3.71866c16.js" defer></script><script src="/assets/js/14.d978fc16.js" defer></script>
</body>
</html>
Loading

0 comments on commit 7dfece0

Please sign in to comment.