Compare commits

...

37 Commits

Author SHA1 Message Date
Matthias Kretschmann 0eebe25c90
Merge pull request #55 from danacr/master
Removed the news regarding the shutdown.
2018-10-02 11:23:14 +02:00
Matthias Kretschmann 9fd6bf0a2e
Merge pull request #54 from msutherl/master
Remove Morgan from README
2018-10-02 11:20:43 +02:00
Trent McConaghy c79fe48b4d
Update README.md 2018-10-02 10:28:06 +02:00
Dan Acristinii 168ba6951c
Removed the news regarding the shutdown.
This information is obsolete
2018-10-02 10:26:00 +02:00
Morgan Sutherland f375228d04
Remove Morgan from README
Morgan no longer works on this project
2018-10-01 23:37:54 -07:00
Matthias Kretschmann 6eaf796a0a
Merge pull request #50 from ipdb/feature/revival
Revival
2018-10-01 17:27:03 +02:00
Matthias Kretschmann 545917de99
update privacy policy 2018-10-01 17:22:28 +02:00
Matthias Kretschmann 43bacf0475
change main email 2018-10-01 16:59:31 +02:00
Matthias Kretschmann 8199f4bb33
banner updates 2018-10-01 15:25:04 +02:00
Matthias Kretschmann fbe210fb7e
photos fix 2018-10-01 14:45:12 +02:00
Matthias Kretschmann 2aca73c43e
copy updates 2018-10-01 14:24:10 +02:00
Matthias Kretschmann 85a9e3ad19
rebased against master 2018-10-01 13:42:40 +02:00
Matthias Kretschmann 68603c3314
remove all CTAs 2018-10-01 13:29:39 +02:00
Matthias Kretschmann bd05b0deb5
restore front page 2018-10-01 13:29:05 +02:00
Matthias Kretschmann dd7c23c9bf
reduced front page 2018-10-01 13:28:05 +02:00
Matthias Kretschmann 8dd2379c78
update all build tools 2018-10-01 13:26:44 +02:00
Matthias Kretschmann a1c1949134
reduced front page 2018-09-28 16:04:27 +02:00
Matthias Kretschmann f24bb443ad
fix deployment command 2018-09-28 13:22:26 +02:00
Matthias Kretschmann f390dd3022
Merge pull request #49 from ipdb/fix/dependencies
update all build tools
2018-09-28 13:16:13 +02:00
Matthias Kretschmann afd2d09de2
update TOC 2018-09-28 13:11:16 +02:00
Matthias Kretschmann 0dc0f09742
remove gulp-util, Travis updates 2018-09-28 13:06:58 +02:00
Matthias Kretschmann a6b689ed84
update all build tools 2018-09-28 12:08:19 +02:00
Matthias Kretschmann acee53b170
Merge pull request #48 from ipdb/feature/deadline
Extend deadline
2018-01-31 12:18:22 +01:00
Matthias Kretschmann 979c90b428
extend deadline 2018-01-31 11:49:01 +01:00
Matthias Kretschmann ce16114556
Merge pull request #46 from ipdb/feature/shutdown
Farewell
2018-01-05 12:47:19 -02:00
Matthias Kretschmann ae0df2a7d7
copy update 2018-01-05 12:32:19 -02:00
Matthias Kretschmann 73f2772f26
copy update 2018-01-05 11:56:23 -02:00
Matthias Kretschmann 95d3fce92c
correct date 2018-01-05 11:54:06 -02:00
Matthias Kretschmann 84bf840c78
add shutdown note to readme 2018-01-04 21:38:09 -02:00
Matthias Kretschmann f312397372
package updates 2018-01-04 21:00:05 -02:00
Matthias Kretschmann eb9a239e3f
spacing 2018-01-04 21:00:05 -02:00
Matthias Kretschmann 6cc2dca831
package updates 2018-01-04 21:00:05 -02:00
Matthias Kretschmann 838f6c94db
copy update 2018-01-04 20:59:26 -02:00
Matthias Kretschmann 8bfba45b30
spacing and menu cleanup 2018-01-04 20:59:26 -02:00
Matthias Kretschmann 5c952e69d7
styling 2018-01-04 20:59:26 -02:00
Matthias Kretschmann 626bc8dfc5
put up farewell message 2018-01-04 20:59:26 -02:00
Matthias Kretschmann 170cf22ce8
delete all the things 2018-01-04 20:59:26 -02:00
62 changed files with 329 additions and 617 deletions

View File

@ -1,3 +1,3 @@
{
"presets": ["env"]
"presets": ["@babel/env"]
}

View File

@ -1,6 +1,6 @@
language: ruby
rvm:
- 2.4
- 2.5
cache:
bundler: true
@ -8,7 +8,7 @@ cache:
- $TRAVIS_BUILD_DIR/node_modules
before_install:
- nvm install 9
- nvm install 10
before_script: "_ci/setup.sh"
script: "_ci/build.sh"

View File

@ -3,38 +3,36 @@
> The blockchain database network for the decentralized stack
> https://ipdb.io
[![Build Status](https://travis-ci.org/ipdb/website.svg?branch=master)](https://travis-ci.org/ipdb/website)
[![Build Status](https://travis-ci.com/ipdb/website.svg?branch=master)](https://travis-ci.com/ipdb/website)
[![css bigchaindb](https://img.shields.io/badge/css-bigchaindb-39BA91.svg)](https://github.com/bigchaindb/stylelint-config-bigchaindb)
[![js ascribe](https://img.shields.io/badge/js-ascribe-39BA91.svg)](https://github.com/ascribe/javascript)
[![Greenkeeper badge](https://badges.greenkeeper.io/ipdb/website.svg)](https://greenkeeper.io/)
---
[**Live**](https://ipdb.io) | [**Styleguide**](https://ipdb.io/styleguide/)
[**Live**](https://ipdb.io) | [**Beta**](https://beta.ipdb.io) | [**Styleguide**](https://beta.ipdb.io/styleguide/)
---
# Contents
## Table of Contents
- [Content editing](#content-editing)
- [Pages](#pages)
- [Special pages](#special-pages)
- [Pages](#pages)
- [Special pages](#special-pages)
- [Front page](#front-page)
- [Development](#development)
- [Install dependencies](#install-dependencies)
- [Development build](#development-build)
- [Install dependencies](#install-dependencies)
- [Development build](#development-build)
- [Continuous deployment: always be shipping](#continuous-deployment-always-be-shipping)
- [Manual deployment](#manual-deployment)
- [Prerequisite: authentication](#prerequisite-authentication)
- [Staging build & beta deployment](#staging-build--beta-deployment)
- [Production build & live deployment](#production-build--live-deployment)
- [Coding conventions](#coding-conventions--browser-support)
- [(S)CSS](#scss)
- [js](#js)
- [Authors & Contributors](#authors--contributors)
- [Prerequisite: authentication](#prerequisite-authentication)
- [Staging build & beta deployment](#staging-build-beta-deployment)
- [Production build & live deployment](#production-build-live-deployment)
- [Coding conventions & Browser support](#coding-conventions-browser-support)
- [(S)CSS](#s-css)
- [js](#js)
- [Authors & Contributors](#authors-contributors)
- [License](#license)
# Content editing
---
## Content editing
Most content on the site can be edited on GitHub without messing with HTML markup.
@ -42,7 +40,7 @@ The site's source and structure is in the [`_src/`](_src) folder. Ignore everyth
When viewing a file on GitHub you will see a small pencil icon in the top right. Click that to edit the file.
## Pages
### Pages
All pages are simple Markdown files. Markdown is a way of telling the site how an element should be marked up, like headings & bold text:
@ -55,24 +53,22 @@ I'm a simple paragraph. No fancy symbols needed.
You can make text **bold like so**
```
## Special pages
### Special pages
Some pages like front page source their content dynamically during site build. This is so we have a single source of truth for content used in multiple places on the site.
- [`_src/_data/content-front.yml`](_src/_data/content-front.yml)
- [`_src/_data/content-foundation.yml`](_src/_data/content-foundation.yml)
# Development
## Development
You need to have the following tools installed on your development machine before moving on:
- [node.js](http://nodejs.org/) & [npm](https://npmjs.org/)
- (optional) use [Yarn](https://yarnpkg.com) instead of npm for faster dependency installations
- [Node.js](http://nodejs.org/) & [npm](https://npmjs.org/)
- [Ruby](https://www.ruby-lang.org) (for sanity, install with [rvm](https://rvm.io/))
- [Bundler](http://bundler.io/)
## Install dependencies
### Install dependencies
Run the following command from the repository's root folder to install all dependencies.
@ -80,13 +76,7 @@ Run the following command from the repository's root folder to install all depen
npm i && bundle install
```
or
```bash
yarn && bundle install
```
## Development build
### Development build
Spin up local dev server and livereloading watch task, reachable under [https://localhost:1337](https://localhost:1337):
@ -94,7 +84,7 @@ Spin up local dev server and livereloading watch task, reachable under [https://
gulp
```
# Continuous deployment: always be shipping
## Continuous deployment: always be shipping
The site gets built & deployed automatically via Travis. This is the preferred way of deployment, it makes sure the site is always deployed with fresh dependencies and only after a successful build.
@ -104,15 +94,15 @@ Build & deployment happens under the following conditions on Travis:
- **live deployment**: every push to the master branch initiates a live deployment
- **beta deployment**: every new pull request and every subsequent push to it initiates a beta deployment
# Manual deployment
## Manual deployment
For emergency live deployments or beta deployments, the manual method can be used. The site is hosted in an S3 bucket and gets deployed via a gulp task.
## Prerequisite: authentication
### Prerequisite: authentication
To deploy the site, you must authenticate yourself against the AWS API with your AWS credentials. Get your AWS access key and secret and add them to `~/.aws/credentials`:
```
```bash
[default]
aws_access_key_id = <YOUR_ACCESS_KEY_ID>
aws_secret_access_key = <YOUR_SECRET_ACCESS_KEY>
@ -128,7 +118,7 @@ AWS_PROFILE=ipdb gulp deploy --live
In case that you get authentication errors or need an alternative way to authenticate with AWS, check out the [AWS documentation](http://docs.aws.amazon.com/AWSJavaScriptSDK/guide/node-configuring.html).
## Staging build & beta deployment
### Staging build & beta deployment
The staging build is a full production build but prevents search engine indexing & Google Analytics tracking.
@ -144,7 +134,7 @@ gulp build --staging
gulp deploy --beta
```
## Production build & live deployment
### Production build & live deployment
```bash
# make sure your local npm packages & gems are up to date
@ -157,7 +147,7 @@ gulp build --production
gulp deploy --live
```
# Coding conventions & Browser support
## Coding conventions & Browser support
Lint with ESLint & [stylelint](https://stylelint.io) in your editor or run:
@ -167,11 +157,11 @@ npm test
As a rule of thumb, make your CSS & JavaScript work in the last 2 versions of modern browsers, and ideally in IE 11. Adapt the `browserslist` key values in the [`package.json`](package.json) when a change in visitor statistics allows that.
## (S)CSS
### (S)CSS
Follows [stylelint-config-bigchaindb](https://github.com/bigchaindb/stylelint-config-bigchaindb) which itself extends [stylelint-config-standard](https://github.com/stylelint/stylelint-config-standard).
## js
### js
Follows [ascribe/javascript](https://github.com/ascribe/javascript) which itself extends [airbnb/javascript](https://github.com/airbnb/javascript).
@ -179,21 +169,19 @@ Try to not use any jQuery, always prefer vanilla JavaScript.
At the moment, jQuery is only used for the form submissions for its simple `$.ajax` functionality, and neither `XMLHttpRequest` or `fetch` seem to work with MailChimp.
# Authors & Contributors
## Authors & Contributors
- Greg McMullen ([@gmcmullen](https://github.com/gmcmullen)) - [IPDB Foundation](https://ipdb.io)
- Morgan Sutherland ([@msutherl](https://github.com/msutherl)) - [IPDB Foundation](https://ipdb.io)
- Matthias Kretschmann ([@kremalicious](https://github.com/kremalicious)) - [BigchainDB](https://www.bigchaindb.com)
- Matthias Kretschmann ([@kremalicious](https://github.com/kremalicious)) - [BigchainDB](https://www.bigchaindb.com)/[Ocean Protocol](https://oceanprotocol.com)
- Members of the BigchainDB development team
- Representatives of Caretakers in the IPDB
# License
## License
For all code in this repository the Apache License, Version 2.0 is applied.
```
Copyright Interplanetary Database Foundation 2017. All rights reserved.
```text
Copyright Interplanetary Database Foundation 2018. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

View File

@ -7,7 +7,7 @@ echo " Installing dependencies "
echo "============================================="
echo "$(tput sgr0)" # reset
npm install gulpjs/gulp.git#4.0 -g
npm install gulp@next -g
npm install
# Travis does that automatically after selecting ruby

View File

@ -18,7 +18,7 @@ login:
# Form actions
forms:
contact: '//formspree.io/contact@ipdb.io'
contact: '//formspree.io/contact@ipdb.global'
newsletter: "//foundation.us15.list-manage.com/subscribe/post?u=036bac2d4e3a3ea3de876a8dd&amp;id=8a21e3e9ca"
# Urls

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

0
_src/_assets/img/board/david-holtzman.jpg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

0
_src/_assets/img/board/greg-mcmullen.jpg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 60 KiB

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

0
_src/_assets/img/board/nina-luisa-siedler.jpg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

@ -1,7 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="189" height="85" viewBox="0 0 189 85">
<g fill="#000000" transform="matrix(1 0 0 -1 0 85)">
<path d="M23.2079033 83.5860575C22.9478826 82.8048075 22.5828295 80.4423075 22.4094408 78.4181408L22.0900974 74.6885575 17.0861767 75.0564742C11.0178196 75.5031408 6.31996234 73.0339742 4.02057335 68.1885575 1.99777379 63.9260575 1.98769935 62.1060575 3.96562181 58.2785575 5.61762335 55.0818908 11.9671908 51.3952242 14.8505231 51.9585575 17.1927077 52.4164742 17.9151956 54.9752242 15.7023137 54.9752242 14.7036943 54.9752242 12.5083802 56.3606408 10.8049656 58.0652242 5.11073701 63.7648075 7.50445948 72.0243908 14.8505231 72.0243908 20.2408115 72.0243908 21.5205996 70.2131408 22.3790509 61.3689742 22.9374751 55.6143908 23.5719989 53.3768908 24.6451359 53.3768908 26.9874454 53.3768908 27.585876 81.7868908 25.2840308 83.6985575 24.0063659 84.7593908 23.5911903 84.7368908 23.2079033 83.5860575M86.9262976 75.8981408C80.1127227 72.8314742 76.9080487 63.8098075 80.7055333 58.3852242 83.0730289 55.0027242 87.7780465 52.8443908 92.7819672 52.8443908 98.3179187 52.8443908 99.2849826 54.5577242 94.2723196 55.4860575 90.1201478 56.2548075 84.3710509 60.7223075 84.3710509 63.1802242 84.3710509 65.3648075 89.6946897 66.9848075 95.0174958 66.4210575 101.085894 65.7777242 102.470091 66.3039742 102.470091 69.2539742 102.470091 74.9527242 93.4205707 78.8206408 86.9262976 75.8981408L86.9262976 75.8981408zM94.9900201 72.5573075C96.9732712 70.1598075 95.4433703 67.7623075 91.9302183 67.7623075 87.8846192 67.7623075 84.8651985 70.5473075 86.6161544 72.6639742 88.2559584 74.6464742 93.3152469 74.5818908 94.9900201 72.5573075L94.9900201 72.5573075zM29.4268775 73.0902242C29.7816897 71.3393908 32.0736269 65.8443908 34.493035 60.9423075 38.7009077 52.4181408 38.8303769 51.8648075 37.2079326 49.3277242 36.1668507 47.6998075 34.0139575 46.3877242 31.6718145 45.9543908 27.0938099 45.1068908 26.6555714 43.2539742 31.0330445 43.2539742 36.1136892 43.2539742 39.9393989 47.9423075 46.0748218 61.6885575 49.1662623 68.6148075 51.4001258 74.5410575 51.0479363 74.8827242 49.6266897 76.2639742 47.3607712 74.1556408 46.7167557 70.8523075 45.9482667 66.9098075 42.1266368 60.3031408 40.6146368 60.3031408 40.0272381 60.3031408 38.3291522 63.0735575 36.8264357 66.4835575 32.7409967 75.7539742 28.0350216 79.9556408 29.4268775 73.0902242M59.35228 75.3352242L54.0290575 74.6885575 53.6968504 66.1639742C53.3105245 56.2539742 53.9403857 52.8443908 56.1584297 52.8443908 57.3802689 52.8443908 57.7553549 54.2827242 57.7553549 58.9710575 57.7553549 62.3810575 58.2511676 66.8702242 58.8731192 69.0943908 59.8868086 72.7168908 60.3289187 73.0902242 63.6110245 73.0902242 68.8747161 73.0902242 70.531172 70.1064742 70.531172 60.6227242 70.531172 53.5898075 70.7351588 52.8443908 72.660128 52.8443908 74.6350531 52.8443908 74.7895002 53.5368908 74.7895002 62.3810575 74.7895002 71.4385575 74.6504562 72.0268908 72.0215245 74.0839742 69.0712095 76.3927242 68.5079562 76.4481408 59.35228 75.3352242M121.420463 73.6068908C116.310386 70.8198075 113.741817 63.0231408 116.33578 58.1718908 117.889826 55.2660575 122.911232 52.8443908 127.382705 52.8443908 130.044108 52.8443908 132.17348 53.7810575 134.834883 56.1227242 139.604428 60.3193908 140.271339 62.7539742 138.169859 68.2948075 136.876417 71.7048075 135.587553 73.1768908 133.131802 74.0489742 128.660328 75.6373075 124.88241 75.4943908 121.420463 73.6068908L121.420463 73.6068908zM129.618234 72.0285575C132.965698 70.7639742 135.80278 64.6718908 134.830304 60.8360575 134.073888 57.8523075 130.678965 54.9752242 127.914736 54.9752242 126.922278 54.9752242 124.614729 56.2206408 122.804659 57.7331408 118.333185 61.4693908 118.087569 67.5098075 122.272212 70.8210575 125.494787 73.3706408 125.891936 73.4356408 129.618234 72.0285575L129.618234 72.0285575zM145.481328 74.2623075C145.249033 74.0298075 145.055454 69.0406408 145.055454 63.2868908 145.055454 53.8031408 145.243621 52.7698075 146.918811 53.0573075 148.409163 53.3131408 148.837119 54.6556408 149.057758 59.7702242 149.448663 68.8277242 150.112661 70.8718908 153.040496 72.0335575 154.530848 72.6252242 155.701899 73.5118908 155.701899 74.0489742 155.701899 74.9014742 146.315593 75.0973075 145.481328 74.2623075"/>
<path d="M164.484987,72.9835575 C161.717011,71.1931408 161.035945,70.0743908 161.078408,67.3893908 C161.107132,65.5777242 161.842317,63.0760575 162.675333,61.9548075 C163.547897,60.7802242 164.218972,58.8114742 164.218972,57.4260575 C164.218972,54.8418908 164.431701,54.7543908 171.351848,54.5073075 C176.568914,54.3206408 179.124161,52.5127242 179.124161,49.0081408 C179.124161,45.4677242 175.929894,44.2164742 167.625967,44.5031408 C158.49402,44.8185575 135.899778,41.2539742 116.203813,36.3909325 C87.2460156,29.2410158 86.8580245,29.2149742 63.0785773,32.8417658 C46.3637337,35.3910992 39.9323218,35.9171408 30.0748894,35.5416408 C13.9987326,34.9291825 10.9168253,33.4978492 6.75936653,24.7130158 C2.72484098,16.1882658 -0.19999647,6.64872417 0.58447842,4.5735575 C1.37494802,2.48222833 7.82401102,0.630990833 14.3182841,0.630990833 C20.8322482,0.630990833 37.9532337,3.21922417 49.877302,6.00647417 C54.9873791,7.20114083 60.5041808,7.93584917 62.013683,7.62301583 C72.803335,5.3871825 105.557368,2.43893667 120.568714,2.352345 C138.348452,2.249645 144.391456,3.03772417 157.192668,7.1291825 C175.929894,13.1178075 190.552417,26.3370575 188.312309,35.2621825 C187.736566,37.5554742 183.275917,41.3360575 179.762765,42.5081408 C179.220326,42.6889742 180.02878,44.0531408 181.625705,45.6514742 C183.22263,47.2498075 184.446967,49.0764742 184.446967,49.8606408 C184.446967,52.5173075 181.678991,55.1193908 178.059267,55.8652242 C173.374648,56.8306408 172.926709,59.2906408 176.994789,61.7085575 C179.451372,63.1685575 180.188639,64.4056408 180.188639,67.0698075 C180.188639,68.9877242 180.924657,71.5785575 181.83885,72.8768908 L183.489062,75.2210575 L175.717165,75.2210575 C169.648767,75.2210575 167.186771,74.7306408 164.484987,72.9835575 L164.484987,72.9835575 Z M174.013668,71.2735575 C176.625115,68.9239742 176.462342,64.9356408 173.694366,63.4448075 C169.682071,61.2843908 163.962947,67.0160575 165.665196,71.4914742 C166.471152,73.6102242 171.564994,73.4773075 174.013668,71.2735575 L174.013668,71.2735575 Z M180.082066,38.2351408 C184.494842,34.9472242 184.296683,30.4670992 179.502577,25.1391408 C174.996135,20.1309742 165.821725,13.8722242 161.344423,12.7519325 L158.469875,12.0326825 L160.817388,15.9752242 C163.990007,21.3031825 163.823903,23.3601408 159.960643,26.6034742 C155.652776,30.2195158 151.6563,31.1580158 134.515582,32.5788908 C126.637529,33.2320575 119.974654,33.9389325 119.770251,34.1433492 C119.566265,34.3476408 122.911232,35.2698075 127.16956,36.1830575 C133.938174,37.6347242 139.732232,38.5597242 154.104974,40.4823075 C155.847187,40.7156408 161.823584,40.7885575 167.253379,40.6435575 C175.238005,40.4298075 177.776183,39.9530992 180.082066,38.2351408 L180.082066,38.2351408 Z M55.5194099,31.5933908 C63.3978791,30.4416825 70.0003901,29.2932658 70.2647403,29.0284742 C70.527009,28.7662658 67.922639,27.9698492 64.5160597,27.2703075 C60.3772095,26.4205575 52.7514341,26.1786825 41.7856875,26.5493075 C25.6034159,27.0963075 17.2992388,28.4610575 17.2992388,30.5735575 C17.2992388,34.1436825 34.865748,34.6124325 55.5194099,31.5933908 L55.5194099,31.5933908 Z M121.633608,31.1064325 C121.633608,30.8712242 118.173326,29.8920575 113.914998,28.9220158 C109.677901,27.9568492 94.9109231,23.3907658 81.1772007,18.7989742 C67.4434782,14.2073075 50.3960112,9.13376583 43.3830289,7.55122417 C29.1166095,4.33201583 11.9453767,2.9783075 7.50445948,4.7229325 L4.63003591,5.85234917 L6.56537093,12.5653908 C9.0231619,21.0899742 11.6103804,27.2703075 12.7212341,27.2703075 C13.1858245,27.2703075 16.2345526,26.5575992 19.4285278,25.7022658 C27.3642381,23.5772658 56.6908769,23.5691408 70.9566302,25.6881408 C89.800846,28.4869325 102.921776,30.3878075 106.196388,30.7932658 C110.987163,31.3865158 121.633608,31.6025158 121.633608,31.1064325 L121.633608,31.1064325 Z M141.329157,29.4870992 C150.059375,28.2335158 156.766377,26.3443908 156.766377,25.1391408 C156.766377,21.6578492 123.230533,19.9249325 113.116535,22.8837658 C106.850811,24.7165992 108.964364,25.7258908 127.488861,29.7468908 C131.039897,30.5175575 134.622154,30.4503075 141.329157,29.4870992 L141.329157,29.4870992 Z M112.584088,20.3404742 C124.082282,18.4520992 142.310375,18.2750158 150.698394,19.9701825 C153.998401,20.6371825 157.057787,20.9119325 157.405397,20.5723908 C158.802082,19.2078075 153.253225,12.3495992 148.675179,9.78201583 C140.012817,4.9238075 128.553756,3.52047417 108.645062,4.8801825 C99.0630949,5.53464083 87.0003989,6.52926583 81.7096478,7.10122417 C64.1430553,9.0003075 62.3275729,9.82014083 70.531172,12.1475992 C72.5801985,12.7289742 79.0482447,14.8948075 84.903498,16.9604325 C100.766593,22.5564325 99.8057734,22.4390992 112.584088,20.3404742 L112.584088,20.3404742 Z"/>
<path d="M107.064372,56.5735575 C106.695947,55.6143908 106.921582,54.3560575 107.580168,53.6964742 C109.211646,52.0635575 112.244388,53.5898075 111.81435,55.8277242 C111.343516,58.2785575 107.925696,58.8152242 107.064372,56.5735575"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 9.0 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

@ -1,16 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="137" height="86" viewBox="0 0 137 86">
<g fill="#000000" transform="translate(-.21 .593)">
<path d="M118.198711,84.837436 C117.756081,84.6898927 117.460995,84.1734909 117.460995,83.7308608 L117.460995,72.3700215 C115.838018,72.6651083 112.44452,74.4356287 110.674,74.5094003 C86.1818008,76.0586057 61.8371453,75.5422039 37.2711747,74.1405419 C29.3776045,73.6979118 24.5824451,70.2306427 20.5987742,66.6896019 C20.0823724,66.2469718 19.6397423,65.6567983 20.0823724,65.2141682 C20.5250025,64.6977664 20.9676326,64.9190815 21.4840344,65.2879399 C25.0988469,68.4601223 30.6317231,69.935556 38.0088915,70.3781861 C62.5010904,71.7798481 87.2883761,71.7060764 111.706803,70.156871 C113.846182,70.0093276 115.911789,70.156871 117.829853,69.7142409 C118.198711,69.6404692 118.493798,69.7142409 118.788885,69.935556 C119.083972,70.156871 119.231515,70.5257294 119.231515,70.8945879 L119.305287,81.5177103 C124.69062,74.5094003 129.928409,65.6567983 131.551386,61.8944425 C134.502254,54.9599042 134.79734,45.9597588 134.79734,37.2547002 C134.207167,25.2299158 133.248135,17.9265191 129.854637,13.9428482 C126.387368,9.81163391 119.89546,7.22962498 111.706803,6.49190815 C87.2146044,4.27875764 62.4273187,4.20498596 38.0088915,6.19682141 C31.2956683,6.78699488 25.9841071,8.18865687 22.3692946,11.0657525 C21.8528928,11.5083826 21.7791211,11.3608393 21.336491,10.8444375 C20.9676326,10.3280357 21.6315777,9.51654717 22.1479795,9.14768876 C26.1316504,5.97550636 30.5579515,2.50823724 37.7875764,1.91806377 C62.353547,-0.147543367 87.2883761,-0.811488519 111.780575,1.47543367 C120.559405,2.28692219 127.272629,7.45094003 131.108756,12.0985561 C134.871112,16.6724005 135.977687,24.3446556 136.567861,36.8858418 L136.567861,36.9596134 C136.567861,45.8859871 136.272774,55.1812193 133.174363,62.5583876 C131.256299,66.9846886 125.797195,75.9110623 119.379058,83.7308608 C119.157743,84.0259475 118.346255,84.9112077 118.198711,84.837436"/>
<g transform="translate(85.74 13.279)">
<path d="M0.516401785,0.295086734 L11.9510127,0.295086734 L22.6479068,19.3281811 L23.0167653,19.3281811 C22.5741352,16.4510854 21.9839617,13.5002181 21.9839617,10.5493507 L21.9839617,0.221315051 L33.3448009,0.221315051 L33.3448009,34.6726912 L21.9839617,34.6726912 L11.5083826,16.5986288 L11.1395242,16.5986288 C11.5083826,18.9593227 11.877241,21.1724732 11.877241,23.4593954 L11.877241,34.6726912 L0.516401785,34.6726912 L0.516401785,0.295086734 L0.516401785,0.295086734 Z"/>
<path d="M21.9839617,8.85260202 L33.3448009,8.85260202 L33.3448009,20.508528 L21.9839617,20.508528 L21.9839617,8.85260202 Z M0.516401785,11.9510127 L11.877241,11.9510127 L11.877241,23.6069387 L0.516401785,23.6069387 L0.516401785,11.9510127 Z"/>
</g>
<path d="M46.9352652,28.9184999 L48.1156121,28.9184999 C50.1812193,28.9184999 52.4681415,28.5496415 52.4681415,25.7463175 C52.4681415,23.0905369 50.0336759,22.9429936 48.1156121,22.9429936 L47.0090369,22.9429936 L47.0090369,28.9184999 L46.9352652,28.9184999 Z M35.4268826,13.5739898 L50.476306,13.5739898 C58.1485611,13.5739898 63.755209,17.705204 63.755209,26.1889476 C63.755209,33.1972576 59.5502231,37.5497869 52.9107716,37.5497869 L46.8614935,37.5497869 L46.8614935,47.8778226 L35.4268826,47.8778226 L35.4268826,13.5739898 Z"/>
<polygon points="62.501 13.574 84.559 13.574 84.559 22.943 74.526 22.943 74.526 26.263 83.674 26.263 83.674 35.189 74.526 35.189 74.526 38.509 84.854 38.509 84.854 47.952 62.501 47.952"/>
<path d="M12.5576607,30.9841071 C12.5576607,34.8940063 15.0658979,37.6235586 18.6807104,37.6235586 C22.2955229,37.6235586 24.8037601,34.8940063 24.8037601,30.9841071 C24.8037601,27.3692946 22.4430663,24.2708839 18.6807104,24.2708839 C14.9183545,24.3446556 12.5576607,27.3692946 12.5576607,30.9841071 M36.8285445,30.8365637 C36.8285445,41.9023162 28.7136594,48.4679961 18.7544821,48.4679961 C8.79530482,48.4679961 0.68041963,41.8285445 0.68041963,30.8365637 C0.68041963,20.0658979 8.8690765,12.9838163 18.7544821,12.9838163 C28.6398877,12.9838163 36.8285445,19.9921262 36.8285445,30.8365637"/>
<g transform="translate(45.165 43.525)">
<path d="M2.65578061,9.00014539 L0.516401785,9.00014539 L0.516401785,6.63945152 L5.16401785,6.63945152 L5.16401785,8.33620024 C6.63945152,7.08208162 8.11488519,6.41813647 9.51654717,6.41813647 C10.9182092,6.41813647 12.0247844,7.1558533 12.6149579,8.55751529 C14.45925,7.08208162 15.7871403,6.41813647 17.1888023,6.41813647 C19.3281811,6.41813647 20.5822997,7.74602677 20.5822997,10.1067206 L20.5822997,17.705204 L22.7954502,17.705204 L22.7954502,20.0658979 L18.0740625,20.0658979 L18.0740625,10.7706658 C18.0740625,9.44277549 17.483889,8.77883034 16.5248571,8.77883034 C15.4920535,8.77883034 14.1641632,9.44277549 12.9100446,10.5493507 L12.9100446,17.7789757 L15.1231951,17.7789757 L15.1231951,20.1396696 L10.4018074,20.1396696 L10.4018074,10.8444375 C10.4018074,9.44277549 9.66409054,8.9263737 8.85260202,8.9263737 C7.96734182,8.9263737 6.78699488,9.44277549 5.23778953,10.5493507 L5.23778953,17.7789757 L7.45094003,17.7789757 L7.45094003,20.1396696 L0.368858418,20.1396696 L0.368858418,17.7789757 L2.72955229,17.7789757 L2.72955229,9.00014539 L2.65578061,9.00014539 Z M33.3448009,12.0985561 C32.9021708,9.95917727 31.1316504,8.40997192 29.139815,8.40997192 C27.1479795,8.40997192 25.5987742,9.88540559 25.2299158,12.0985561 L33.3448009,12.0985561 Z M25.1561441,14.0903916 C25.5250025,16.6724005 27.1479795,18.2216058 29.5086734,18.2216058 C31.1316504,18.2216058 32.6808558,17.483889 33.6398877,16.0084553 L35.8530382,17.0412589 C34.4513762,19.2544094 32.164454,20.508528 29.4349017,20.508528 C25.3036874,20.508528 22.2790484,17.5576607 22.2790484,13.4264464 C22.2790484,9.07391707 25.6725459,6.34436478 28.9922716,6.34436478 C32.5333124,6.34436478 35.7792665,9.14768876 35.7792665,14.0903916 L25.1561441,14.0903916 L25.1561441,14.0903916 Z M43.1564349,18.0002908 C45.5171287,18.0002908 47.2138774,16.0084553 47.2138774,13.278903 C47.2138774,10.5493507 45.5171287,8.70505865 43.0826632,8.70505865 C40.795741,8.70505865 39.0989923,10.6968941 39.0989923,13.3526747 C39.0989923,16.1559987 40.795741,18.0002908 43.1564349,18.0002908 L43.1564349,18.0002908 Z M52.1565802,20.1396696 L47.2876491,20.1396696 L47.2876491,18.1478341 C45.9597588,19.6232678 44.5580968,20.3609846 42.7138048,20.3609846 C39.8367091,20.3609846 36.4432117,18.2953775 36.4432117,13.5002181 C36.4432117,9.44277549 39.1727639,6.34436478 42.7875764,6.34436478 C44.4843252,6.34436478 46.0335305,7.08208162 47.2876491,8.4837436 L47.2876491,3.17218239 L44.8531836,3.17218239 L44.8531836,0.811488519 L49.8696581,0.811488519 L49.8696581,17.7789757 L52.2303519,17.7789757 L52.1565802,20.1396696 Z"/>
<path d="M55.9927078,2.13937882 C55.9927078,3.02463902 55.3287626,3.76235586 54.4435024,3.76235586 C53.6320139,3.76235586 52.8942971,3.02463902 52.8942971,2.13937882 C52.8942971,1.25411862 53.5582422,0.516401785 54.4435024,0.516401785 C55.3287626,0.516401785 55.9927078,1.25411862 55.9927078,2.13937882 L55.9927078,2.13937882 Z M53.2631555,9.00014539 L51.1975484,9.00014539 L51.1975484,6.63945152 L55.7713927,6.63945152 L55.7713927,17.705204 L57.8369999,17.705204 L57.8369999,20.0658979 L51.1975484,20.0658979 L51.1975484,17.705204 L53.2631555,17.705204 L53.2631555,9.00014539 L53.2631555,9.00014539 Z M66.2469718,15.1231951 C65.1403965,14.2379349 64.0338213,13.7953048 62.927246,13.7953048 C61.525584,13.7953048 60.4927805,14.7543367 60.4927805,16.082227 C60.4927805,17.4101173 61.4518124,18.2953775 62.7797027,18.2953775 C63.8862779,18.2953775 65.2141682,17.705204 66.2469718,16.6724005 L66.2469718,15.1231951 L66.2469718,15.1231951 Z M70.9683595,20.1396696 L66.5420585,20.1396696 L66.5420585,18.4429209 C64.9190815,19.7708112 63.8125062,20.287213 62.4108442,20.287213 C59.9763787,20.287213 58.0583149,18.4429209 58.0583149,16.0084553 C58.0583149,13.5739898 60.1239221,11.655926 62.705931,11.655926 C63.8125062,11.655926 65.1403965,12.0985561 66.1732001,12.7625012 L66.1732001,11.0657525 C66.1732001,9.14768876 64.8453098,8.4837436 63.2961045,8.4837436 C62.0419858,8.4837436 61.1567256,9.00014539 60.5665522,10.1067206 L58.1320866,9.44277549 C59.2386619,7.37716835 61.0829539,6.34436478 63.6649629,6.34436478 C67.4273187,6.34436478 68.6814373,8.33620024 68.6814373,10.4755791 L68.6814373,17.8527474 L70.8945879,17.8527474 L70.9683595,20.1396696 L70.9683595,20.1396696 Z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 8.2 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 42 KiB

View File

@ -3,7 +3,7 @@
/* eslint-disable spaced-comment */
//=include _dnt.js
//=include _newsletter.js
//=include smooth-scroll/dist/js/smooth-scroll.js
//=include smooth-scroll/dist/smooth-scroll.js
//=include textarea-autogrow/textarea-autogrow.js
//=include cookie-banner/src/cookiebanner.js
/* eslint-enable spaced-comment */

View File

@ -52,6 +52,10 @@
transform: scale(1.2);
}
.logo-caretaker--riddle-and-code {
transform: scale(1.2);
}
//
// The logo fallback
//

View File

@ -1,12 +1,11 @@
$edge-height-sm: $spacer * 2;
$edge-height: $spacer * 4;
$edge-height: $spacer * 3;
.hero {
background: $brand-07;
padding-top: $spacer * 2;
padding-top: $spacer * 3;
padding-bottom: 0;
height: calc(100vh - #{$edge-height-sm});
min-height: 580px;
height: calc(80vh - #{$edge-height-sm});
margin-bottom: $edge-height-sm;
position: relative;
display: flex;
@ -14,8 +13,9 @@ $edge-height: $spacer * 4;
align-items: center;
@media ($screen-sm) {
height: calc(100vh - #{$edge-height});
height: calc(90vh - #{$edge-height});
margin-bottom: $edge-height;
min-height: 500px;
}
&:after {

View File

@ -132,7 +132,6 @@ ol {
.lead {
color: $brand-03;
font-size: $font-size-large;
}

View File

@ -1,8 +1,8 @@
.oceanprotocol {
.banner {
display: block;
box-shadow: none;
height: 100%;
background: #141414;
background: $brand-01;
padding-top: $spacer / 2;
padding-bottom: $spacer / 2;
@ -10,12 +10,12 @@
&:focus {
background: #fff;
.oceanprotocol__title {
.banner__title {
opacity: 1;
color: #141414;
}
.oceanprotocol__logo {
.banner__logo {
fill: #141414;
}
}
@ -28,22 +28,21 @@
}
}
.oceanprotocol__title {
font-size: .65rem;
.banner__title {
font-size: .7rem;
margin: 0;
opacity: .8;
color: #fff;
@media ($screen-sm) {
font-size: .75rem;
font-size: $font-size-small;
}
}
.oceanprotocol__logo {
.banner__logo {
fill: #fff;
width: 1rem;
height: 1rem;
margin-right: $spacer / 4;
margin-bottom: -.3rem;
margin-bottom: -.2rem;
display: inline-block;
}

View File

@ -19,7 +19,7 @@
@import 'alerts';
@import 'cookiebanner';
@import 'syntax';
@import 'oceanprotocol';
@import 'banner';
.content--page--markdown {
padding-top: $spacer * 2;

79
_src/_data/board.yml Normal file → Executable file
View File

@ -13,9 +13,50 @@
#
- name: David Holtzman
- name: Joachim Lohkamp
position: President
bio: |
Joachim Lohkamp is an entrepreneur and tech-enthusiast with a heart for activism. As the founder of Jolocom, he has been working at the forefront of the decentralization movement in Berlin since 2014. With Jolocom, he is providing the identity solution that will enable real world use cases in smart contract based business models.
To ultimately harvest this potential and inform innovation aimed regulation, he co-founded the German Blockchain Association (Bundesblock) that establishes the dialogue between blockchain businesses and politics. He is further active as an advisor for BlockchainHub, a decentralized Think Tank and as a Connector for OuiShare. Finally, you might find him as the Organizer of events like GetDecentralized, Decentralized Web Summit among others.
social:
- name: Twitter
link: https://twitter.com/JockelLohkamp
- name: LinkedIn
link: https://www.linkedin.com/in/joachimlohkamp/
- name: Thomas Fürstner
position: General Secretary
bio: |
Tom Fürstner is a research scientist and university professor with over 30 years of experience in formal logic, social economy theory and digital art. Tom is the founder and CTO of Riddle & Code, a company focused on developing dedicated hardware for the physical internet and public ledger systems.
These days, he is working on hardened server systems for operating BigchainDB and IPFS. The aim is to enable sustainable and resilient identity services in an emerging world of shared sovereignty between humans, machines, algorithms and protocols.
social:
- name: LinkedIn
link: https://www.linkedin.com/in/thomas-fuerstner-0797592/
- name: Elfriede Sixt
position: Treasurer
bio: |
Elfriede Sixt believes in the disruptive potential of decentralized peer-to-peer networks and blockchains. She is curious to learn how industries and business models will change along this way.
Elfriede Sixt is a blogger and book author writing about crowdfunding, blockchains, and regulation. Her background is in Business administration and corporate finance. Besides that she is a founder of fintech.academy as well as ebit4u.
social:
- name: Twitter
link: https://twitter.com/ebit4u
- name: LinkedIn
link: https://www.linkedin.com/in/elfriede-sixt-05384719/
- name: David Holtzman
position: Member-at-Large
bio: |
David Holtzman is an information technology security expert, educator and activist. He started his career as a cryptographic analyst, military codebreaker, U.S. Naval Security Group submariner, and Soviet Manned Space Program analyst. Holtzman is an early-stage internet pioneer.
@ -26,31 +67,6 @@
link: https://twitter.com/theglobalpov
- name: Constance Choi
position: Secretary
bio: |
Constance Choi is the co-founder and Director of [COALA](http://coala.global/), an international multidisciplinary collaborative research and development initiative on blockchain technologies, smart contracts, and decentralized autonomous applications. Choi co-founded and was General Counsel and Chief Compliance Officer of the Kraken digital asset exchange.
She holds a J.D. from UC Berkeley School of Law, and undergraduate degrees from Brown University and University of Cambridge. She has practiced at several law firms, including the Electronic Frontier Foundation, focusing on internet and technology law, intellectual property, privacy, data security, and constitutional rights.
social:
- name: Twitter
link: https://twitter.com/sevenadvisory
- name: Greg McMullen
position: Treasurer
bio: |
Greg McMullen is a lawyer, internet advocate, and Chief Policy Officer at BigchainDB, where he built the framework for the IPDB Foundation and helped bring together its founding caretakers. He is a leading member of the [COALA IP](https://www.coalaip.org/) working group and co-authored the COALA IP specification and policy paper.
Before joining BigchainDB and IPDB, he was a litigator at one of Canadas top class actions law firms, where he worked on class actions involving privacy, copyright, competition law, and price fixing conspiracies. He served on the board of directors the BC Civil Liberties Association, Canadas largest civil liberties organization, and authored the BCCLAs guide to privacy and security when crossing borders with electronic devices.
social:
- name: Twitter
link: https://twitter.com/gmcmullen
- name: Nina-Luisa Siedler
prefix: Dr.
position: Member-at-Large
@ -63,14 +79,3 @@
- name: Twitter
link: https://twitter.com/ninsie3
- name: Kaspar Korjus
position: Member-at-Large
bio: |
Kaspar Korjus is the Managing Director of Estonias [e-Residency](https://e-estonia.com/e-residents/about/) program, which offers a fully digital identity for global citizens. e-Residency is built on inclusion, transparency, and legitimacy. It is meant to empower citizens globally and provide world-wide digital and financial inclusion.
Korjus was chosen by Megan Smith, CTO of the United States, as one of 20 digital leaders for the Global Leaders Digital Exchange (GLDE) program, and is listed in Forbes Estonias “30 under 30” as #1 in Technology and Finance.
social:
- name: Twitter
link: https://twitter.com/kasparkorjus

20
_src/_data/caretakers.yml Normal file → Executable file
View File

@ -1,3 +1,9 @@
- name: Jolocom
link: http://jolocom.io
- name: Riddle And Code
link: https://www.riddleandcode.com
- name: COALA
link: http://coala.global
@ -7,9 +13,6 @@
- name: Human Data Commons Foundation
link: https://humandatacommons.org
- name: Dyne.org
link: https://www.dyne.org
- name: Monax
link: https://monax.io
@ -22,13 +25,6 @@
- name: BigchainDB
link: https://www.bigchaindb.com
- name: OpenMedia
link: https://openmedia.org
- name: SmartContract
link: https://smartcontract.com
logo: false
- name: OuiShare
link: http://ouishare.net
@ -44,7 +40,3 @@
- name: KICTANet
link: https://www.kictanet.or.ke
- name: Global Consent
link: http://www.consent.global/
logo: false

0
_src/_data/colors.yml Normal file → Executable file
View File

14
_src/_data/contact.yml Normal file → Executable file
View File

@ -1,21 +1,19 @@
company: "Interplanetary Database Foundation e.V."
registration: "Registration VR 36146 B"
registration: "Amtsgericht: VR 36146 B"
address:
street: "Wichertstraße 14a"
zip: "10439"
street: "Köpenicker Strasse 154"
zip: "10997"
city: "Berlin"
country: "Germany"
email: "contact@ipdb.io"
email_caretakers: "caretakers@ipdb.io"
email: "contact@ipdb.global"
email_caretakers: "contact@ipdb.global"
# All the social links
social:
- name: "Twitter"
link: "https://twitter.com/ipdbfoundation"
- name: "Facebook"
link: "https://facebook.com/ipdbfoundation"
- name: "LinkedIn"
link: "https://www.linkedin.com/company/7963161"
link: "https://www.linkedin.com/company/interplanetary-database-foundation-ipdb/"
- name: "GitHub"
link: "https://github.com/ipdb"
org: "ipdb"

6
_src/_data/content-foundation.yml Normal file → Executable file
View File

@ -28,7 +28,7 @@ vision:
description: "The IPDB Foundation advances science and research."
text: |
The IPDB Foundation promotes science and research on the operation of scalable blockchain databases, the governance of decentralized systems, and the applications of blockchain technology.
The IPDB Foundation has taken a leading role in the Berlin blockchain community. We co-organized the [9984 Summit](https://2017.9984.io/), a two-day conference in Berlin bringing together top blockchain thinkers from around the world. We co-organize the [IPDB-BigchainDB Meetup](https://www.meetup.com/BigchainDB-IPDB-Meetup/) in Berlin. We have sent speakers to numerous conferences and events in Berlin and across the EU, and have published numerous [blog posts](https://medium.com/ipdb-blog) on blockchain technology.
The IPDB Foundation has taken a leading role in the Berlin blockchain community. We co-organized the [9984 Summit](https://2017.9984.io/), a two-day conference in Berlin bringing together top blockchain thinkers from around the world. We co-organize the [IPDB Meetup](https://www.meetup.com/blockchain-and-identity/) in Berlin. We have sent speakers to numerous conferences and events in Berlin and across the EU, and have published numerous [blog posts](https://medium.com/ipdb-blog) on blockchain technology.
In the future we will continue to make our work available in many ways——hosting or presenting at conferences and workshops, publishing research results and technical papers, releasing open source software, and more. Everything we do will be made available online, for the benefit of the public.

2
_src/_data/content-front.yml Normal file → Executable file
View File

@ -7,7 +7,7 @@ intro:
title: "A planetary-scale blockchain database"
description: "The distributed, permanent web is evolving and needs a decentralized database. We are that database."
text: |
IPDB is a planetary-scale blockchain database built on [BigchainDB](https://www.bigchaindb.com). Its a ready-to-use public network with a focus on strong governance. It shares all the features of BigchainDB to make developers lives easier.
IPDB is a planetary-scale blockchain database built on BigchainDB. Its a ready-to-use public network with a focus on strong governance. It shares all the features of BigchainDB to make developers lives easier.
features:
- title: "A single public database"

4
_src/_data/faq.yml Normal file → Executable file
View File

@ -28,7 +28,7 @@
- question: How do I use IPDB?
answer: |
IPDB is based on [BigchainDB](https://www.bigchaindb.com/). You can learn about using the IPDB client API on the BigchainDB documentation page.
IPDB is based on BigchainDB. You can learn about using the IPDB client API on the BigchainDB documentation page.
- question: How much does it cost to use IPDB?
answer: |
@ -75,7 +75,7 @@
- question: What technology is IPDB based on?
answer: |
IPDB is a public instance of [BigchainDB](https://www.bigchaindb.com/), a scalable blockchain database.
IPDB is a public instance of BigchainDB, a scalable blockchain database.
- question: What is the IPDB consensus model?
answer: |

4
_src/_data/menus.yml Normal file → Executable file
View File

@ -1,8 +1,6 @@
main:
- title: Foundation
url: /foundation/
- title: Docs
url: /docs/
- title: Contact
url: /contact/
@ -11,8 +9,6 @@ footer:
url: /faq/
- title: Blog
url: https://medium.com/ipdb-blog
- title: Jobs
url: /jobs/
legal:
- title: Terms

9
_src/_includes/banner.html Executable file
View File

@ -0,0 +1,9 @@
<a class="banner" href="https://www.meetup.com/blockchain-and-identity/">
<div class="row row--wide">
<h1 class="banner__title">
<svg class="banner__logo">
<use xlink:href="/assets/img/sprite.svg#icon-meetup"></use>
</svg>
Join us at our next IPDB meetup for the test net launch!</h1>
</div>
</a>

54
_src/_includes/board.html Normal file → Executable file
View File

@ -1,41 +1,41 @@
<div class="board grid grid--full grid-small--half grid--gutters">
{% assign board = site.data.board %}
{% assign board = site.data.board %}
{% for member in board %}
{% assign slug = (member.name | downcase | replace: ' ', '-') %}
{% assign slug = (member.name | downcase | replace: ' ', '-' | replace: 'ü', 'ue') %}
<div class="grid__col">
<div class="boardmember">
<div class="boardmember__info">
<img class="boardmember__avatar" src="/assets/img/board/{{ slug }}.jpg">
<div class="grid__col">
<div class="boardmember">
<div class="boardmember__info">
<img class="boardmember__avatar" src="/assets/img/board/{{ slug }}.jpg">
<div class="boardmember__meta">
<h1 class="boardmember__name">
{% if member.prefix %}{{ member.prefix }} {% endif %}
{{ member.name }}
</h1>
<p class="boardmember__position">{{ member.position }}</p>
<div class="boardmember__meta">
<h1 class="boardmember__name">
{% if member.prefix %}{{ member.prefix }} {% endif %}
{{ member.name }}
</h1>
<p class="boardmember__position">{{ member.position }}</p>
{% if member.social %}
<p class="boardmember__social">
{% for item in member.social %}
<a href="{{ item.link }}" title="{{ item.name }}">
<svg class="icon" aria-labelledby="title">
<title>{{ item.name }}</title>
<use xlink:href="/assets/img/sprite.svg#icon-{{ item.name | downcase }}"></use>
</svg>
</a>
{% endfor %}
</p>
{% endif %}
</div>
{% if member.social %}
<p class="boardmember__social">
{% for item in member.social %}
<a href="{{ item.link }}" title="{{ item.name }}">
<svg class="icon" aria-labelledby="title">
<title>{{ item.name }}</title>
<use xlink:href="/assets/img/sprite.svg#icon-{{ item.name | downcase }}"></use>
</svg>
</a>
{% endfor %}
</p>
{% endif %}
</div>
<div class="boardmember__bio">{{ member.bio | markdownify }}</div>
</div>
<div class="boardmember__bio">{{ member.bio | markdownify }}</div>
</div>
</div>
{% endfor %}
</div>

28
_src/_includes/caretakers.html Normal file → Executable file
View File

@ -1,24 +1,24 @@
<div class="caretakers grid grid--half grid-medium--fit grid-medium--columns grid--justifycenter grid--gutters">
{% assign caretakers = (site.data.caretakers | sort: 'name') %}
{% assign caretakers = (site.data.caretakers | sort: 'name') %}
{% for caretaker in caretakers %}
{% assign slug = (caretaker.name | downcase | replace: ' ', '-' | replace: '.', '-') %}
{% assign slug = (caretaker.name | downcase | replace: ' ', '-' | replace: '.', '-') %}
<div class="grid__col grid__col--2">
<a class="caretaker" href="{{ caretaker.link }}" rel="external">
{% if caretaker.logo == false %}
<span class="caretaker__name">{{ caretaker.name }}</span>
{% else %}
<svg class="logo-caretaker logo-caretaker--{{ slug }}" aria-labelledby="title">
<title>{{ caretaker.name }}</title>
<use xlink:href="/assets/img/sprite.svg#logo-{{ slug }}"></use>
</svg>
{% endif %}
<div class="grid__col grid__col--2">
<a class="caretaker" href="{{ caretaker.link }}" rel="external">
{% if caretaker.logo == false %}
<span class="caretaker__name">{{ caretaker.name }}</span>
{% else %}
<svg class="logo-caretaker logo-caretaker--{{ slug }}" aria-labelledby="title">
<title>{{ caretaker.name }}</title>
<use xlink:href="/assets/img/sprite.svg#logo-{{ slug }}"></use>
</svg>
{% endif %}
</a>
</div>
</a>
</div>
{% endfor %}
</div>

0
_src/_includes/contact.html Normal file → Executable file
View File

0
_src/_includes/footer.html Normal file → Executable file
View File

0
_src/_includes/form-contact.html Normal file → Executable file
View File

0
_src/_includes/form-newsletter.html Normal file → Executable file
View File

0
_src/_includes/head.html Normal file → Executable file
View File

0
_src/_includes/header.html Normal file → Executable file
View File

0
_src/_includes/menu-footer.html Normal file → Executable file
View File

0
_src/_includes/menu-foundation.html Normal file → Executable file
View File

18
_src/_includes/menu-main.html Normal file → Executable file
View File

@ -2,7 +2,10 @@
<div class="row">
<div class="menu__logo">
<a class="menu__link menu__link--logo" href="/">
<svg class="logo" aria-labelledby="title"><title>Logo IPDB</title><use xlink:href="/assets/img/sprite.svg#logo"></use></svg>
<svg class="logo" aria-labelledby="title">
<title>Logo IPDB</title>
<use xlink:href="/assets/img/sprite.svg#logo"></use>
</svg>
</a>
</div>
@ -11,17 +14,14 @@
<div class="menu-overflow">
{% for link in site.data.menus.main %}
{% assign active = nil %}
{% if page.url contains link.url %}
{% assign active = 'active' %}
{% endif %}
{% assign active = nil %}
{% if page.url contains link.url %}
{% assign active = 'active' %}
{% endif %}
<a class="menu__link {{ active }}" href="{{ link.url }}">{{ link.title }}</a>
<a class="menu__link {{ active }}" href="{{ link.url }}">{{ link.title }}</a>
{% endfor %}
<a class="button button--small button--primary" href="{{ site.signup.link }}">{{ site.signup.button_short }}</a>
<a class="button button--small" href="{{ site.login.link }}">{{ site.login.button }}</a>
</div>
</div>

View File

@ -1,9 +0,0 @@
<a class="banner--ocean oceanprotocol" href="https://oceanprotocol.com/?utm_source=ipdb.io&utm_medium=banner&utm_campaign=ocean_banner">
<div class="row row--wide">
<h1 class="oceanprotocol__title">
<svg class="oceanprotocol__logo">
<use xlink:href="/assets/img/sprite.svg#logo-oceanprotocol"></use>
</svg>
Meet Ocean. A Decentralized Data Exchange Protocol</h1>
</div>
</a>

0
_src/_includes/scripts.html Normal file → Executable file
View File

0
_src/_includes/sharing.html Normal file → Executable file
View File

View File

@ -1,11 +0,0 @@
---
layout: page
title: Canary
narrow: true
---
![](/assets/img/canary.jpg)
By Alan Manson <a href="https://commons.wikimedia.org/wiki/File%3AForest_Canary_%28Serinus_scotops%29_facing_left%2C_front_view.jpg">2007_10_13_13_16_Forest_Canary</a> [[CC BY-SA 2.0](http://creativecommons.org/licenses/by-sa/2.0)], via Wikimedia Commons

View File

@ -1,125 +0,0 @@
---
layout: page
title: IPDB Developer Documentation
subtitle: Sharing the knowledge
narrow: true
---
Under [developers.ipdb.io](https://developers.ipdb.io) you can find the portal for developers who want to access IPDB. Right now, we are inviting users to participate in the IPDB Test Network. If you arent already in, you can sign up for early access to the IPDB Test Network. We plan to open the IPDB Production Network to everyone soon.
## Getting Started
Anyone—a person or organization—can sign up for an IPDB Developer Portal account as a developer. By signing up, you agree to the IPDB Test Network [Terms of Service](/terms/) and [Privacy Policy](/privacy/).
New accounts must be approved by the IPDB Support Team. Every developer will get one application (or app) to start with.
If approved, a developer can create more applications (details below). If a developer is denied or rejected, their account and initial application will be deleted.
## Application ID and Keys
Every application has an application ID (`app_id`) and one or more application keys (`app_key`). The app id and keys are also called API credentials. Each application can make HTTP requests using its credentials and the BigchainDB HTTP API (explained below). An application should only use its own credentials, never the credentials of other applications.
Application IDs and application keys should be kept secret.
If you, as a developer, want to allow users to send HTTP requests directly to the IPDB Test Network or Production Network, you must first get explicit prior consent from the IPDB Foundation. Only then are you, as a developer, allowed to share app ids and app keys with your users.
## How to Make HTTP Requests
The IPDB Test Network is an instance of a BigchainDB cluster. The API is documented under [BigchainDB HTTP API](https://docs.bigchaindb.com/projects/server/en/latest/drivers-clients/http-client-server-api.html).
### API root endpoint
```
https://test.ipdb.io/api/v1/
```
### Examples
#### Connect using Python
```python
from bigchaindb_driver import BigchainDB
tokens = {}
tokens['app_id'] = 'bcdc4699'
tokens['app_key'] = '0ab98d2ca2e8ca6f37518b9d0eb5ac50'
bdb = BigchainDB('https://test.ipdb.io', headers=tokens)
```
[BigchainDB Python driver on GitHub](https://github.com/bigchaindb/bigchaindb-driver) | [Python driver usage documentation](https://docs.bigchaindb.com/projects/py-driver/en/master/usage.html)
#### Connect using Node.js
```js
const driver = require('bigchaindb-driver')
let bdb = new driver.Connection('https://test.ipdb.io/api/v1/', {
app_id: 'bcdc4699',
app_key: '0ab98d2ca2e8ca6f37518b9d0eb5ac50'
})
```
[BigchainDB JavaScript driver on GitHub](https://github.com/bigchaindb/js-bigchaindb-driver)
#### Connect using curl
```bash
curl -X "POST" "https://test.ipdb.io/api/v1/transactions/" \
-H "app_id: bcdc4699" \
-H "app_key: 0ab98d2ca2e8ca6f37518b9d0eb5ac50" \
-d "@tx.json"
```
### Limits
- Each of your applications has its own limits. Those limits are determined by the plan that the application is using. Application plan limits are outlined in the Billing section below.
- Maximum of 500,000 API calls per day, summed over all applications. This is a limit of our current 3scale plan.
- Maximum of 600 API calls per minute, summed over all applications. This is a limit of our current 3scale plan.
- Maximum HTTP request body size (e.g. transaction size) of 15kB (15 kilobytes = 15000 bytes). (We use the NGINX setting `client_max_body_size 15k;` to enforce this.)
- NGINX is set to process a maximum of 10 requests per second sustained, per IP address. It can hold up to 10 more requests (per IP address) in its buffer, to accomodate short bursts above 10 requests per second.
## How to Create a New Application
There are two ways for a developer to create a new application.
1. One way is to sign in on the developer portal, click APPLICATIONS in the top menu, and then click the button labelled *Create new application*.
2. A second way is to make an HTTP request to the IPDB-Agent, an online microservice that can create new applications on behalf of IPDB. If you'd like to do this, please contact us using the IPDB Foundation's [contact page](/contact/).
## Billing
A developer can have several applications. Each application has a plan associated with it.
Right now, the IPDB Test Network only has one plan: a free plan, but it has a limit. We keep track of the total data transferred IN by each application, and that is capped at 100 MB per month. We may change that cap in the future, and we may offer additional plans in the future, including paid ones.
The IPDB Production Network is not currently available, but we intend to offer the following plans once it is available:
1. Free: 1 MB data transfer (IN) per month (about 1k transactions`*`)
2. $10 per month: 10 MB data transfer (IN) per month (about 10k transactions*)
3. $20 per month: 100 MB data transfer (IN) per month (about 100k transactions*)
4. $100 per month: 1000 MB data transfer (IN) per month (about 1M transactions*)
`*`assuming an average transaction size of 1 kb (typical).
When an application goes over 80% of its data transfer allowance, an email alert is sent to the developer. Same for 90% and 100%. If an application goes over its data transfer allowance (i.e. over 100%), then subsequent API requests from that application will be dropped.
A developer can change an application's billing plan mid-month (e.g. to get more data transfer allowance).
All application data transfer allowances reset at the beginning of each month. If an application doesn't use up its data transfer allowance for a month, then the remaining data transfer is not rolled over into the next month.
The first invoice is sent to the developer 34 days after they sign up for a plan (pro-rated, meaning they are only invoiced for the part of the month that they had the plan). All subsequent invoices are sent near the beginning of each month, typically the fourth day of the month. Two days after an invoice is issued, it becomes due and the associated credit card will be charged (if applicable).
## How to Change an Application's Plan
If you want to change an application's plan, then login to the IPDB Developer Portal, go to Applications, click on the name of the application, and then click the "REVIEW/CHANGE" button beside the name of the plan. Note: The Test Network API has only one plan, so you can't change to a different one. Also, at the time of writing, the Production Network had only one available plan.
You can't change an application from a Test Network API plan to a Production Network API plan or vice versa.
## How to Delete an Application
If you want to delete an application, please email your request to support@ipdb.io.
## How to Delete Your Developer Account
If you want to delete your developer account, please email your request to [support@ipdb.io](mailto:support@ipdb.io).
## Contact Us
Anyone can contact us using the IPDB Foundation's [contact page](/contact/).

0
_src/faq.html Normal file → Executable file
View File

0
_src/foundation/articles.md Normal file → Executable file
View File

0
_src/foundation/bylaws.md Normal file → Executable file
View File

8
_src/foundation/index.html Normal file → Executable file
View File

@ -2,7 +2,6 @@
layout: page
title: Foundation &amp; governance
subtitle: Decentralized without dysfunction.
css: page-foundation
---
@ -41,7 +40,7 @@ css: page-foundation
<div class="row features">
<div class="grid grid--full grid-small--half grid--gutters">
{% for feature in content.caretakers.features %}
{% for feature in content.caretakers.features %}
<div class="grid__col">
<div class="feature">
<svg class="feature__image" width="298" height="220" aria-labelledby="title">
@ -52,7 +51,7 @@ css: page-foundation
<p class="feature__description">{{ feature.description }}</p>
</div>
</div>
{% endfor %}
{% endfor %}
</div>
</div>
@ -69,7 +68,8 @@ css: page-foundation
<footer class="row">
<footer class="section__actions">
<a href="mailto:{{ site.data.contact.email_caretakers }}?subject=Becoming a caretaker" class="button button--text">Become a caretaker</a>
<a href="mailto:{{ site.data.contact.email_caretakers }}?subject=Becoming a caretaker" class="button button--text">Become
a caretaker</a>
</footer>
</footer>
</section>

0
_src/foundation/satzung.md Normal file → Executable file
View File

View File

@ -4,11 +4,15 @@ layout: base
front_page: true
css: page-front
redirect_from:
- /docs/
- /jobs/
---
{% assign content = site.data.content-front %}
{% include oceanprotocol.html %}
{% include banner.html %}
<header class="hero section">
@ -20,7 +24,6 @@ css: page-front
<div class="grid__col grid__col--4">
<h1 class="hero__title">{{ content.hero.title }}</h1>
<h2 class="hero__description">{{ content.hero.description }}</h2>
<a class="hero__action button button--primary" href="#getstarted" data-scroll>{{ content.hero.action }}</a>
</div>
</div>
</hgroup>
@ -78,7 +81,8 @@ css: page-front
<div class="grid grid--full grid-small--half grid-medium--columns grid--center grid--gutters">
<div class="grid__col grid__col--2">
<figure class="feature__image">
<img src="/assets/img/{{ feature.image }}.jpg" srcset="/assets/img/{{ feature.image }}.jpg 1x, /assets/img/{{ feature.image }}@2x.jpg 2x" alt="{{ feature.title }}" width="400">
<img src="/assets/img/{{ feature.image }}.jpg" srcset="/assets/img/{{ feature.image }}.jpg 1x, /assets/img/{{ feature.image }}@2x.jpg 2x"
alt="{{ feature.title }}" width="400">
</figure>
</div>
@ -86,22 +90,17 @@ css: page-front
<h1 class="feature__title">{{ feature.title }}</h1>
<div class="feature__text">{{ feature.text | markdownify }}</div>
{% if feature.list %}
<ul class="feature__list">
{% for item in feature.list %}
<li>{{ item }}</li>
{% endfor %}
</ul>
<ul class="feature__list">
{% for item in feature.list %}
<li>{{ item }}</li>
{% endfor %}
</ul>
{% endif %}
</div>
</div>
</div>
{% endfor %}
</section>
<footer class="section__actions">
<a class="button button--primary" href="{{ site.signup.link }}">{{ site.signup.button }}</a>
<a href="" class="button button--text">Read IPDB Documentation</a>
</footer>
</div>
</section>
@ -132,7 +131,7 @@ css: page-front
</section>
<section class="section section--roadmap">
<!-- <section class="section section--roadmap">
<div class="row">
<header class="section__header">
<div class="grid grid--full grid-medium--columns grid--gutters">
@ -150,146 +149,23 @@ css: page-front
{% for step in content.roadmap.steps %}
{% assign status = step.status %}
{% assign status = step.status %}
<div class="roadmap__step is-{{ status }}">
<p class="roadmap__net">{{ step.net }}</p>
<p class="roadmap__target">{{ step.target }}</p>
{% if step.time %}<p class="roadmap__time">{{ step.time }}</p>{% endif %}
</div>
<div class="roadmap__step is-{{ status }}">
<p class="roadmap__net">{{ step.net }}</p>
<p class="roadmap__target">{{ step.target }}</p>
{% if step.time %}<p class="roadmap__time">{{ step.time }}</p>{% endif %}
</div>
{% endfor %}
</div>
</div>
</section>
<section class="section section--background section--getstarted" id="getstarted">
<div class="row">
<header class="section__header">
<div class="grid grid--full grid-medium--columns grid--gutters">
<div class="grid__col grid__col--4">
<h1 class="section__title">{{ content.getstarted.title }}</h1>
<p class="section__description">{{ content.getstarted.description }}</p>
</div>
</div>
</header>
<div class="grid grid--full grid-medium--third">
{% for step in content.getstarted.steps %}
<div class="grid__col">
{% if step.link %}
<a class="getstarted" href="{{ step.link }}">
{% else %}
<div class="getstarted">
{% endif %}
<h2 class="getstarted__title">{{ step.title }}</h2>
<div class="getstarted__text">{{ step.text | markdownify }}</div>
{% if step.link %}
</a>
{% else %}
</div>
{% endif %}
</div>
{% endfor %}
</div>
<footer class="section__actions">
<a href="/docs/" class="button button--text">IPDB Documentation</a>
</footer>
<div class="getstarted-bigchaindb">
<div class="grid grid--full grid-small--half grid-medium--columns grid--center grid--gutters">
<div class="grid__col grid__col--2">
<figure class="feature__image">
<svg aria-labelledby="title">
<title>BigchainDB</title>
<use xlink:href="/assets/img/sprite.svg#feature-bigchaindb"></use>
</svg>
</figure>
</div>
<div class="grid__col grid__col--4">
<h1 class="feature__title">Want to send a transaction to IPDB right now?</h1>
<p class="feature__text">Create your first transaction quickly and easily on the BigchainDB Get Started page, or the art of crafting a perfect transaction.</p>
<a class="button button--text" href="https://www.bigchaindb.com/getstarted/">Send your first transaction</a>
</div>
</div>
</div>
<div class="getstarted-tools">
<div class="grid grid--full grid-small--half grid-medium--columns grid--gutters">
<div class="grid__col grid__col--2">
<h2 class="feature__title">Community Tools</h2>
</div>
<div class="grid__col grid__col--4">
{% for tool in content.getstarted.tools %}
<div class="tool">
<h3 class="tool__title">
<a href="{{ tool.link }}">{{ tool.title }}</a>
{% if tool.github %}
<a href="{{ tool.github }}" title="GitHub">
<svg class="icon" aria-labelledby="title">
<title>GitHub</title>
<use xlink:href="/assets/img/sprite.svg#icon-github"></use>
</svg>
</a>
{% endif %}
</h3>
<p class="tool__description">
{{ tool.description }}
</p>
</div>
{% endfor %}
</div>
</div>
</div>
</div>
</section>
</section> -->
<section class="section section--connect">
<div class="row">
<div class="grid grid--full grid-small--half grid--gutters">
<div class="grid__col">
<header class="section__header">
<h1 class="section__title">{{ content.connect.title }}</h1>
<p class="section__description">{{ content.connect.description }}</p>
</header>
</div>
<div class="grid__col">
<div class="social">
<h2 class="connect__title">{{ content.connect.follow_title }}</h2>
{% for item in site.data.contact.social %}
<a class="social-link" href="{{ item.link }}" title="{{ item.name }}">
<svg class="icon" aria-labelledby="title">
<title>{{ item.name }}</title>
<use xlink:href="/assets/img/sprite.svg#icon-{{ item.name | downcase }}"></use>
</svg>
</a>
{% endfor %}
</div>
<div class="connect connect--newsletter">
<h2 class="connect__title">{{ content.connect.newsletter_title }}</h2>
<p>{{ content.connect.newsletter_text }}</p>
{% include form-newsletter.html %}
</div>
</div>
</div>
<div class="connect connect--blog">
<h2 class="connect__title">{{ content.connect.blog_title }}</h2>
@ -297,12 +173,12 @@ css: page-front
<div class="articles">
<div class="grid grid--full grid-small--half grid-medium--fourth grid--gutters">
{% for article in site.articles limit: 4 %}
<div class="grid__col">
<a class="article" href="{{ article.link }}">
<figure class="article__image" style="background-image: url('{{ article.image | escape | strip_html }}')"></figure>
<h1 class="article__title">{{ article.title }}</h1>
</a>
</div>
<div class="grid__col">
<a class="article" href="{{ article.link }}">
<figure class="article__image" style="background-image: url('{{ article.image | escape | strip_html }}')"></figure>
<h1 class="article__title">{{ article.title }}</h1>
</a>
</div>
{% endfor %}
</div>

View File

@ -1,11 +0,0 @@
---
layout: page
title: Jobs
narrow: true
---
# Jobs @ Interplanetary Database Foundation
We'll be adding job openings in the next few months. In the meantime, if you're interested in working with us, don't hesitate to reach out: [contact@ipdb.io](mailto:contact@ipdb.io)

52
_src/privacy.md Normal file → Executable file
View File

@ -6,48 +6,52 @@ title: Privacy policy
narrow: true
---
*29 November 2016*
_Last updated: 2018/05/19_
## Introduction
This notice falls under the [General Data Protection Regulation (GDPR)](https://www.eugdpr.org/).
These policies apply to your use of this website and to information you submit through this website. Use of the IPDB network is subject to its own Terms of Service and Privacy Policy.
## Who we are
We collect and use information in accordance with the German Telemedia Act (Telemediengesetz) and (Bundesdatenschutzgesetz), or with your express consent. We do not knowingly collect personal information from children under 18 without permission from a parent or guardian.
{% include contact.html imprint="true" %}
## What information we collect and how we use it
## How to contact us
We may log information about your visit to this site (your IP address, browser version, and so on) so we can improve the site and keep it secure.
We can be reached via the contact information on our website.
If you submit information through the forms on this site, we will collect the information you submit. We may use that information to contact you or to improve IPDB.
## Personal data we collect
## How we store information
- email address;
- names;
- IP;
- newsletter: opens, clicks, opt-ins.
We may use cloud service providers to store information. Information may be stored outside of the European Union, but we only use providers that comply with the US-EU [Privacy Shield](http://ec.europa.eu/justice/data-protection/international-transfers/eu-us-privacy-shield/index_en.htm). Right now we use the following providers, which each have their own privacy policies:
## Consent to collect
* Google Apps for email and internal document sharing ([Privacy Policy](https://www.google.com/policies/privacy/)).
* Mailchimp for mailing lists ([Privacy Policy](https://mailchimp.com/legal/privacy/)).
* 3Scale for the Test Network user portal ([Privacy Policy](https://www.redhat.com/en/about/privacy-statement)).
We store data from users that have submitted information via our contact form.
After a user submits a request to receive updates, we ask for additional consent from the user via email, i.e. we ask the user to confirm the request to receive updates.
## How information is shared
## Your data, your rights
We will not share or sell the identifiable personal information we collect or generate except as we explain in this section.
- You can request a copy of your data which we will provide within 30 days;
- We strive to keep our service secure, and in the event of a data breach or misuse, we will inform our users of the incident as well as the steps we have taken to ameliorate the situation within 30 days.
We may share personal information with BigchainDB GmbH, the company responsible for the development of the software IPDB runs on. This information will be used in accordance with the [BigchainDB Privacy Policy](https://bigchaindb.com/privacy) and our information sharing agreement with BigchainDB.
## Services and third parties where IPDB stores data
We may share non-personal or aggregate information, such as usage statistics for the site.
IPDB relies on a limited number of third-party services to maintain its own services. IPDB never shares or resell any of its data. We store your email address and name on the following third-party services (which offer secure, privacy-focused storage solutions):
## Cookies
- [Sender](http://sender.net/)
We only use one cookie: [Google Analytics](https://www.google.com/analytics/). It provides information about how you use the site so we can make it better. We respect the [Do Not Track](https://en.wikipedia.org/wiki/Do_Not_Track) header. You can block tracking cookies entirely by installing a browser add-on such as [Privacy Badger](https://www.eff.org/privacybadger) or [uBlock Origin](https://github.com/gorhill/uBlock).
## Newsletter & account statistics and reporting
## Updating or deleting your personal information
IPDB records behavioural data, such as opens and clicks, for emails we distribute to our subscribers via Sender.
We will update or delete your personal information if you ask us to unless we are under a legal obligation to keep it. Just email us at privacy@ipdb.foundation.
## Length of data collection
## Legal requests
IPDB will keep identifiable data for an undetermined amount of time or until the user asks us to anonymize and / or delete his data.
We may be required to disclose information to comply with the law or processes such as warrants or court orders. [Watch our canary](/canary/).
## Who has access to our data?
## Open door policy
Data at IPDB is not shared with or sold to any third party.
IPDB staff and contractors retain access to users data for the exclusive purpose of electronic communications.
We believe privacy policies should be easy to read and make sense to non-lawyers. If something isn't clear or if you have questions, email us at privacy@ipdb.foundation.
No personal identifiable data is stored on staff or contractor computers on a permanent basis. Contractors are requested to delete this data at the end of their work agreement.

View File

@ -25,7 +25,7 @@ narrow: true
## The blockchain database network for the decentralized stack
IPDB is a planetary-scale blockchain database built on [BigchainDB](https://www.bigchaindb.com). Its a ready-to-use public network with a focus on **strong governance**. It shares _all the features_ of BigchainDB to make developers lives easier.
IPDB is a planetary-scale blockchain database built on BigchainDB. Its a ready-to-use public network with a focus on **strong governance**. It shares _all the features_ of BigchainDB to make developers lives easier.
### Maecenas sed diam eget risus

0
_src/terms.md Normal file → Executable file
View File

View File

@ -1,6 +1,6 @@
/* eslint-disable no-console */
import fs from 'fs'
import cp from 'child_process'
import { src, dest, watch, parallel, series } from 'gulp'
import del from 'del'
import parallelize from 'concurrent-transform'
@ -8,16 +8,17 @@ import browser from 'browser-sync'
import critical from 'critical'
import yaml from 'js-yaml'
import request from 'request'
import chalk from 'chalk'
import minimist from 'minimist'
// required to get our mix of old and ES6+ js to work with ugify-js 3
import uglifyjs from 'uglify-es'
import composer from 'gulp-uglify/composer'
// get all the configs: `pkg` and `site`
import pkg from './package.json'
import pkg from './package'
// load plugins
const spawn = require('child_process').spawn
const $ = require('gulp-load-plugins')()
const minify = composer(uglifyjs, console)
@ -25,14 +26,16 @@ const site = yaml.safeLoad(fs.readFileSync('./_config.yml'))
// handle errors
const onError = (error) => {
console.log($.util.colors.red('\nYou fucked up:', error.message, 'on line', error.lineNumber, '\n'))
console.log(chalk.red('\nYou fucked up:', error.message, 'on line', error.lineNumber, '\n'))
this.emit('end')
}
// 'development' is just default, production overrides are triggered
// by adding the production flag to the gulp command e.g. `gulp build --production`
const isProduction = ($.util.env.production === true)
const isStaging = ($.util.env.staging === true)
const options = minimist(process.argv.slice(2))
const isProduction = options.production === true
const isStaging = options.staging === true
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@ -109,9 +112,15 @@ export const jekyll = (done) => {
jekyllOptions = 'jekyll build --incremental --drafts --future'
}
const jekyllInstance = spawn('bundle', ['exec', jekyllOptions], { stdio: 'inherit' })
const jekyllInstance = cp.execFile('bundle', ['exec', jekyllOptions], { stdio: 'inherit' })
jekyllInstance.on('error', (error) => onError(error)).on('close', done)
const jekyllLogger = (buffer) => {
buffer.toString()
.split(/\n/)
.forEach((message) => console.log(message))
}
jekyllInstance.stdout.on('data', jekyllLogger).on('close', done)
}
@ -291,17 +300,17 @@ export const watchSrc = () => {
const buildBanner = (done) => {
let buildEnvironment
if ($.util.env.production) {
if (isProduction) {
buildEnvironment = 'production'
} else if ($.util.env.staging) {
} else if (isStaging) {
buildEnvironment = 'staging'
} else {
buildEnvironment = 'dev'
}
console.log($.util.colors.gray(' ------------------------------------------'))
console.log($.util.colors.green(` Building ${buildEnvironment} version...`))
console.log($.util.colors.gray(' ------------------------------------------'))
console.log(chalk.gray(' ------------------------------------------'))
console.log(chalk.green(` Building ${buildEnvironment} version...`))
console.log(chalk.gray(' ------------------------------------------'))
done()
}
@ -313,18 +322,18 @@ const buildBanner = (done) => {
const deployBanner = (done) => {
let deployTarget
if ($.util.env.live) {
if (options.live) {
deployTarget = 'Live'
} else {
deployTarget = 'Beta'
}
if (($.util.env.live || $.util.env.beta || $.util.env.gamma) === true) {
console.log($.util.colors.gray(' ------------------------------------------'))
console.log($.util.colors.green(` Deploying to ${deployTarget}... `))
console.log($.util.colors.gray(' ------------------------------------------'))
if ((options.live || options.beta || options.gamma) === true) {
console.log(chalk.gray(' ------------------------------------------'))
console.log(chalk.green(` Deploying to ${deployTarget}... `))
console.log(chalk.gray(' ------------------------------------------'))
} else {
console.log($.util.colors.red('\nHold your horses! You need to specify a deployment target like so: gulp deploy --beta. Possible targets are: --live, --beta, --gamma\n'))
console.log(chalk.red('\nHold your horses! You need to specify a deployment target like so: gulp deploy --beta. Possible targets are: --live, --beta, --gamma\n'))
}
done()
}
@ -352,9 +361,7 @@ export const build = series(
//
// `gulp dev`
//
export const dev = series(
build, server, watchSrc
)
export const dev = series(build, server, watchSrc)
// Set `gulp dev` as default: `gulp`
export default dev
@ -369,18 +376,18 @@ export default dev
// gulp deploy --beta
// gulp deploy --gamma
//
export const s3 = () => {
export const s3 = (done) => {
// create publisher, define config
let publisher
if ($.util.env.live === true) {
if (options.live === true) {
publisher = $.awspublish.create({
'params': { 'Bucket': S3BUCKET },
'accessKeyId': process.env.AWS_ACCESS_KEY,
'secretAccessKey': process.env.AWS_SECRET_KEY,
'region': S3REGION
})
} else if ($.util.env.beta === true) {
} else if (options.beta === true) {
publisher = $.awspublish.create({
'params': { 'Bucket': S3BUCKET_BETA },
'accessKeyId': process.env.AWS_BETA_ACCESS_KEY,
@ -444,6 +451,8 @@ export const s3 = () => {
.pipe($.awspublish.reporter({
states: ['create', 'update', 'delete']
}))
done()
}
@ -456,17 +465,17 @@ export const seo = (done) => {
const showResponse = (error, response) => {
if (error) {
$.util.log($.util.colors.red(error))
console.log(chalk.red(error))
} else {
$.util.log($.util.colors.gray('Status:', response && response.statusCode))
console.log(chalk.gray('Status:', response && response.statusCode))
if (response.statusCode === 200) {
$.util.log($.util.colors.green('Successfully notified'))
console.log(chalk.green('Successfully notified'))
}
}
}
if ($.util.env.live === true) {
if (options.live === true) {
request(`${googleUrl + site.url}/sitemap.xml`, showResponse)
request(`${bingUrl + site.url}/sitemap.xml`, showResponse)
}

View File

@ -1,5 +1,5 @@
{
"name": "ipdb-site",
"name": "@ipdb/website",
"version": "1.0.0",
"author": {
"name": "Matthias Kretschmann",
@ -7,7 +7,7 @@
},
"description": "The blockchain database governance the universe needs",
"homepage": "https://ipdb.io",
"license": "(c) 2017 IPDB Foundation - All Rights Reserved",
"license": "(c) 2018 IPDB Foundation - All Rights Reserved",
"main": "gulpfile.babel.js",
"scripts": {
"start": "gulp",
@ -30,50 +30,53 @@
"dependencies": {
"ajaxchimp": "^1.3.0",
"cookie-banner": "github:dobarkod/cookie-banner",
"jquery": "^3.2.1",
"smooth-scroll": "^12.1.5",
"jquery": "^3.3.1",
"smooth-scroll": "^14.2.1",
"textarea-autogrow": "^1.0.0"
},
"devDependencies": {
"babel-core": "^6.26.0",
"babel-eslint": "^8.0.1",
"babel-preset-env": "^1.6.1",
"browser-sync": ">=2.10.0",
"@babel/core": "^7.1.0",
"@babel/preset-env": "^7.1.0",
"@babel/register": "^7.0.0",
"babel-eslint": "^10.0.1",
"browser-sync": "^2.24.7",
"chalk": "^2.4.1",
"concurrent-transform": "^1.0.0",
"critical": "^1.0.0",
"cross-spawn": "^5.1.0",
"critical": "^1.3.4",
"cross-spawn": "^6.0.5",
"del": "^3.0.0",
"eslint": "^4.10.0",
"eslint-config-ascribe": "^3.0.4",
"eslint-plugin-import": "^2.8.0",
"gulp": "github:gulpjs/gulp#4.0",
"gulp-autoprefixer": "^4.0.0",
"gulp-awspublish": "^3.0.0",
"gulp-awspublish-router": "^0.1.1",
"gulp-clean-css": "^3.9.0",
"gulp-cli": "^2.0.0",
"gulp-concat": "^2.6.0",
"gulp-header": "^1.8.9",
"gulp-htmlmin": "^4.0.0",
"eslint": "^5.6.0",
"eslint-config-ascribe": "^3.0.5",
"eslint-plugin-import": "^2.14.0",
"gulp": "next",
"gulp-autoprefixer": "^6.0.0",
"gulp-awspublish": "^3.4.0",
"gulp-awspublish-router": "^0.1.5",
"gulp-clean-css": "^3.10.0",
"gulp-cli": "^2.0.1",
"gulp-concat": "^2.6.1",
"gulp-header": "^2.0.5",
"gulp-htmlmin": "^5.0.1",
"gulp-if": "^2.0.2",
"gulp-imagemin": "^4.0.0",
"gulp-include": "^2.0.2",
"gulp-imagemin": "^4.1.0",
"gulp-include": "^2.3.1",
"gulp-load-plugins": "^1.5.0",
"gulp-rename": "^1.2.2",
"gulp-replace": "^0.6.1",
"gulp-rev": "^8.0.0",
"gulp-rev-replace": "^0.4.2",
"gulp-sass": "^3.1.0",
"gulp-sourcemaps": "^2.6.1",
"gulp-svg-sprite": "^1.3.7",
"gulp-uglify": "^3.0.0",
"gulp-util": "^3.0.6",
"js-yaml": "^3.10.0",
"request": "^2.83.0",
"stylelint": "^8.2.0",
"stylelint-config-bigchaindb": "^1.0.0",
"stylelint-config-standard": "^18.0.0",
"uglify-es": "^3.1.6"
"gulp-rename": "^1.4.0",
"gulp-replace": "^1.0.0",
"gulp-rev": "^8.1.1",
"gulp-rev-replace": "^0.4.4",
"gulp-sass": "^4.0.1",
"gulp-sourcemaps": "^2.6.4",
"gulp-svg-sprite": "^1.5.0",
"gulp-uglify": "^3.0.1",
"gulp-util": "^3.0.8",
"js-yaml": "^3.12.0",
"minimist": "^1.2.0",
"request": "^2.88.0",
"stylelint": "^9.6.0",
"stylelint-config-bigchaindb": "^1.2.1",
"stylelint-config-standard": "^18.2.0",
"uglify-es": "^3.3.9"
},
"engines": {
"node": ">=7.0.0"