├── dist ├── service-worker.js ├── service-worker.js.br ├── .well-known │ └── dat ├── manifest.json.br ├── manifest.json.gz ├── public │ ├── img │ │ ├── ara.png │ │ ├── dd.png │ │ ├── eop.png │ │ ├── cabal.png │ │ ├── datrs.png │ │ ├── geut.png │ │ ├── moore.png │ │ ├── sloan.png │ │ ├── beaker.png │ │ ├── dat-gif.gif │ │ ├── dat-logo.png │ │ ├── datcxx.png │ │ ├── favicon.ico │ │ ├── knight.png │ │ ├── peermaps.png │ │ ├── wireline.png │ │ ├── dat-small.png │ │ ├── Mozilla_Logo.png │ │ ├── dat-data-logo.png │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── hyperdivision.png │ │ ├── inkandswitch.png │ │ ├── codeforscience.png │ │ ├── dat-logo-small.png │ │ ├── open-in-desktop.svg │ │ ├── terminal-icon.svg │ │ ├── link.svg │ │ ├── dat-terminal.svg │ │ ├── dat-hexagon.svg │ │ ├── download.svg │ │ ├── create-new-dat.svg │ │ ├── clipboard.svg │ │ ├── question.svg │ │ ├── dat-data-logo.svg │ │ ├── logo-dat-desktop-dark.svg │ │ ├── datrs.svg │ │ ├── inkandswitch.svg │ │ ├── logo-lockup.svg │ │ ├── logo-lockup.svg.1 │ │ └── bg-landing-page.svg │ ├── dat-paper.pdf │ └── fonts │ │ ├── Source+Sans+Pro_400_normal.ttf │ │ ├── Source+Sans+Pro_700_normal.ttf │ │ ├── Source+Sans+Pro_400_normal.woff │ │ ├── Source+Sans+Pro_700_normal.woff │ │ └── fonts.css ├── about │ ├── index.html.br │ ├── index.html.gz │ ├── index.html.deflate │ └── index.html ├── service-worker.js.gz ├── manifest.json.deflate ├── manifest.json ├── service-worker.js.deflate ├── 43c799f8e059307e │ ├── bundle.js.br │ ├── bundle.js.gz │ ├── bundle.js.map.br │ ├── bundle.js.map.gz │ ├── bundle.js.deflate │ └── bundle.js.map.deflate ├── de0d29aa1ca437ad │ ├── bundle.css.br │ ├── bundle.css.gz │ └── bundle.css.deflate ├── _redirects └── index.html ├── .datignore ├── public ├── img │ ├── ara.png │ ├── dd.png │ ├── eop.png │ ├── cabal.png │ ├── datrs.png │ ├── geut.png │ ├── moore.png │ ├── sloan.png │ ├── beaker.png │ ├── dat-gif.gif │ ├── dat-logo.png │ ├── datcxx.png │ ├── favicon.ico │ ├── knight.png │ ├── peermaps.png │ ├── wireline.png │ ├── dat-small.png │ ├── Mozilla_Logo.png │ ├── dat-data-logo.png │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── hyperdivision.png │ ├── inkandswitch.png │ ├── codeforscience.png │ ├── dat-logo-small.png │ ├── open-in-desktop.svg │ ├── terminal-icon.svg │ ├── link.svg │ ├── dat-terminal.svg │ ├── dat-hexagon.svg │ ├── download.svg │ ├── create-new-dat.svg │ ├── clipboard.svg │ ├── question.svg │ ├── dat-data-logo.svg │ ├── logo-dat-desktop-dark.svg │ ├── datrs.svg │ ├── inkandswitch.svg │ ├── logo-lockup.svg │ ├── logo-lockup.svg.1 │ └── bg-landing-page.svg ├── dat-paper.pdf └── fonts │ ├── Source+Sans+Pro_400_normal.ttf │ ├── Source+Sans+Pro_700_normal.ttf │ ├── Source+Sans+Pro_400_normal.woff │ ├── Source+Sans+Pro_700_normal.woff │ └── fonts.css ├── .gitignore ├── client ├── plugins │ ├── scroll-top.js │ └── analytics.js ├── components │ ├── cta-btn.js │ ├── home-section.js │ └── callout.js ├── elements │ ├── header.js │ ├── footer.js │ ├── home │ │ ├── projects.js │ │ └── sponsors.js │ └── team.js ├── pages │ ├── notfound.js │ ├── about.js │ └── home.js ├── css │ ├── fonts.css │ └── app.css └── team-info.js ├── dat.json ├── index.js ├── README.md ├── package.json └── index.html /dist/service-worker.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /dist/service-worker.js.br: -------------------------------------------------------------------------------- 1 | ; -------------------------------------------------------------------------------- /.datignore: -------------------------------------------------------------------------------- 1 | package-lock.json 2 | .DS_Store 3 | node_modules 4 | npm-debug.log -------------------------------------------------------------------------------- /dist/.well-known/dat: -------------------------------------------------------------------------------- 1 | dat://60c525b5589a5099aa3610a8ee550dcd454c3e118f7ac93b7d41b6b850272330 2 | ttl=3600 3 | -------------------------------------------------------------------------------- /public/img/ara.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/ara.png -------------------------------------------------------------------------------- /public/img/dd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/dd.png -------------------------------------------------------------------------------- /public/img/eop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/eop.png -------------------------------------------------------------------------------- /public/dat-paper.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/dat-paper.pdf -------------------------------------------------------------------------------- /public/img/cabal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/cabal.png -------------------------------------------------------------------------------- /public/img/datrs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/datrs.png -------------------------------------------------------------------------------- /public/img/geut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/geut.png -------------------------------------------------------------------------------- /public/img/moore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/moore.png -------------------------------------------------------------------------------- /public/img/sloan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/sloan.png -------------------------------------------------------------------------------- /dist/manifest.json.br: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/manifest.json.br -------------------------------------------------------------------------------- /dist/manifest.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/manifest.json.gz -------------------------------------------------------------------------------- /dist/public/img/ara.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/ara.png -------------------------------------------------------------------------------- /dist/public/img/dd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/dd.png -------------------------------------------------------------------------------- /dist/public/img/eop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/eop.png -------------------------------------------------------------------------------- /public/img/beaker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/beaker.png -------------------------------------------------------------------------------- /public/img/dat-gif.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/dat-gif.gif -------------------------------------------------------------------------------- /public/img/dat-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/dat-logo.png -------------------------------------------------------------------------------- /public/img/datcxx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/datcxx.png -------------------------------------------------------------------------------- /public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/favicon.ico -------------------------------------------------------------------------------- /public/img/knight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/knight.png -------------------------------------------------------------------------------- /public/img/peermaps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/peermaps.png -------------------------------------------------------------------------------- /public/img/wireline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/wireline.png -------------------------------------------------------------------------------- /dist/about/index.html.br: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/about/index.html.br -------------------------------------------------------------------------------- /dist/about/index.html.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/about/index.html.gz -------------------------------------------------------------------------------- /dist/public/dat-paper.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/dat-paper.pdf -------------------------------------------------------------------------------- /dist/public/img/cabal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/cabal.png -------------------------------------------------------------------------------- /dist/public/img/datrs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/datrs.png -------------------------------------------------------------------------------- /dist/public/img/geut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/geut.png -------------------------------------------------------------------------------- /dist/public/img/moore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/moore.png -------------------------------------------------------------------------------- /dist/public/img/sloan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/sloan.png -------------------------------------------------------------------------------- /dist/service-worker.js.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/service-worker.js.gz -------------------------------------------------------------------------------- /public/img/dat-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/dat-small.png -------------------------------------------------------------------------------- /dist/manifest.json.deflate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/manifest.json.deflate -------------------------------------------------------------------------------- /dist/public/img/beaker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/beaker.png -------------------------------------------------------------------------------- /dist/public/img/dat-gif.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/dat-gif.gif -------------------------------------------------------------------------------- /dist/public/img/dat-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/dat-logo.png -------------------------------------------------------------------------------- /dist/public/img/datcxx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/datcxx.png -------------------------------------------------------------------------------- /dist/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/favicon.ico -------------------------------------------------------------------------------- /dist/public/img/knight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/knight.png -------------------------------------------------------------------------------- /dist/public/img/peermaps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/peermaps.png -------------------------------------------------------------------------------- /dist/public/img/wireline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/wireline.png -------------------------------------------------------------------------------- /public/img/Mozilla_Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/Mozilla_Logo.png -------------------------------------------------------------------------------- /public/img/dat-data-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/dat-data-logo.png -------------------------------------------------------------------------------- /public/img/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/favicon-16x16.png -------------------------------------------------------------------------------- /public/img/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/favicon-32x32.png -------------------------------------------------------------------------------- /public/img/hyperdivision.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/hyperdivision.png -------------------------------------------------------------------------------- /public/img/inkandswitch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/inkandswitch.png -------------------------------------------------------------------------------- /dist/about/index.html.deflate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/about/index.html.deflate -------------------------------------------------------------------------------- /dist/manifest.json: -------------------------------------------------------------------------------- 1 | {"name":"","short_name":"","start_url":"/","display":"minimal-ui","background_color":"#fff","theme_color":"#fff"} -------------------------------------------------------------------------------- /dist/public/img/dat-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/dat-small.png -------------------------------------------------------------------------------- /dist/service-worker.js.deflate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/service-worker.js.deflate -------------------------------------------------------------------------------- /public/img/codeforscience.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/codeforscience.png -------------------------------------------------------------------------------- /public/img/dat-logo-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/img/dat-logo-small.png -------------------------------------------------------------------------------- /dist/public/img/Mozilla_Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/Mozilla_Logo.png -------------------------------------------------------------------------------- /dist/public/img/dat-data-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/dat-data-logo.png -------------------------------------------------------------------------------- /dist/public/img/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/favicon-16x16.png -------------------------------------------------------------------------------- /dist/public/img/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/favicon-32x32.png -------------------------------------------------------------------------------- /dist/public/img/hyperdivision.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/hyperdivision.png -------------------------------------------------------------------------------- /dist/public/img/inkandswitch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/inkandswitch.png -------------------------------------------------------------------------------- /dist/43c799f8e059307e/bundle.js.br: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/43c799f8e059307e/bundle.js.br -------------------------------------------------------------------------------- /dist/43c799f8e059307e/bundle.js.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/43c799f8e059307e/bundle.js.gz -------------------------------------------------------------------------------- /dist/de0d29aa1ca437ad/bundle.css.br: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/de0d29aa1ca437ad/bundle.css.br -------------------------------------------------------------------------------- /dist/de0d29aa1ca437ad/bundle.css.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/de0d29aa1ca437ad/bundle.css.gz -------------------------------------------------------------------------------- /dist/public/img/codeforscience.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/codeforscience.png -------------------------------------------------------------------------------- /dist/public/img/dat-logo-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/img/dat-logo-small.png -------------------------------------------------------------------------------- /dist/43c799f8e059307e/bundle.js.map.br: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/43c799f8e059307e/bundle.js.map.br -------------------------------------------------------------------------------- /dist/43c799f8e059307e/bundle.js.map.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/43c799f8e059307e/bundle.js.map.gz -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | package-lock.json 2 | .DS_Store 3 | node_modules/ 4 | public/index.html 5 | public/bundle.css 6 | public/bundle.js 7 | npm-debug.log 8 | .dat -------------------------------------------------------------------------------- /dist/43c799f8e059307e/bundle.js.deflate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/43c799f8e059307e/bundle.js.deflate -------------------------------------------------------------------------------- /dist/de0d29aa1ca437ad/bundle.css.deflate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/de0d29aa1ca437ad/bundle.css.deflate -------------------------------------------------------------------------------- /dist/43c799f8e059307e/bundle.js.map.deflate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/43c799f8e059307e/bundle.js.map.deflate -------------------------------------------------------------------------------- /public/fonts/Source+Sans+Pro_400_normal.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/fonts/Source+Sans+Pro_400_normal.ttf -------------------------------------------------------------------------------- /public/fonts/Source+Sans+Pro_700_normal.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/fonts/Source+Sans+Pro_700_normal.ttf -------------------------------------------------------------------------------- /public/fonts/Source+Sans+Pro_400_normal.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/fonts/Source+Sans+Pro_400_normal.woff -------------------------------------------------------------------------------- /public/fonts/Source+Sans+Pro_700_normal.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/public/fonts/Source+Sans+Pro_700_normal.woff -------------------------------------------------------------------------------- /dist/public/fonts/Source+Sans+Pro_400_normal.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/fonts/Source+Sans+Pro_400_normal.ttf -------------------------------------------------------------------------------- /dist/public/fonts/Source+Sans+Pro_700_normal.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/fonts/Source+Sans+Pro_700_normal.ttf -------------------------------------------------------------------------------- /dist/public/fonts/Source+Sans+Pro_400_normal.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/fonts/Source+Sans+Pro_400_normal.woff -------------------------------------------------------------------------------- /dist/public/fonts/Source+Sans+Pro_700_normal.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dat-ecosystem-archive/dat.foundation/HEAD/dist/public/fonts/Source+Sans+Pro_700_normal.woff -------------------------------------------------------------------------------- /client/plugins/scroll-top.js: -------------------------------------------------------------------------------- 1 | module.exports = scroll 2 | 3 | function scroll (state, emitter) { 4 | emitter.on(state.events.NAVIGATE, function () { 5 | window.scrollTo(0, 0) 6 | }) 7 | } 8 | -------------------------------------------------------------------------------- /public/img/open-in-desktop.svg: -------------------------------------------------------------------------------- 1 | open-in-desktop -------------------------------------------------------------------------------- /dist/public/img/open-in-desktop.svg: -------------------------------------------------------------------------------- 1 | open-in-desktop -------------------------------------------------------------------------------- /public/img/terminal-icon.svg: -------------------------------------------------------------------------------- 1 | terminal-icon -------------------------------------------------------------------------------- /dist/public/img/terminal-icon.svg: -------------------------------------------------------------------------------- 1 | terminal-icon -------------------------------------------------------------------------------- /public/img/link.svg: -------------------------------------------------------------------------------- 1 | Link 2 | -------------------------------------------------------------------------------- /dist/public/img/link.svg: -------------------------------------------------------------------------------- 1 | Link 2 | -------------------------------------------------------------------------------- /public/img/dat-terminal.svg: -------------------------------------------------------------------------------- 1 | dat-terminal -------------------------------------------------------------------------------- /dist/public/img/dat-terminal.svg: -------------------------------------------------------------------------------- 1 | dat-terminal -------------------------------------------------------------------------------- /public/img/dat-hexagon.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /dist/public/img/dat-hexagon.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /dat.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "dat.foundation", 3 | "description": "Dat Foundation website on Dat about Dat", 4 | "type": ["website"], 5 | "links": { 6 | "license": [{ 7 | "href": "http://creativecommons.org/licenses/by-nc/4.0/", 8 | "title": "CC BY-NC 4.0" 9 | }], 10 | "payment": [{ 11 | "href": "https://opencollective.com/dat" 12 | }] 13 | }, 14 | "fallback_page": "/index.html", 15 | "web_root": "/dist" 16 | } -------------------------------------------------------------------------------- /client/components/cta-btn.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | 3 | module.exports = function (state, emit, props) { 4 | props = Object.assign({ 5 | klass: 'bg-green white b f5 no-underline grow dib v-mid ba ph3 pv2 mb3' 6 | }, props) 7 | var el = html` 8 | { if (state.analytics) emit(state.events.TRACK_CTA, e) }} class="${props.klass}" href="${props.href}">${props.text} 9 | ` 10 | if (state.analytics) emit(state.events.TRACK_CTAEL, el) 11 | 12 | return el 13 | } 14 | -------------------------------------------------------------------------------- /public/img/download.svg: -------------------------------------------------------------------------------- 1 | Download 2 | -------------------------------------------------------------------------------- /dist/public/img/download.svg: -------------------------------------------------------------------------------- 1 | Download 2 | -------------------------------------------------------------------------------- /public/img/create-new-dat.svg: -------------------------------------------------------------------------------- 1 | Create New Dat 2 | -------------------------------------------------------------------------------- /dist/public/img/create-new-dat.svg: -------------------------------------------------------------------------------- 1 | Create New Dat 2 | -------------------------------------------------------------------------------- /dist/_redirects: -------------------------------------------------------------------------------- 1 | /paper https://github.com/datprotocol/whitepaper/blob/master/dat-paper.pdf 2 | /install https://docs.datproject.org/install 301 3 | /explore https://datbase.org 301 4 | /blog https://blog.datproject.org/ 301 5 | /blog/:year-:month-:date-:slug https://blog.datproject.org/:year/:month/:date/:slug 301 6 | /api/* https://datbase.org/api/:splat 301 7 | /dat:/* https://datbase.org/dat:/:splat 301 8 | /* /index.html 200 9 | -------------------------------------------------------------------------------- /public/img/clipboard.svg: -------------------------------------------------------------------------------- 1 | 2 | clipboard 3 | 4 | -------------------------------------------------------------------------------- /dist/public/img/clipboard.svg: -------------------------------------------------------------------------------- 1 | 2 | clipboard 3 | 4 | -------------------------------------------------------------------------------- /public/img/question.svg: -------------------------------------------------------------------------------- 1 | Question 2 | -------------------------------------------------------------------------------- /dist/public/img/question.svg: -------------------------------------------------------------------------------- 1 | Question 2 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const choo = require('choo') 2 | const css = require('sheetify') 3 | 4 | css('tachyons') 5 | css('dat-colors') 6 | css('./client/css/app.css') 7 | css('./client/css/fonts.css') // can't delete without getting bankai error? 8 | 9 | const app = choo({ hash: false }) 10 | app.use(require('./client/plugins/scroll-top')) 11 | if (process.env.ANALYTICS) app.use(require('./client/plugins/analytics')) 12 | 13 | // if (process.env.NODE_ENV !== 'production') { 14 | app.use(require('choo-devtools')()) 15 | // } 16 | 17 | app.route('/', require('./client/pages/home')) 18 | app.route('/about', require('./client/pages/about')) 19 | app.route('/about#*', require('./client/pages/about')) 20 | 21 | // error route 22 | app.route('*', require('./client/pages/notfound')) 23 | 24 | module.exports = app.mount('body') 25 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![deprecated](http://badges.github.io/stability-badges/dist/deprecated.svg)](https://github.com/hypercore-protocol/hypercore-proposals) 2 | 3 | More info on active projects and modules at [dat-ecosystem.org](https://dat-ecosystem.org/) 4 | 5 | --- 6 | 7 | # Dat Project Website 8 | 9 | Code for [datproject.org](https://dat-ecosystem.org/datproject.org/) website. 10 | 11 | #### Built With 12 | 13 | Thanks to these great open source projects we use: 14 | 15 | * [Choo](https://github.com/choojs/choo) 16 | * [Tachyons](http://tachyons.io/) 17 | * [Bankai](https://github.com/choojs/bankai) 18 | * [Fair Analytics](https://github.com/vesparny/fair-analytics) 19 | 20 | ## Development 21 | 22 | * `npm start` - run bankai dev server 23 | * `npm run dev` - run development server with fair-analytics server too 24 | * `npm run build` - bundle assets 25 | 26 | ### Deployment 27 | 28 | Site is deployed via Netlify. 29 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dat.foundation", 3 | "version": "2.0.0", 4 | "description": "Dat Foundation website", 5 | "license": "MIT", 6 | "repository": { 7 | "type": "git", 8 | "url": "https://github.com/datproject/datproject.org.git" 9 | }, 10 | "bugs": { 11 | "url": "https://github.com/datproject/datproject.org/issues" 12 | }, 13 | "main": "index.js", 14 | "scripts": { 15 | "dev": "npm run fa-dev & ANALYTICS=http://localhost:3000 bankai start index.js", 16 | "build": "bankai build index.js", 17 | "start": "bankai start index.js", 18 | "fa-dev": "fair-analytics --memory", 19 | "test": "standard && dependency-check ./package.json" 20 | }, 21 | "devDependencies": { 22 | "bankai": "^9.15.0", 23 | "dependency-check": "^3.3.0", 24 | "fair-analytics": "^1.2.2", 25 | "standard": "^12.0.1" 26 | }, 27 | "dependencies": { 28 | "choo": "^6.13.3", 29 | "choo-devtools": "^2.5.1", 30 | "dat-colors": "^3.5.1", 31 | "dat-icons": "^2.5.2", 32 | "microanalytics": "^1.0.1", 33 | "sheetify": "^7.3.3", 34 | "tachyons": "^4.11.1" 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /client/elements/header.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | const css = require('sheetify') 3 | 4 | const logoCss = css` 5 | :host > img { 6 | transition: transform .5s ease-in-out; 7 | width: inherit; 8 | } 9 | :host:hover > img, :host:focus > img{ 10 | transform: rotate(360deg); 11 | } 12 | ` 13 | 14 | module.exports = function () { 15 | return html` 16 | 30 | ` 31 | } 32 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Dat.Foundation - A Community-Driven Web Protocol 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /client/pages/notfound.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | const datIcons = require('dat-icons') 3 | const header = require('../elements/header') 4 | const footer = require('../elements/footer') 5 | 6 | module.exports = function (state, emit) { 7 | emit(state.events.DOMTITLECHANGE, '404 - Dat Not Found') 8 | 9 | return html` 10 | 11 | ${header()} 12 |
13 |
14 |
15 |

16 | Dat
17 | 404 18 |

19 |

The page you seek does not exist.

20 |
21 |

Are you looking for one of these?

22 | 28 |
29 |
30 | ${footer()} 31 | ${datIcons()} 32 | 33 | ` 34 | } 35 | -------------------------------------------------------------------------------- /client/css/fonts.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Source Sans Pro'; 3 | font-style: normal; 4 | font-weight: 400; 5 | src: url(/public/fonts/Source+Sans+Pro_400_normal.eot); /* {{embedded-opentype-gf-url}} */ 6 | src: local('☺'), 7 | url(/public/fonts/Source+Sans+Pro_400_normal.eot?#iefix) format('embedded-opentype'), /* {{embedded-opentype-gf-url}} */ 8 | url(/public/fonts/Source+Sans+Pro_400_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/ODelI1aHBYDBqgeIAH2zlBM0YzuT7MdOe03otPbuUS0.woff */ 9 | url(/public/fonts/Source+Sans+Pro_400_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/ODelI1aHBYDBqgeIAH2zlEY6Fu39Tt9XkmtSosaMoEA.ttf */ 10 | url(/public/fonts/Source+Sans+Pro_400_normal.svg#Source+Sans+Pro_400_normal) format('svg'); /* http://fonts.gstatic.com/l/font?kit=ODelI1aHBYDBqgeIAH2zlADX0QHsyBtvFGhCuXSMYhM&skey=1e026b1c27170b9b&v=v10#SourceSansPro */ 11 | } 12 | @font-face { 13 | font-family: 'Source Sans Pro'; 14 | font-style: normal; 15 | font-weight: 700; 16 | src: url(/public/fonts/Source+Sans+Pro_700_normal.eot); /* {{embedded-opentype-gf-url}} */ 17 | src: local('☺'), 18 | url(/public/fonts/Source+Sans+Pro_700_normal.eot?#iefix) format('embedded-opentype'), /* {{embedded-opentype-gf-url}} */ 19 | url(/public/fonts/Source+Sans+Pro_700_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/toadOcfmlt9b38dHJxOBGFkQc6VGVFSmCnC_l7QZG60.woff */ 20 | url(/public/fonts/Source+Sans+Pro_700_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/toadOcfmlt9b38dHJxOBGLlcMrNrsnL9dgADnXgYJjs.ttf */ 21 | url(/public/fonts/Source+Sans+Pro_700_normal.svg#Source+Sans+Pro_700_normal) format('svg'); /* {{svg-gf-url}} */ 22 | } 23 | -------------------------------------------------------------------------------- /public/fonts/fonts.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Source Sans Pro'; 3 | font-style: normal; 4 | font-weight: 400; 5 | src: url(/public/fonts/Source+Sans+Pro_400_normal.eot); /* {{embedded-opentype-gf-url}} */ 6 | src: local('☺'), 7 | url(/public/fonts/Source+Sans+Pro_400_normal.eot?#iefix) format('embedded-opentype'), /* {{embedded-opentype-gf-url}} */ 8 | url(/public/fonts/Source+Sans+Pro_400_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/ODelI1aHBYDBqgeIAH2zlBM0YzuT7MdOe03otPbuUS0.woff */ 9 | url(/public/fonts/Source+Sans+Pro_400_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/ODelI1aHBYDBqgeIAH2zlEY6Fu39Tt9XkmtSosaMoEA.ttf */ 10 | url(/public/fonts/Source+Sans+Pro_400_normal.svg#Source+Sans+Pro_400_normal) format('svg'); /* http://fonts.gstatic.com/l/font?kit=ODelI1aHBYDBqgeIAH2zlADX0QHsyBtvFGhCuXSMYhM&skey=1e026b1c27170b9b&v=v10#SourceSansPro */ 11 | } 12 | @font-face { 13 | font-family: 'Source Sans Pro'; 14 | font-style: normal; 15 | font-weight: 700; 16 | src: url(/public/fonts/Source+Sans+Pro_700_normal.eot); /* {{embedded-opentype-gf-url}} */ 17 | src: local('☺'), 18 | url(/public/fonts/Source+Sans+Pro_700_normal.eot?#iefix) format('embedded-opentype'), /* {{embedded-opentype-gf-url}} */ 19 | url(/public/fonts/Source+Sans+Pro_700_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/toadOcfmlt9b38dHJxOBGFkQc6VGVFSmCnC_l7QZG60.woff */ 20 | url(/public/fonts/Source+Sans+Pro_700_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/toadOcfmlt9b38dHJxOBGLlcMrNrsnL9dgADnXgYJjs.ttf */ 21 | url(/public/fonts/Source+Sans+Pro_700_normal.svg#Source+Sans+Pro_700_normal) format('svg'); /* {{svg-gf-url}} */ 22 | } 23 | -------------------------------------------------------------------------------- /dist/public/fonts/fonts.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Source Sans Pro'; 3 | font-style: normal; 4 | font-weight: 400; 5 | src: url(/public/fonts/Source+Sans+Pro_400_normal.eot); /* {{embedded-opentype-gf-url}} */ 6 | src: local('☺'), 7 | url(/public/fonts/Source+Sans+Pro_400_normal.eot?#iefix) format('embedded-opentype'), /* {{embedded-opentype-gf-url}} */ 8 | url(/public/fonts/Source+Sans+Pro_400_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/ODelI1aHBYDBqgeIAH2zlBM0YzuT7MdOe03otPbuUS0.woff */ 9 | url(/public/fonts/Source+Sans+Pro_400_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/ODelI1aHBYDBqgeIAH2zlEY6Fu39Tt9XkmtSosaMoEA.ttf */ 10 | url(/public/fonts/Source+Sans+Pro_400_normal.svg#Source+Sans+Pro_400_normal) format('svg'); /* http://fonts.gstatic.com/l/font?kit=ODelI1aHBYDBqgeIAH2zlADX0QHsyBtvFGhCuXSMYhM&skey=1e026b1c27170b9b&v=v10#SourceSansPro */ 11 | } 12 | @font-face { 13 | font-family: 'Source Sans Pro'; 14 | font-style: normal; 15 | font-weight: 700; 16 | src: url(/public/fonts/Source+Sans+Pro_700_normal.eot); /* {{embedded-opentype-gf-url}} */ 17 | src: local('☺'), 18 | url(/public/fonts/Source+Sans+Pro_700_normal.eot?#iefix) format('embedded-opentype'), /* {{embedded-opentype-gf-url}} */ 19 | url(/public/fonts/Source+Sans+Pro_700_normal.woff) format('woff'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/toadOcfmlt9b38dHJxOBGFkQc6VGVFSmCnC_l7QZG60.woff */ 20 | url(/public/fonts/Source+Sans+Pro_700_normal.ttf) format('truetype'), /* http://fonts.gstatic.com/s/sourcesanspro/v10/toadOcfmlt9b38dHJxOBGLlcMrNrsnL9dgADnXgYJjs.ttf */ 21 | url(/public/fonts/Source+Sans+Pro_700_normal.svg#Source+Sans+Pro_700_normal) format('svg'); /* {{svg-gf-url}} */ 22 | } 23 | -------------------------------------------------------------------------------- /public/img/dat-data-logo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /dist/public/img/dat-data-logo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /client/elements/footer.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | 3 | module.exports = function () { 4 | return html` 5 | 38 | ` 39 | 40 | function liLink (url, text) { 41 | return html` 42 |
  • 43 | ${text} 44 |
  • 45 | ` 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /client/components/home-section.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | 3 | /* 4 | Options: 5 | 6 | { 7 | bgColor: 'bg-white', 8 | color: 'neutral', 9 | title: 'Section', 10 | subtitle: 'Subtitle for this section', 11 | sections: [ 12 | { 13 | title: 'First section', 14 | text: 'lorem bacon some things' 15 | }, 16 | { 17 | title: 'Second section', 18 | text: 'lorem bacon some things' 19 | }, 20 | { 21 | title: 'Third section', 22 | text: 'lorem bacon some things' 23 | } 24 | ], 25 | cta: { 26 | link: '#', 27 | text: 'Learn More' 28 | } 29 | } 30 | */ 31 | 32 | module.exports = function (props) { 33 | props = Object.assign({ 34 | bgColor: 'bg-neutral' 35 | }, props) 36 | 37 | // Allow html 38 | const subtitle = html`

    ` 39 | subtitle.innerHTML = props.subtitle 40 | 41 | return html` 42 |
    43 |
    44 |
    45 |

    ${props.title}

    46 | ${subtitle} 47 |
    48 |
    49 | ${props.sections.map((section) => { 50 | return textSection(section) 51 | })} 52 |
    53 | ${cta()} 54 |
    55 |
    56 | ` 57 | 58 | function cta () { 59 | if (!props.cta) return 60 | return html` 61 |

    62 | ${props.cta} 63 |

    64 | ` 65 | } 66 | 67 | function textSection (item) { 68 | const text = html`

    ` 69 | text.innerHTML = item.text 70 | return html` 71 |
    72 |

    ${item.title}

    73 | ${text} 74 |
    75 | ` 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /public/img/logo-dat-desktop-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | 16 | logo-dat-desktop-dark 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /dist/public/img/logo-dat-desktop-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | 16 | logo-dat-desktop-dark 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /client/elements/home/projects.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | 3 | module.exports = function (props) { 4 | return html` 5 |
    6 |
    7 |
    8 |

    Consortium of Projects

    9 |
    10 | 45 |
    46 |
    47 | ` 48 | } 49 | -------------------------------------------------------------------------------- /client/elements/team.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | const teamInfo = require('../team-info') 3 | 4 | module.exports = function () { 5 | const flexClass = 'flex flex-wrap flex-row justify-between items-stretch' 6 | const copyClass = 'f4 lh-copy' 7 | 8 | return html` 9 |
    10 |

    Dat Foundation Governance

    11 |

    The Dat Foundation Governance supports the collaboration, funding, and community management for Dat. This group is involved in financial and legal decisions regarding the Dat Foundation in collaboration with Code for Science and Society. Learn more about Dat Foundation governance.

    12 |
    13 | ${teamInfo.governance.map((person) => { 14 | return personBox(person) 15 | })} 16 |
    17 |

    Dat Protocol Working Group

    18 |

    The Dat Protocol Working Group advances the protocol development and third-party implementations. This group documents all aspects of the Dat Protocol specification and makes decisions regarding protocol changes. Learn more about the Dat Protocol working group.

    19 |
    20 | ${teamInfo.wg.map((person) => { 21 | return personBox(person) 22 | })} 23 |
    24 |

    Key Community Collaborators

    25 |

    Dat Foundation is driven forward by many community members, most contributing as volunteers. These key collaborators contribute maintainance and development to core pieces of the Dat ecosystem.

    26 |
    27 | ${teamInfo.other.map((person) => { 28 | return personBox(person) 29 | })} 30 |
    31 |

    Alumni

    32 |
    33 | ${teamInfo.alumni.map((person) => { 34 | person.description = null 35 | return personBox(person) 36 | })} 37 |
    38 |
    39 | ` 40 | 41 | function personBox (info) { 42 | const description = html`

    ` 43 | description.innerHTML = info.description 44 | return html` 45 |
    46 |
    47 |
    48 | ${info.name} 49 |

    ${info.name}

    50 | ${info.description ? html`
    ` : ''} 51 |
    52 | ${info.description ? description : ''} 53 |
    54 |
    55 | ` 56 | } 57 | 58 | function avatar (username) { 59 | return `https://github.com/${username}.png` 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /client/elements/home/sponsors.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | 3 | module.exports = function (props) { 4 | return html` 5 |
    6 |
    7 |
    8 |

    Sponsors and Supporters

    9 |

    Dat Foundation is supported by donations and grants. Want to learn more? Check our financial information.

    14 |
    15 | 35 |
    36 |
    37 |
    38 |
    39 |
    40 |

    We need your support!

    41 |

    42 | You help make Dat Project a success! 43 | Donations sustain Dat, allowing us to improve core support and feature development. 44 |

    45 |
    46 |
    47 |
    48 | ${props.cta} 49 |
    50 |
    51 |
    52 |
    53 |
    54 |
    55 | ` 56 | } 57 | -------------------------------------------------------------------------------- /client/css/app.css: -------------------------------------------------------------------------------- 1 | /* 2 | Dat color variables 3 | TODO: Import from dat-colors (had bug couldn't figure out) 4 | */ 5 | :root { 6 | --white:#FFFFFF; 7 | --black:#293648; 8 | --neutral:#293648; 9 | --neutral-90:#394B5B; 10 | --neutral-80:#505F6D; 11 | --neutral-70:#65737F; 12 | --neutral-60:#7C8792; 13 | --neutral-50:#919BA4; 14 | --neutral-40:#A7AFB6; 15 | --neutral-30:#C3C9CD; 16 | --neutral-20:#D3D7DB; 17 | --neutral-14:#E0E3E5; 18 | --neutral-10:#E9EBEC; 19 | --neutral-04:#F6F7F8; 20 | --green:#2ACA4B; 21 | --green-hover:#199E33; 22 | --green-darker:#006607; 23 | --green-disabled:#94E4A5; 24 | --blue:#007FFF; 25 | --blue-hover:#0066CC; 26 | --blue-darker:#003E83; 27 | --blue-disabled:#7FBFFF; 28 | --mint:#159F84; 29 | --mint-hover:#0B856D; 30 | --mint-darker:#045943; 31 | --mint-disabled:#8ACFC1; 32 | --yellow:#F2CD02; 33 | --yellow-hover:#C4A500; 34 | --yellow-darker: #9F7D07; 35 | --yellow-disabled: #FBF0B3; 36 | --red: #D8524E; 37 | --red-hover: #B33C38; 38 | --red-darker: #A52724; 39 | --red-disabled: #EBA8A6; 40 | --pink: #F9A5E4; 41 | } 42 | 43 | body { 44 | font-family: 'Source Sans Pro', 'PT Sans', 'Calibri', sans-serif; 45 | font-size: 100%; 46 | background-color: var(--white); 47 | color: var(--neutral); 48 | -webkit-font-smoothing: antialiased; 49 | } 50 | 51 | a { 52 | color: var(--green); 53 | } 54 | 55 | ::selection { 56 | text-shadow: none; 57 | background: var(--green-disabled); 58 | } 59 | 60 | /* 61 | BORDER COLOR 62 | */ 63 | 64 | .b--dat-green { 65 | border-color: var(--green); 66 | } 67 | 68 | .b--dat-neutral { 69 | border-color: var(--neutral); 70 | } 71 | 72 | .b--dat-neutral-80 { 73 | border-color: var(--neutral-80); 74 | } 75 | 76 | .b--dat-neutral-70 { 77 | border-color: var(--neutral-70); 78 | } 79 | 80 | .b--dat-neutral-10 { 81 | border-color: var(--neutral-10); 82 | } 83 | 84 | .b--dat-blue { 85 | border-color: var(--blue); 86 | } 87 | 88 | .dat-shadow { 89 | box-shadow: 0 0 30px rgba(0,0,0,0.15); 90 | } 91 | 92 | .dat-list { 93 | text-indent: -20px; 94 | margin-left: -20px; 95 | } 96 | 97 | .dat-list li:before { 98 | content: ''; 99 | display: inline-block; 100 | position: relative; 101 | top: -0.125rem; 102 | width: .5rem; 103 | height: .5rem; 104 | margin-right: .75rem; 105 | background-image: url(/public/img/dat-hexagon.svg); 106 | background-size: 100%; 107 | background-repeat: no-repeat; 108 | } 109 | 110 | .horizontal-rule:after { 111 | content: ''; 112 | display: block; 113 | width: 4rem; 114 | height: 5px; 115 | margin-top: 1.25rem; 116 | margin-bottom: 1rem; 117 | background-color: var(--pink); 118 | } 119 | 120 | .horizontal-rule-footer:after { 121 | content: ''; 122 | display: block; 123 | width: 2rem; 124 | height: 4px; 125 | background-color: var(--neutral-70); 126 | margin-top: .75rem; 127 | margin-bottom: 1.5rem; 128 | } 129 | 130 | svg { 131 | width: inherit; 132 | height: inherit; 133 | fill: currentColor; 134 | } -------------------------------------------------------------------------------- /client/plugins/analytics.js: -------------------------------------------------------------------------------- 1 | const microanalytics = require('microanalytics') 2 | 3 | module.exports = function (state, emitter) { 4 | const analytics = microanalytics(process.env.ANALYTICS) 5 | state.events.TRACK_CTA = 'trackCta' 6 | state.events.TRACK_CTAEL = 'trackCtaEl' 7 | state.analytics = { 8 | scrollPer: 0, 9 | ctaEls: [], 10 | ctaViews: {} 11 | } 12 | 13 | emitter.once(state.events.DOMCONTENTLOADED, trackInbound) 14 | emitter.once(state.events.DOMCONTENTLOADED, trackScroll) 15 | emitter.on(state.events.NAVIGATE, trackScroll) 16 | emitter.on(state.events.NAVIGATE, trackView) 17 | emitter.on(state.events.TRACK_CTA, trackCta) 18 | emitter.on(state.events.NAVIGATE, trackExit) 19 | 20 | // todo: better way to track viewing + clicking specific els? 21 | emitter.on(state.events.TRACK_CTAEL, function (el) { 22 | state.analytics.ctaEls.push(el) 23 | }) 24 | 25 | emitter.emit('log:info', `Sending analytics to ${process.env.ANALYTICS}`) 26 | 27 | function trackInbound () { 28 | window.onbeforeunload = trackExit 29 | analytics.append(setDefaults('pageView', { 30 | sourceUrl: document.referrer 31 | })) 32 | } 33 | 34 | function trackView (e) { 35 | analytics.append(setDefaults('pageView')) 36 | } 37 | 38 | function trackScroll () { 39 | window.addEventListener('scroll', pageScroll) 40 | 41 | function pageScroll () { 42 | state.analytics.scrollPer = Math.max(getScrollPercent(), state.analytics.scrollPer) 43 | state.analytics.ctaEls.map((el, i) => { 44 | if (isScrolledIntoView(el)) { 45 | state.analytics.ctaViews[el.id] = { text: el.innerHTML, url: el.href } 46 | state.analytics.ctaEls.splice(i, 1) 47 | } 48 | }) 49 | if (state.analytics.scrollPer === 100) { 50 | window.removeEventListener('scroll', pageScroll) 51 | } 52 | } 53 | 54 | function isScrolledIntoView (el) { 55 | var elemTop = el.getBoundingClientRect().top 56 | var elemBottom = el.getBoundingClientRect().bottom 57 | 58 | var isVisible = (elemTop >= 0) && (elemBottom <= window.innerHeight) 59 | return isVisible 60 | } 61 | 62 | function getScrollPercent () { 63 | var h = document.documentElement 64 | var b = document.body 65 | var st = 'scrollTop' 66 | var sh = 'scrollHeight' 67 | return (h[st] || b[st]) / ((h[sh] || b[sh]) - h.clientHeight) * 100 68 | } 69 | } 70 | 71 | function trackCta (e) { 72 | state.analytics.ctaViews[e.target.id].clicked = true 73 | 74 | analytics.append(setDefaults('ctaClick', { 75 | destination: e.target.href, 76 | ctaClick: state.analytics.ctaViews[e.target.id] 77 | })) 78 | } 79 | 80 | function trackExit () { 81 | analytics.append(setDefaults('pageExit', { 82 | scrollPercentage: state.analytics.scrollPer.toFixed(2), 83 | ctaViews: state.analytics.ctaViews 84 | })) 85 | } 86 | 87 | function setDefaults (name, opts) { 88 | return Object.assign({ 89 | event: `${window.location.host}-${name}`, 90 | pathname: window.location.pathname 91 | }, opts) 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /client/pages/about.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | const datIcons = require('dat-icons') 3 | const team = require('../elements/team') 4 | const header = require('../elements/header') 5 | const footer = require('../elements/footer') 6 | 7 | module.exports = function (state, emit) { 8 | const wrapper = 'mw8-ns center-ns pv4 ph3 ph0-l' 9 | const copyClass = 'f4 lh-copy measure' 10 | const headClass = 'f4 measure-narrow' 11 | emit(state.events.DOMTITLECHANGE, 'About Dat Project') 12 | 13 | return html` 14 | 15 | ${header()} 16 |
    17 |
    18 |
    19 |

    About Dat

    20 |
    21 |
    22 |

    23 | Dat is a community-driven project for distributed data syncronization. The Dat Foundation imagines a web of commons created by global communities on open and secure protocols. We set out to improve access to public data and created a new protocol along the way, read more at datprotocol.com. In our work on developing Dat, we found a under-served need. User-driven software has potential to return control of digital information to the people. Today, building peer-to-peer applications presents both technical and ethical challenges but Dat is slowly changing that. 24 |

    25 |

    26 | To encourage people to experiment and innovate with peer-to-peer technology, we aim to make Dat foundational software for peer-to-peer applications – one that is sponsored by a mission-driven nonprofit. To realize this future, we aim to make Dat good at supporting the core needs of peer-to-peer applications. We hope that with our small but critical focus, we can create a strong building block for the Dat ecosystem. 27 |

    28 |

    29 | The first code went into Dat on August 17, 2013. Throughout its history, Dat has had a primary focus on Dat sharing in civic data and research, only recently with a wider focus on more general user-owned applications. Dat has been almost exclusively funded by grants from private foundations, read more on the funding history. 30 |

    31 |

    32 | Supporters 33 |

    34 |

    35 | Dat Foundation is sponsored by Code for Science & Society, a U.S. 501(c)(3) nonprofit. We received initial funding from the Knight Foundation, the Alfred P. Sloan Foundation, the Gordon and Betty Moore Foundation. 36 |

    37 |
    38 |
    39 |
    40 |
    41 | ${team()} 42 |
    43 |
    44 |
    45 | ${footer()} 46 | ${datIcons()} 47 | 48 | ` 49 | } 50 | -------------------------------------------------------------------------------- /client/components/callout.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | const cta = require('./cta-btn') 3 | 4 | module.exports = function (state, emit) { 5 | return html` 6 |
    7 |
    8 |
    9 |
    10 | 11 |
    12 |

    Documentation

    13 |
      14 |
    • 15 | Command Line: sync data to your peer network. 16 |
    • 17 |
    • 18 | APIs: build peer-to-peer applications in Node.js and the browser. 19 |
    • 20 |
    21 |

    22 | ${cta(state, emit, { 23 | href: 'https://docs.datproject.org', 24 | klass: 'bg-green white b f5 no-underline grow dib v-mid ba ph3 pv2', 25 | text: 'Getting Started', 26 | id: 'docs' 27 | })} 28 |

    29 |
    30 |
    31 |
    32 |
    33 |
    34 | 35 |
    36 |

    Why Dat?

    37 |
      38 |
    • 39 | Resilient: Works offline and with limited connectivity over a distributed peer-to-peer network. 40 |
    • 41 |
    • 42 | Neutral: Dat is unopinionated and flexible for creating a variety of applications.
    • 43 |
    44 |

    45 | ${cta(state, emit, { 46 | href: 'https://datprotocol.github.io/how-dat-works/', 47 | klass: 'bg-green white b f5 no-underline grow dib v-mid ba ph3 pv2', 48 | text: 'How Dat Works', 49 | id: 'how-dat-works' 50 | })} 51 |

    52 |
    53 |
    54 |
    55 |
    56 |
    57 |

    Community-Driven

    58 |
      59 |
    • 60 | Protocol Specification: learn about the roadmap and how you can get involved. 61 |
    • 62 |
    • 63 | Working Group: a community-based governance model. 64 |
    • 65 |
    66 |

    67 | ${cta(state, emit, { 68 | href: 'https://datprotocol.com', 69 | klass: 'bg-green white b f5 no-underline grow dib v-mid ba ph3 pv2', 70 | text: 'View the Specs', 71 | id: 'dat-protocol' 72 | })} 73 |

    74 |
    75 |
    76 | 77 |
    78 | ` 79 | } 80 | -------------------------------------------------------------------------------- /client/pages/home.js: -------------------------------------------------------------------------------- 1 | const html = require('choo/html') 2 | const css = require('sheetify') 3 | const datIcons = require('dat-icons') 4 | const homeSection = require('../components/home-section') 5 | const sponsors = require('../elements/home/sponsors') 6 | const projects = require('../elements/home/projects') 7 | const callout = require('../components/callout') 8 | const cta = require('../components/cta-btn') 9 | const header = require('../elements/header') 10 | const footer = require('../elements/footer') 11 | 12 | const splash = css` 13 | :host { 14 | background-repeat: no-repeat; 15 | background-position: center 225px; 16 | background-image: url("/public/img/bg-landing-page.svg"); 17 | } 18 | 19 | :host > svg { 20 | width: inherit; 21 | height: inherit; 22 | } 23 | 24 | @media screen and (min-width: 30em) { 25 | /* ns - not small breakpoint from tachyons */ 26 | background-position: center 175px; 27 | } 28 | ` 29 | 30 | module.exports = function (state, emit) { 31 | emit(state.events.DOMTITLECHANGE, 'dat:// — a peer-to-peer protocol') 32 | 33 | return html` 34 | 35 | ${header()} 36 |
    37 |
    38 |
    39 |

    40 | dat:// — a peer-to-peer protocol 41 |

    42 |

    43 | Community-driven project for distributed data synchronization 44 |

    45 |
    46 | Dat Foundation 47 |
    48 | ${callout(state, emit)} 49 |
    50 |
    51 | ${projects({ 52 | klass: 'bg-white' 53 | })} 54 | ${homeSection({ 55 | 'title': 'Value-Driven Technology', 56 | 'subtitle': ` 57 | Technology built by community, financed responsibly, and given away for free to the public 58 | `, 59 | 'sections': [ 60 | { 61 | 'title': 'Community First', 62 | 'text': `The Dat Foundation is a small non-profit group that provides social and technical infrastructure for the consortium of projects and working groups that help build the Dat Protocol.` 63 | }, 64 | { 65 | 'title': 'Transparent Funding', 66 | 'text': `We believe information and communication technology should be transparently funded and operated. Development of the core protocol is driven entirely by contributors from the consortium and grants from external organizations, keeping it neutral and flexible.` 67 | }, 68 | { 69 | 'title': 'Open Governance', 70 | 'text': ` 71 | At the scale of the web, every decision can have a massive impact on our political systems and social well-being. Dat Protocol is governed openly through a series of working groups. 76 | ` 77 | } 78 | ], 79 | cta: cta(state, emit, { 80 | id: 'blog-cta', 81 | href: 'https://blog.datproject.org', 82 | text: 'Learn More on Dat Blog', 83 | klass: 'f5 white bg-animate bg-green hover-bg-dark-green pa3 link' 84 | }) 85 | })} 86 | ${sponsors({ 87 | klass: 'bg-neutral-04', 88 | cta: cta(state, emit, { 89 | id: 'donate-cta', 90 | href: 'https://opencollective.com/dat', 91 | text: 'Donate Today', 92 | klass: 'no-underline f4 tc db w-100 pv3 bg-animate bg-green hover-bg-dark-green white' 93 | }) 94 | })} 95 |
    96 | ${footer()} 97 | ${datIcons()} 98 | 99 | ` 100 | } 101 | -------------------------------------------------------------------------------- /client/team-info.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | 'governance': [ 3 | { name: 'Mathias Buus', github: 'mafintosh', description: 'Mathias is a self taught JavaScript hacker from Copenhagen that has been working with Node.js since the 0.2 days. Mathias likes to work with P2P and distributed systems and is the author of more than 650 modules on npm. He is a partner at Hyperdivision, leading the technical work on the Dat Protocol.' }, 4 | { name: 'Karissa McKelvey', github: 'okdistribute', description: 'Karissa co-founded & is a board member at Code for Science & Society and worked on Dat since 2014. She is currently an open source developer at Digital Democracy. Former academic experienced in building interactive data visualization and collaboration tools.' }, 5 | { name: 'Danielle Robinson, PhD', github: 'daniellecrobinson', description: 'Danielle Robinson is Co-Executive Director of Code for Science & Society where she works support and advise people who create open source technology in the public interest. In 2016, she completed a PhD in neuroscience at Oregon Health & Science University. Then as a Mozilla Fellow for Science she ran Working Open Workshops, explored decentralized approaches to data preservation, and advocated for open access to research.' }, 6 | { name: 'Joe Hand', github: 'joehand', description: 'Joe Hand is Co-Executive Director at Code for Science & Society and a core developer on Dat with a focus on developing and managing data-focused programs for researchers and community-driven organizations. Previously, Joe managed a global project at the Santa Fe Institute to transform data collection practices of an international NGO, operating in slums across 30 countries in the Global South' } 7 | ], 8 | 'other': [ 9 | {name: 'Georgiy Shibaev', github: 'RangerMauve', description: 'Based in Ottowa, Canada. Open source software developer focused on developer experience, the command line tool, and documentation.'}, 10 | {name: 'Andrew Osheroff', github: 'andrewosh', description: 'Based in Copenhagen, improving performance and APIs in Hyperdrive.'}, 11 | {name: 'David Clements', github: 'davidmarkclements', description: 'Working on improving peer discovery, networking, and connections in Hyperswarm'} 12 | ], 13 | 'wg': [ 14 | { name: 'Mathias Buus', github: 'mafintosh', description: 'Hyperdivision' }, 15 | { name: 'Paul Frazee', github: 'pfrazee', description: 'Beaker Browser' }, 16 | { name: 'Karissa McKelvey', github: 'okdistribute', description: 'Digital Democracy' }, 17 | { name: 'Joe Hand', github: 'joehand', description: 'Code for Science & Society' }, 18 | { name: 'Brian Newbold', github: 'bnewbold', description: 'Internet Archive' } 19 | ], 20 | 'alumni': [ 21 | { name: 'Tara Vancil', github: 'taravancil', description: 'Beaker Browser' }, 22 | { name: 'Max Ogden', github: 'maxogden', description: 'Started the Dat Project in 2013.' }, 23 | { name: 'Yoshua Wuyts', github: 'yoshuawuyts', description: 'Building datrs, a Rust implementation of Dat. Funded by the Prototype Fund. ✨ 🚂 ✌' }, 24 | { name: 'Jim Pick', github: 'jimpick', description: 'Consultant for Dat Project software and builder of cool Dat demos. Co-host of @dat_cast podcast.' }, 25 | { name: 'Kristina Schneider', github: 'kriesse', description: 'Designer based in Berlin, Germany. Kriesse organizes community events like CSSconf EU, CSSclasses and upfront.ug.' }, 26 | { name: 'Julian Gruber', github: 'juliangruber', description: 'Programmer traveling the world. Contributor to projects like Node.js and LevelDB. Has a strong drive to rid humanity of redundant work and empower everyone to think big.' }, 27 | { name: 'Chia-liang Kao', github: 'clkao', description: 'Developer and civic hacker based in Taipei, Taiwan. Co-founder of g0v.tw.' }, 28 | { name: 'Melanie Cebula', github: 'melaniecebula', description: 'Computer Science major at UC Berkeley, software engineer, Hackers@Berkeley officer, open source contributor, makeup artist, swing dancer, huge foodie, feminist, and classically trained musician!' }, 29 | { name: 'Portia Burton', github: 'pkafei', description: "Programmer based in Portland, OR. Founder of PLB Analytics, and author of O'Reilly's upcoming 'Data Science in Python' video. Worked on Dat CLI tools." }, 30 | { name: 'Bruno Vieira', github: 'bmpvieira', description: 'Bioinformatics PhD student at Queen Mary University of London and Node.JS Web Developer. Working on bionode.io and yeban/afra.' }, 31 | { name: 'Yuhong Wang', github: 'ywyw', description: 'Programmer in the bay area. Worked on Dat special use cases!' }, 32 | { name: 'Juan Batiz-Benet', github: 'jbenet', description: 'Juan is a computer scientist, engineer, and entrepreneur. He is obsessed with knowledge and studied Computer Science at Stanford University' }, 33 | { name: 'Finn Pauls', github: 'finnp', description: 'Computer Science student at Free University Berlin, Open Source developer, Organizer of NodeSchool Berlin, Contributor to the NDJSON spec.' } 34 | ] 35 | } 36 | -------------------------------------------------------------------------------- /public/img/datrs.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /dist/public/img/datrs.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /public/img/inkandswitch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 12 | 13 | 15 | 16 | 17 | 19 | 22 | 25 | 29 | 33 | 37 | 39 | 40 | 42 | 43 | 46 | 49 | 52 | 53 | 74 | 75 | -------------------------------------------------------------------------------- /public/img/logo-lockup.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 12 | 13 | 15 | 16 | 17 | 19 | 22 | 25 | 29 | 33 | 37 | 39 | 40 | 42 | 43 | 46 | 49 | 52 | 53 | 74 | 75 | -------------------------------------------------------------------------------- /public/img/logo-lockup.svg.1: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 12 | 13 | 15 | 16 | 17 | 19 | 22 | 25 | 29 | 33 | 37 | 39 | 40 | 42 | 43 | 46 | 49 | 52 | 53 | 74 | 75 | -------------------------------------------------------------------------------- /dist/public/img/inkandswitch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 12 | 13 | 15 | 16 | 17 | 19 | 22 | 25 | 29 | 33 | 37 | 39 | 40 | 42 | 43 | 46 | 49 | 52 | 53 | 74 | 75 | -------------------------------------------------------------------------------- /dist/public/img/logo-lockup.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 12 | 13 | 15 | 16 | 17 | 19 | 22 | 25 | 29 | 33 | 37 | 39 | 40 | 42 | 43 | 46 | 49 | 52 | 53 | 74 | 75 | -------------------------------------------------------------------------------- /dist/public/img/logo-lockup.svg.1: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 12 | 13 | 15 | 16 | 17 | 19 | 22 | 25 | 29 | 33 | 37 | 39 | 40 | 42 | 43 | 46 | 49 | 52 | 53 | 74 | 75 | -------------------------------------------------------------------------------- /public/img/bg-landing-page.svg: -------------------------------------------------------------------------------- 1 | bg-landing-page -------------------------------------------------------------------------------- /dist/public/img/bg-landing-page.svg: -------------------------------------------------------------------------------- 1 | bg-landing-page -------------------------------------------------------------------------------- /dist/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | dat:// — a peer-to-peer protocol 15 | 87 | 88 | 89 | 90 | 91 | 92 | 106 | 107 |
    108 |
    109 |
    110 |

    111 | dat:// — a peer-to-peer protocol 112 |

    113 |

    114 | Community-driven project for distributed data synchronization 115 |

    116 |
    117 | Dat Foundation 118 |
    119 | 120 |
    121 |
    122 |
    123 |
    124 | 125 |
    126 |

    Documentation

    127 |
      128 |
    • 129 | Command Line: sync data to your peer network. 130 |
    • 131 |
    • 132 | APIs: build peer-to-peer applications in Node.js and the browser. 133 |
    • 134 |
    135 |

    136 | 137 | Getting Started 138 | 139 |

    140 |
    141 |
    142 |
    143 |
    144 |
    145 | 146 |
    147 |

    Why Dat?

    148 |
      149 |
    • 150 | Resilient: Works offline and with limited connectivity over a distributed peer-to-peer network. 151 |
    • 152 |
    • 153 | Neutral: Dat is unopinionated and flexible for creating a variety of applications.
    • 154 |
    155 |

    156 | 157 | How Dat Works 158 | 159 |

    160 |
    161 |
    162 |
    163 |
    164 |
    165 |

    Community-Driven

    166 |
      167 |
    • 168 | Protocol Specification: learn about the roadmap and how you can get involved. 169 |
    • 170 |
    • 171 | Working Group: a community-based governance model. 172 |
    • 173 |
    174 |

    175 | 176 | View the Specs 177 | 178 |

    179 |
    180 |
    181 | 182 |
    183 | 184 |
    185 |
    186 | 187 |
    188 |
    189 |
    190 |

    Consortium of Projects

    191 |
    192 | 227 |
    228 |
    229 | 230 | 231 |
    232 |
    233 |
    234 |

    Value-Driven Technology

    235 |

    236 |
    237 |
    238 | 239 |
    240 |

    Community First

    241 |

    242 |
    243 | 244 |
    245 |

    Transparent Funding

    246 |

    247 |
    248 | 249 |
    250 |

    Open Governance

    251 |

    252 |
    253 | 254 |
    255 | 256 |

    257 | 258 | Learn More on Dat Blog 259 | 260 |

    261 | 262 |
    263 |
    264 | 265 | 266 |
    267 |
    268 |
    269 |

    Sponsors and Supporters

    270 |

    Dat Foundation is supported by donations and grants. Want to learn more? Check our financial information.

    275 |
    276 | 296 |
    297 |
    298 |
    299 |
    300 |
    301 |

    We need your support!

    302 |

    303 | You help make Dat Project a success! 304 | Donations sustain Dat, allowing us to improve core support and feature development. 305 |

    306 |
    307 |
    308 |
    309 | 310 | 311 | 312 |
    313 |
    314 |
    315 |
    316 |
    317 |
    318 | 319 |
    320 | 321 | 390 | 391 | 392 | 393 | 394 | -------------------------------------------------------------------------------- /dist/about/index.html: -------------------------------------------------------------------------------- 1 | About Dat Project 2 | 3 | 4 | 18 | 19 |
    20 |
    21 |
    22 |

    About Dat

    23 |
    24 |
    25 |

    26 | Dat is a community-driven project for distributed data syncronization. The Dat Foundation imagines a web of commons created by global communities on open and secure protocols. We set out to improve access to public data and created a new protocol along the way, read more at datprotocol.com. In our work on developing Dat, we found a under-served need. User-driven software has potential to return control of digital information to the people. Today, building peer-to-peer applications presents both technical and ethical challenges but Dat is slowly changing that. 27 |

    28 |

    29 | To encourage people to experiment and innovate with peer-to-peer technology, we aim to make Dat foundational software for peer-to-peer applications – one that is sponsored by a mission-driven nonprofit. To realize this future, we aim to make Dat good at supporting the core needs of peer-to-peer applications. We hope that with our small but critical focus, we can create a strong building block for the Dat ecosystem. 30 |

    31 |

    32 | The first code went into Dat on August 17, 2013. Throughout its history, Dat has had a primary focus on Dat sharing in civic data and research, only recently with a wider focus on more general user-owned applications. Dat has been almost exclusively funded by grants from private foundations, read more on the funding history. 33 |

    34 |

    35 | Supporters 36 |

    37 |

    38 | Dat Foundation is sponsored by Code for Science & Society, a U.S. 501(c)(3) nonprofit. We received initial funding from the Knight Foundation, the Alfred P. Sloan Foundation, the Gordon and Betty Moore Foundation. 39 |

    40 |
    41 |
    42 |
    43 |
    44 | 45 |
    46 |

    Dat Foundation Governance

    47 |

    The Dat Foundation Governance supports the collaboration, funding, and community management for Dat. This group is involved in financial and legal decisions regarding the Dat Foundation in collaboration with Code for Science and Society. Learn more about Dat Foundation governance.

    48 |
    49 | 50 |
    51 |
    52 |
    53 | Mathias Buus 54 |

    Mathias Buus

    55 |
    56 |
    57 |

    58 |
    59 |
    60 | 61 |
    62 |
    63 |
    64 | Karissa McKelvey 65 |

    Karissa McKelvey

    66 |
    67 |
    68 |

    69 |
    70 |
    71 | 72 |
    73 |
    74 |
    75 | Danielle Robinson, PhD 76 |

    Danielle Robinson, PhD

    77 |
    78 |
    79 |

    80 |
    81 |
    82 | 83 |
    84 |
    85 |
    86 | Joe Hand 87 |

    Joe Hand

    88 |
    89 |
    90 |

    91 |
    92 |
    93 | 94 |
    95 |

    Dat Protocol Working Group

    96 |

    The Dat Protocol Working Group advances the protocol development and third-party implementations. This group documents all aspects of the Dat Protocol specification and makes decisions regarding protocol changes. Learn more about the Dat Protocol working group.

    97 |
    98 | 99 |
    100 |
    101 |
    102 | Mathias Buus 103 |

    Mathias Buus

    104 |
    105 |
    106 |

    107 |
    108 |
    109 | 110 |
    111 |
    112 |
    113 | Paul Frazee 114 |

    Paul Frazee

    115 |
    116 |
    117 |

    118 |
    119 |
    120 | 121 |
    122 |
    123 |
    124 | Karissa McKelvey 125 |

    Karissa McKelvey

    126 |
    127 |
    128 |

    129 |
    130 |
    131 | 132 |
    133 |
    134 |
    135 | Joe Hand 136 |

    Joe Hand

    137 |
    138 |
    139 |

    140 |
    141 |
    142 | 143 |
    144 |
    145 |
    146 | Brian Newbold 147 |

    Brian Newbold

    148 |
    149 |
    150 |

    151 |
    152 |
    153 | 154 |
    155 |

    Key Community Collaborators

    156 |

    Dat Foundation is driven forward by many community members, most contributing as volunteers. These key collaborators contribute maintainance and development to core pieces of the Dat ecosystem.

    157 |
    158 | 159 |
    160 |
    161 |
    162 | Georgiy Shibaev 163 |

    Georgiy Shibaev

    164 |
    165 |
    166 |

    167 |
    168 |
    169 | 170 |
    171 |
    172 |
    173 | Andrew Osheroff 174 |

    Andrew Osheroff

    175 |
    176 |
    177 |

    178 |
    179 |
    180 | 181 |
    182 |
    183 |
    184 | David Clements 185 |

    David Clements

    186 |
    187 |
    188 |

    189 |
    190 |
    191 | 192 |
    193 |

    Alumni

    194 |
    195 | 196 |
    197 |
    198 |
    199 | Tara Vancil 200 |

    Tara Vancil

    201 | 202 |
    203 | 204 |
    205 |
    206 | 207 |
    208 |
    209 |
    210 | Max Ogden 211 |

    Max Ogden

    212 | 213 |
    214 | 215 |
    216 |
    217 | 218 |
    219 |
    220 |
    221 | Yoshua Wuyts 222 |

    Yoshua Wuyts

    223 | 224 |
    225 | 226 |
    227 |
    228 | 229 |
    230 |
    231 |
    232 | Jim Pick 233 |

    Jim Pick

    234 | 235 |
    236 | 237 |
    238 |
    239 | 240 |
    241 |
    242 |
    243 | Kristina Schneider 244 |

    Kristina Schneider

    245 | 246 |
    247 | 248 |
    249 |
    250 | 251 |
    252 |
    253 |
    254 | Julian Gruber 255 |

    Julian Gruber

    256 | 257 |
    258 | 259 |
    260 |
    261 | 262 |
    263 |
    264 |
    265 | Chia-liang Kao 266 |

    Chia-liang Kao

    267 | 268 |
    269 | 270 |
    271 |
    272 | 273 |
    274 |
    275 |
    276 | Melanie Cebula 277 |

    Melanie Cebula

    278 | 279 |
    280 | 281 |
    282 |
    283 | 284 |
    285 |
    286 |
    287 | Portia Burton 288 |

    Portia Burton

    289 | 290 |
    291 | 292 |
    293 |
    294 | 295 |
    296 |
    297 |
    298 | Bruno Vieira 299 |

    Bruno Vieira

    300 | 301 |
    302 | 303 |
    304 |
    305 | 306 |
    307 |
    308 |
    309 | Yuhong Wang 310 |

    Yuhong Wang

    311 | 312 |
    313 | 314 |
    315 |
    316 | 317 |
    318 |
    319 |
    320 | Juan Batiz-Benet 321 |

    Juan Batiz-Benet

    322 | 323 |
    324 | 325 |
    326 |
    327 | 328 |
    329 |
    330 |
    331 | Finn Pauls 332 |

    Finn Pauls

    333 | 334 |
    335 | 336 |
    337 |
    338 | 339 |
    340 |
    341 | 342 |
    343 |
    344 |
    345 | 346 | 415 | 416 | 417 | 418 | 419 | --------------------------------------------------------------------------------