chore: add external images to the public folder (#89)

This commit is contained in:
João Peixoto
2021-03-18 12:02:02 +00:00
committed by GitHub
parent 9f8b6642e0
commit ef87a799a1
103 changed files with 204 additions and 252 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 626 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 475 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 731 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 709 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1021 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 773 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 786 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 980 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 365 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 691 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 568 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 773 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 744 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 908 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 833 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 928 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 826 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 753 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 768 KiB

@@ -1,26 +1,32 @@
<template>
<div
itemprop="publisher author"
itemtype="http://schema.org/Person"
itemscope
class="flex flex-row flex-wrap"
>
<span
<div class="flex flex-row flex-wrap">
<div
v-for="(piece, index) in resolvedAuthorName"
:key="piece"
itemprop="name"
class="flex flex-row"
itemprop="publisher author"
itemtype="http://schema.org/Person"
itemscope
class="flex flex-row flex-wrap"
>
<span :class="computedClassName" @click="handleAuthorClick(piece)">
{{ piece }}
<span itemprop="name" class="flex flex-row">
<router-link
:to="{ path: $localePath, query: { author: piece.trim() } }"
>
<span
:class="computedClassName"
@click="handleAuthorClick(piece.trim())"
>
{{ piece }}
</span>
</router-link>
<span>{{
resolvedAuthorName.length !== 1 &&
index !== resolvedAuthorName.length - 1
? ',&nbsp;'
: ''
}}</span>
</span>
<span>{{
resolvedAuthorName.length !== 1 &&
index !== resolvedAuthorName.length - 1
? ',&nbsp;'
: ''
}}</span>
</span>
</div>
</div>
</template>
@@ -63,9 +69,7 @@ export default {
},
methods: {
handleAuthorClick(piece) {
if (!this.activeAuthor !== piece) {
this.$store.commit('appState/setActiveAuthor', piece)
}
this.$store.commit('appState/setActiveAuthor', piece)
},
},
}
@@ -6,12 +6,7 @@
<div class="grid grid-cols-1 md:grid-cols-2 pt-4">
<div class="flex flex-col md:pr-8">
<h1 class="type-h1">{{ title }}</h1>
<router-link
v-if="author && author.name"
:to="{ path: $localePath, query: { author: author.name } }"
>
<PostAuthor v-bind="author" light />
</router-link>
<PostAuthor v-bind="author" light />
<time
class="text-gray"
pubdate
+3 -1
View File
@@ -192,7 +192,9 @@ export default {
}
if (author) {
authorsArray.push(author.name.split(',').map((author) => author.trim()))
authorsArray.push(
author.name.split(/,|and|&/).map((author) => author.trim())
)
}
})
@@ -77,4 +77,8 @@
img {
margin: 0 auto;
}
img + span > .icon.outbound {
display: none;
}
}
+4 -1
View File
@@ -14,7 +14,10 @@ export const checkItem = ({
if (
activeAuthor &&
((author.name && !author.name.includes(decodeURI(activeAuthor))) ||
((author.name &&
!author.name
.toLowerCase()
.includes(decodeURI(activeAuthor.toLowerCase()))) ||
!author.name)
) {
return false
+1 -1
View File
@@ -25,7 +25,7 @@ One set of use cases for CRDTs is when nodes need to collaboratively write to a
In [this 10-minute video](https://www.youtube.com/watch?v=-kdx8rJd8rQ) I show you how we can use the [js-ipfs](https://github.com/ipfs/js-ipfs) library and conflict-free replicated data types (CRDTs) to build a simple text editor that allows several peers to collaborate in real-time. The resulting interactions between the nodes are conflict-free, support offline use, and allow nodes to come in and out of the network while continuously converging data to a single state in all the nodes.
[![https://www.youtube.com/watch?v=-kdx8rJd8rQ](https://user-images.githubusercontent.com/1211152/28122513-4cbdaabc-6716-11e7-8626-ad8154687fe1.png)](https://www.youtube.com/watch?v=-kdx8rJd8rQ)
[![https://www.youtube.com/watch?v=-kdx8rJd8rQ](/ipfs-using-crdt.png)](https://www.youtube.com/watch?v=-kdx8rJd8rQ)
## Final remarks
+1 -1
View File
@@ -101,7 +101,7 @@ If you run into any hurdles, please open an issue on [ipfs/js-ipfs/issues](https
I'm glad you asked!
![](https://camo.githubusercontent.com/2820cc493393fa993bef64b044c6d3ce1d4b56a4/68747470733a2f2f63646e2e7261776769742e636f6d2f6a62656e65742f636f6e747269627574652d697066732d6769662f6d61737465722f696d672f636f6e747269627574652e676966)
![](/contribute-to-ipfs.gif)
We keep curating and updating our [Waffle Board](https://waffle.io/ipfs/js-ipfs) to ensure it signals what is actively being worked on and what is next. We also review issues and tag them with difficulty and a [`help wanted`](https://waffle.io/ipfs/js-ipfs?search=help%20wanted) label, so that it is easy to find place where you can contribute to the project.
+4 -4
View File
@@ -49,7 +49,7 @@ Power users can provide own config (eg. to enable experimental pubsub) via _Pref
**Note:** The embedded node _does not run_ when external node is selected.
Every time you switch back to the embedded node, a new instance is created
on-demand. It can take [a few seconds](https://user-images.githubusercontent.com/157609/38493690-4a77bd9e-3bf3-11e8-85da-ba06fd94cdbf.gif)
on-demand. It can take [a few seconds](/embedded-js-ipfs.gif)
for a brand-new node to find peers.
### …and more!
@@ -58,9 +58,9 @@ For a longer walkthrough of new features see [Release Notes for v2.2.0](https://
# Install it today!
| Firefox | Chrome / Chromium |
| ------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [![Get the add-on](https://ipfs.io/ipfs/QmSX44XockQifmxE8Wdevkaa6vaqTXtGdH9t9aHWXZkuJq)](https://addons.mozilla.org/addon/ipfs-companion/) | [![Install](https://ipfs.io/ipfs/QmPinSJKFYCMuTDh484dLk5Av4HpZRzBRR1KPv7TM7CBVF)](https://chrome.google.com/webstore/detail/ipfs-companion/nibjojkomfdiaoajekhjakgkdhaomnch) |
| Firefox | Chrome / Chromium |
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
| [![Get the add-on](/firefox-add-on.png)](https://addons.mozilla.org/addon/ipfs-companion/) | [![Install](/chrome-web-store.png)](https://chrome.google.com/webstore/detail/ipfs-companion/nibjojkomfdiaoajekhjakgkdhaomnch) |
# Want to contribute?
+4 -4
View File
@@ -27,11 +27,11 @@ The IPFS Web UI has been given a HUGE revamp and is now 10x, no, 100x better tha
- See all of your **connected peers**, geolocated by their IP address
- **Review the settings** for your IPFS node, and update them to better suit your needs
![Screenshot of the status page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-status.png)
![Screenshot of the status page](/ipfs-webui-status.png)
| Files | Explore | Peers | Settings |
| ----------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| ![Screenshot of the file browser page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-files.png) | ![Screenshot of the IPLD explorer page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-explore.png) | ![Screenshot of the swarm peers map](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-peers.png) | ![Screenshot of the settings page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-settings.png) |
| Files | Explore | Peers | Settings |
| ------------------------------------------------------------- | ---------------------------------------------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------ |
| ![Screenshot of the file browser page](/ipfs-webui-files.png) | ![Screenshot of the IPLD explorer page](/ipfs-webui-explore.png) | ![Screenshot of the swarm peers map](/ipfs-webui-peers.png) | ![Screenshot of the settings page](/ipfs-webui-settings.png) |
## 🛠 CID tool
+4 -4
View File
@@ -169,11 +169,11 @@ This release includes the latest, very shiny [updated webui](https://github.com/
installing go-ipfs and visiting http://localhost:5001/webui. It deserves its own release note - oh look, it [got
one](/51-js-ipfs-0-33/#web-ui-2-0)! Here's a peek:
![Screenshot of the status page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-status.png)
![Screenshot of the status page](/ipfs-webui-status.png)
| Files | Explore | Peers | Settings |
| ----------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| ![Screenshot of the file browser page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-files.png) | ![Screenshot of the IPLD explorer page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-explore.png) | ![Screenshot of the swarm peers map](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-peers.png) | ![Screenshot of the settings page](https://raw.githubusercontent.com/ipfs-shipyard/ipfs-webui/master/docs/screenshots/ipfs-webui-settings.png) |
| Files | Explore | Peers | Settings |
| ------------------------------------------------------------- | ---------------------------------------------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------ |
| ![Screenshot of the file browser page](/ipfs-webui-files.png) | ![Screenshot of the IPLD explorer page](/ipfs-webui-explore.png) | ![Screenshot of the swarm peers map](/ipfs-webui-peers.png) | ![Screenshot of the settings page](/ipfs-webui-settings.png) |
Kudos and thanks to the webui team! 👏
+2 -6
View File
@@ -16,11 +16,7 @@ tags:
<br/>
<div align="center">
<a href="https://camp.ipfs.io">
<img src="https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4/"></img>
</a>
</div>
[![](/ipfs-camp-2019.png)](https://camp.ipfs.io)
<br/>
@@ -28,7 +24,7 @@ The Camp will bring together the Core Developers and Contributors to the IPFS pr
Join us on 27-30th June at the beautiful Campus La Mola in Barcelona for an action-packed program of workshops, talks and deep dives on everything IPFS.
![](https://ipfs.io/ipfs/QmUiucP3oRVnqvuM6hnrF9D5H6tRSeVhyWk6ggkhf4ebEH)
![](/ipfs-camp-2019-campus.jpeg)
Registration is a 2-step process. The 1st step is an application were you can tell us why you are excited to attend the camp and what you would like to share with the other attendees. The next step is a review and selection of the best applications by the IPFS team. If youre application is selected well send you a link to register by April 30th. IPFS Camp is limited to 150 hackers.
+2 -2
View File
@@ -11,11 +11,11 @@ tags:
- 'libp2p'
---
![](https://ipfs.io/ipfs/QmQnUstaKTPA92XAkCj2cxBACX1nMyfjYeTHSawejGxASW)
![](/ipfs-devs-meeting-july-2018.png)
Last July we hosted the first ever IPFS and Libp2p developer meetings to bring together a small group of core developers and major users of the protocols. They were a huge success! We are incredibly thankful for everyone's participation, energy, enthusiasm - and for sharing their knowledge with the whole group.
![](https://media.giphy.com/media/iCivRRnqS1SsadMjme/giphy.gif)
![](/devs-meeting-july-2018-group.gif)
The week was great for core developers, contributors and researchers to spend time together diving deep on open design problems, demoing exciting new tools and products being built on or around IPFS and Libp2p, and exploring the path forward for the protocols and working groups. Check out the [jam-packed schedule](https://developersmeetingsberlin2018.sched.com/) to see what we discussed.
+7 -7
View File
@@ -20,7 +20,7 @@ If you aren't familiar with the [InterPlanetary Space Training Camp](https://cam
> Specialized and focused trainings on building for the DWeb.
![](https://user-images.githubusercontent.com/618519/60863680-52754080-a1d6-11e9-84f2-b38fab97c8f3.png)
![](/core-elective-courses.png)
Catch up on all the recordings and materials at 📼 👩🏽‍🏫 [https://github.com/ipfs/camp#-core--elective-courses](https://github.com/ipfs/camp#-core--elective-courses)
@@ -28,7 +28,7 @@ Catch up on all the recordings and materials at 📼 👩🏽‍🏫 [https://gi
> Collaborate in Groups to understand, explain and present how multiple parts of the DWeb Stack work
![](https://user-images.githubusercontent.com/618519/60864383-4c805f00-a1d8-11e9-963d-0146b85b0353.png)
![](/poster-projects.png)
Catch up on all the recordings & notes at 📼 📒 [https://github.com/ipfs/camp#-poster-projects](https://github.com/ipfs/camp#-poster-projects)
@@ -36,13 +36,13 @@ Catch up on all the recordings & notes at 📼 📒 [https://github.com/ipfs/cam
> Form small teams to understand, research and come up with solutions to one of the many open problems
![](https://user-images.githubusercontent.com/618519/60865105-2b207280-a1da-11e9-9046-d38af5543ba2.png)
![](/deep-dives.png)
Catch up on all the recordings & notes at 📼 📒 [https://github.com/ipfs/camp#-deep-dives](https://github.com/ipfs/camp#-deep-dives)
#### [**⚡️ Lightning Talks**](https://github.com/ipfs/camp#%EF%B8%8F-lightning-talks) - Learn what is the latest from multiple projects in the IPFS ecosystem
![](https://user-images.githubusercontent.com/618519/60863676-5012e680-a1d6-11e9-9775-2a8fc1b014a3.png)
![](/lightning-talks.png)
Catch up on all the recordings at 📼 [https://github.com/ipfs/camp#%EF%B8%8F-lightning-talks](https://github.com/ipfs/camp#%EF%B8%8F-lightning-talks)
@@ -50,7 +50,7 @@ Catch up on all the recordings at 📼 [https://github.com/ipfs/camp#%EF%B8%8F-l
> Get blown away by huge Sci-Fi experiments, soon to be seen in a Network close to you
![](https://user-images.githubusercontent.com/618519/60863667-4db08c80-a1d6-11e9-9c9b-cf153977ac7f.png)
![](/sci-fi-fair.png)
Catch up on all the interviews at 📼 [https://github.com/ipfs/camp#-sci-fi-fair](https://github.com/ipfs/camp#-sci-fi-fair)
@@ -58,7 +58,7 @@ Catch up on all the interviews at 📼 [https://github.com/ipfs/camp#-sci-fi-fai
> Gather folks around shared topics of interest and discuss collaborations.
![](https://user-images.githubusercontent.com/618519/60865107-2cea3600-a1da-11e9-9287-22587bfdf9cd.png)
![](/unconf.png)
Catch up on all the artefacts at 📒 [https://github.com/ipfs/camp#-unconf](https://github.com/ipfs/camp#-unconf)
@@ -77,7 +77,7 @@ Last, but definitely not the least, a huge THANK YOU ❤️ to everyone that con
- An outstanding [Production Team](https://camp.ipfs.io/team) that created the phenomenal experience for everyone
- The over 4000 IPFS Community members that have been building this project with us since the beginning
[![](https://media.giphy.com/media/mGW5xq4SwlqnSTxwtb/giphy.gif)](/050-ipfs-camp-recap-gif.gif)
![](/050-ipfs-camp-recap-gif.gif)
On behalf of the whole IPFS Project, thank you all for being part of this project and community, such an ambitious goal couldn't be achieved without all your energy, passion and dedication to make it happen. Onwards!
+1 -1
View File
@@ -11,7 +11,7 @@ tags:
**go-ipfs is introducing a new release cycle and process to ensure more reliable and frequent releases!**
![go-ipfs-release-process-illustration](https://user-images.githubusercontent.com/618519/62986422-653fee00-bdf0-11e9-8f61-197117b61da2.png)
![go-ipfs-release-process-illustration](/go-ipfs-release-process.png)
IPFS is growing and maturing. We're seeing many more users in our network and
have recognised the need to level up our release process to deliver a more
+1 -1
View File
@@ -11,7 +11,7 @@ tags:
IPFS is growing! This year we've grown immensely in network size, number of apps building with IPFS, number of end-users of IPFS-powered apps, and the number of developers contributing to the codebase.
![ecosystem diagram edited](https://user-images.githubusercontent.com/618519/62986295-b8657100-bdef-11e9-9d0b-db7a08568d15.png)
![ecosystem diagram edited](/ecosystem-diagram.png)
Along with that growth, we've also experienced some challenges:
@@ -18,13 +18,13 @@ We kicked off our time together with a [Welcome from David Dias](https://www.you
### Why IPFS? -- Juan Benet
[![Screen Shot 2019-09-30 at 6 19 45 PM](https://user-images.githubusercontent.com/618519/65927657-6e404b00-e3af-11e9-97f7-4ef38ed31de6.png)](https://www.youtube.com/watch?v=zE_WSLbqqvo&feature=youtu.be)
[![Screen Shot 2019-09-30 at 6 19 45 PM](/why-ipfs-juan-benet.png)](https://www.youtube.com/watch?v=zE_WSLbqqvo&feature=youtu.be)
Juan Benet, the original creator of IPFS, used [his keynote on "Why IPFS?"](https://www.youtube.com/watch?v=zE_WSLbqqvo&feature=youtu.be) to help attendees zoom out to the wider context around our moment in time, how technology is evolving, and how IPFS fits into the bigger picture. He described the history of the internet, some potential predictions about the future, and how IPFS can address some major problems in the web as it exists today (notably censorship, inefficiency, and poor offline usability). Persistence, innovation, and determination are required to ensure we continue making progress for the long haul!
### IPFS Ecosystem Progress Report - Molly Mackinlay
[![Screen Shot 2019-09-30 at 6 19 33 PM](https://user-images.githubusercontent.com/618519/65927659-700a0e80-e3af-11e9-9282-5c405c4ace1c.png)](https://www.youtube.com/watch?v=jpQnQbfhuBc&feature=youtu.be)
[![Screen Shot 2019-09-30 at 6 19 33 PM](/ipfs-ecosystem-molly-mackinlay.png)](https://www.youtube.com/watch?v=jpQnQbfhuBc&feature=youtu.be)
Want to learn about how the IPFS Community and Ecosystem have been growing? [This video](https://www.youtube.com/watch?v=jpQnQbfhuBc&feature=youtu.be) from Molly Mackinlay, IPFS Project Lead, is a great overview of the scale, progress, and important milestones IPFS has achieved so far in 2019. IPFS-powered apps and tools now reach **millions of monthly end users**, and _hundreds of thousands of nodes_ participate in the public IPFS network daily!
@@ -36,7 +36,7 @@ To close, Juan set us back out through the airlock back toward Earth with his [I
### Recap
[![Screen Shot 2019-10-02 at 7 44 37 PM](https://user-images.githubusercontent.com/618519/66095633-163f4b00-e54d-11e9-9963-bd68c23742d6.png)](https://youtu.be/cQJXnJDbXv4)
[![Screen Shot 2019-10-02 at 7 44 37 PM](/ipfs-camp-2019-recap.png)](https://youtu.be/cQJXnJDbXv4)
Curious how everything fit together, or want to understand how the pieces of IPFS Camp became a greater whole? Check out [this overview from Molly](https://youtu.be/cQJXnJDbXv4) on how different components like the Poster Sessions & Deep Dives, SciFi Fair, Lightning Talks, and the Core & Elective Courses, wove together into a great community event. Many connections between different attendees and projects emerged from IPFS Camp too - spurring new collaborations and integrations. These great recaps from [Textile](https://medium.com/textileio/ipfs-camp-2019-the-highlights-and-takeaways-2b3cb4f42513), [Berty](https://berty.tech/blog/ipfs-camp/), and of course [the IPFS blog](https://blog.ipfs.io/2019-07-08-ipfs-camp-recap/) highlight a few!
@@ -46,13 +46,13 @@ IPFS Camp was all about sharing and forming connections between projects and ind
### Netflix Containers - Edgar Lee
[![Screen Shot 2019-09-30 at 5 23 20 PM](https://user-images.githubusercontent.com/618519/65925910-890ec180-e3a7-11e9-8eb9-b632a4d3c146.png)](https://youtu.be/wNfk05D887M)
[![Screen Shot 2019-09-30 at 5 23 20 PM](/netflix-containers-edgar-lee.png)](https://youtu.be/wNfk05D887M)
In [this interview](https://youtu.be/wNfk05D887M), we heard from Edgar about how he's exploring distributing container layers through IPFS, and how it's changing his workflow at Netflix. His work on [p2plab](https://github.com/Netflix/p2plab) is already helping benchmark (and improve!!) IPFS throughput in reproducible and quantifiable ways.
### Audius - Hareesh Nagaraj
[![Screen Shot 2019-09-30 at 5 32 15 PM](https://user-images.githubusercontent.com/618519/65926083-439ec400-e3a8-11e9-9b5b-c40f118e3258.png)](https://youtu.be/3pSV6ai6QUI)
[![Screen Shot 2019-09-30 at 5 32 15 PM](/audius-hareesh-nagaraj.png)](https://youtu.be/3pSV6ai6QUI)
We [spoke](https://youtu.be/3pSV6ai6QUI) to Hareesh from [Audius](https://audius.co/), a decentralized music streaming platform, about how they're using IPFS as their primary file storing system. Check out their recent [launch blog post](https://techcrunch.com/2019/09/24/audius-music/) to learn more.
+1 -1
View File
@@ -12,7 +12,7 @@ tags:
The title says it all. Learn how to use [go-ipfs as a library with the new tutorial](https://github.com/ipfs/go-ipfs/tree/master/docs/examples/go-ipfs-as-a-library) and take full advantage of the [go-ipfs Core API](https://godoc.org/github.com/ipfs/interface-go-ipfs-core).
![](https://ipfs.io/ipfs/QmWgSVDmVDCPcf8zMHzXJTnDf6SFf9FpWXGDpXMozaBgQ6/go-ipfs-as-a-library.gif)
![](/go-ipfs-as-a-library.gif)
Let us know what you think by opening a topic with your questions and feedback at https://discuss.ipfs.io.
@@ -48,7 +48,7 @@ If you'd like to dig a little deeper, we recommend checking out the **Understand
Watch the recording below or check out the [slides](https://github.com/ipfs/camp/blob/master/CORE_AND_ELECTIVE_COURSES/CORE_COURSE_A/IPFS_Camp_Core_Course_A_Slides.pdf)!
[![Video: Understanding How IPFS Deals with Files](/img/057-ipfs-camp-course-videos/core-a-thumbnail.png)](https://youtu.be/Z5zNPwMDYGg)
[![Video: Understanding How IPFS Deals with Files](/core-a-thumbnail.png)](https://youtu.be/Z5zNPwMDYGg)
_Video: [Understanding How IPFS Deals with Files](https://youtu.be/Z5zNPwMDYGg)_
+1 -1
View File
@@ -10,7 +10,7 @@ tags:
- 'community'
---
![IPFS at ETHDenver 2020](https://user-images.githubusercontent.com/50103/73981264-bbe13d00-48e6-11ea-8446-033257df44bc.png)
![IPFS at ETHDenver 2020](/ipfs-ethdenver-2020.png)
Next week, the IPFS team will be heading to Denver, Colorado for [ETHDenver](https://www.ethdenver.com/), one of the biggest Ethereum and decentralized web developer-focused events in the US. Were very excited to connect with the dweb community during a week full of presentations, workshops, [#BUIDLathon](https://www.ethdenver.com/buidlweek/)-ing, and community gathering.
+5 -10
View File
@@ -24,7 +24,7 @@ Its a new year, and with it time to update the [IPFS Project Roadmap](https:/
- **Millions of users** access the IPFS HTTP Gateway every week 🎉
- There are **hundreds of dapps, tools, & projects** in the wider IPFS Ecosystem including newcomers like [Anytype](https://anytype.io/), [Microsoft ION](https://techcommunity.microsoft.com/t5/azure-active-directory-identity/toward-scalable-decentralized-identifier-systems/ba-p/560168), [Haven](https://gethaven.app/) by OB1, [Brave](https://brave.com/), [3box](https://3box.io/), [EthDNS](https://medium.com/the-ethereum-name-service/ethdns-9d56298fa38a) and more!! 🙌
![IPFS Ecosystem Diagram](https://user-images.githubusercontent.com/618519/74373908-3819cb80-4d92-11ea-816a-1b6f04002b4c.png)
![IPFS Ecosystem Diagram](/ipfs-ecosystem-diagram.png)
See our [Ecosystem Update from IPFS Camp](https://www.youtube.com/watch?v=jpQnQbfhuBc&feature=youtu.be) to learn more about 2019 adoption!
This growth caused us to shift some of our attention midyear to support new usage and demand - re-focusing some of our working groups on improving documentation, gateway performance, and testing tools to validate large-scale network upgrades (see our [Operation Task-Force blog post](https://blog.ipfs.io/2019-07-31-operation-task-force/) for details). We still made progress on our Package Managers goal, but less than we hoped given **also** investing heavily in other critical areas to support the ecosystem. 🤞
@@ -51,9 +51,8 @@ Our Package Managers goal also helped focus our user research, quarterly objecti
We also formed collaborations with IPFS users to partner on improving IPFS for package management use cases. One of our main collaborations was with [Netflix](https://netflix.com) to optimize the speed of fetching large container images with [Bitswap](https://github.com/ipfs/go-bitswap), our peer-to-peer data transfer algorithm. You can read more about that specific collaboration—and the resulting improvements in Bitswap performance!—in our [new blog post](/2020-02-14-improved-bitswap-for-container-distribution/)!
<p align="center">
<img width="400" alt="5ms-1024MB" src="https://user-images.githubusercontent.com/169124/73398685-ef531480-42b3-11ea-8054-d572abf7eea1.png"><img width="400" alt="5ms-40MB" src="https://user-images.githubusercontent.com/169124/73398687-ef531480-42b3-11ea-930f-d63afee8e465.png">
</p>
![5ms-1024mb](/5ms-1024MB.png =400x)
![5ms-40mb](/5ms-40MB.png =400x)
IPFS Cluster also released _[collaborative clusters](https://blog.ipfs.io/2020-01-09-collaborative-clusters/)_, a new feature to enable package manager maintainers and mirrors to add and replicate repositories across a community of IPFS nodes. With collaborative clusters, any maintainer can push new updates to the pinset of data to mirror, which is then sharded and syncd across all mirroring nodes. Weve already seen package managers like Pac-Man added to collaborative clusters along with many “data package managers” like Wikipedia and Project Gutenberg, [follow these instructions to add your own!](https://collab.ipfscluster.io/)
@@ -75,7 +74,7 @@ We got [**11** awesome proposals](https://github.com/ipfs/roadmap/issues), with
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Blown away by all the great <a href="https://twitter.com/IPFSbot?ref_src=twsrc%5Etfw">@IPFSbot</a> 2020 Theme suggestions! I love this community so much 🥰 - extra inspired today looking at all the amazing paths ahead of us to make humanitys knowledge &amp; tools more accessible, resilient, and empowering! 🤩 🚀<a href="https://t.co/MbNS0q8mlC">https://t.co/MbNS0q8mlC</a> <a href="https://t.co/WTg03R5iPa">pic.twitter.com/WTg03R5iPa</a></p>&mdash; Molly (@momack28) <a href="https://twitter.com/momack28/status/1193400070625824768?ref_src=twsrc%5Etfw">November 10, 2019</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</p>
During our IPFS Planning “Spike”, we took stock of our wider ecosystem and project health. We synthesized feedback from [top IPFS users](https://user-images.githubusercontent.com/618519/69945610-c58d9500-149e-11ea-9be8-7429c4d9a201.png), sourcing many ideas and needs from the core needs & gaps section of each 2020 Theme Proposal. We also reflected on the biggest pain points and risks to the IPFS Projects long term goals and mission to refocus on our north star. Looking at the skills and capacity of our core working groups, we created a set of [decision-making criteria](https://github.com/ipfs/roadmap#2020-h1-priority-selection-criteria) to identify where to allocate this subset of IPFS contributors for maximum impact, expanded on a set of top candidates (sourced both from the 2020 theme proposals and the exploration of wider project pain points), and ultimately made a decision.
During our IPFS Planning “Spike”, we took stock of our wider ecosystem and project health. We synthesized feedback from [top IPFS users](/top-ipfs-users.png), sourcing many ideas and needs from the core needs & gaps section of each 2020 Theme Proposal. We also reflected on the biggest pain points and risks to the IPFS Projects long term goals and mission to refocus on our north star. Looking at the skills and capacity of our core working groups, we created a set of [decision-making criteria](https://github.com/ipfs/roadmap#2020-h1-priority-selection-criteria) to identify where to allocate this subset of IPFS contributors for maximum impact, expanded on a set of top candidates (sourced both from the 2020 theme proposals and the exploration of wider project pain points), and ultimately made a decision.
### 2020 Focus: Improving Content Routing
@@ -85,11 +84,7 @@ During our IPFS Planning “Spike”, we took stock of our wider ecosystem and p
To achieve this goal, weve formed a Content Routing team (and spun down our Package Managers working group) to focus our main engineering effort on this problem for the next 6 months. Improving content routing performance requires making improvements and bugfixes to the go-libp2p DHT _at scale_, and changing how we form, query, and resolve content in the IPFS network to be faster and more resilient. This involves a combination of research, design, implementation, and testing. Making changes to the _configuration of the entire network_ is non-trivial, which is why weve been investing in the [InterPlanetary Testground](https://github.com/ipfs/testground/), a new set of tools for testing next generation P2P applications, to help us diagnose issues and evaluate improvements prior to rolling out upgrades to the entire public network. You can follow along with the team's work in the [Content Routing ZenHub Roadmap](https://app.zenhub.com/workspaces/content-routing-2020-5e29be25ab9d8da0b032cfcc/roadmap):
<p align="center">
<a href="https://app.zenhub.com/workspaces/content-routing-2020-5e29be25ab9d8da0b032cfcc/roadmap">
<img width="600" alt="Screen Shot 2020-02-10 at 8 08 00 PM" src="https://user-images.githubusercontent.com/618519/74210567-0fce8780-4c41-11ea-892c-a49657adc76d.png">
</a>
</p>
[![2020-roadmap](/2020-roadmap.png)](https://app.zenhub.com/workspaces/content-routing-2020-5e29be25ab9d8da0b032cfcc/roadmap)
We considered a number of other potential goals—especially all the great [2020 Theme Proposals](https://github.com/ipfs/roadmap/issues/)—before selecting this priority. However, we decided it was more important to focus core working group development time on the main blockers and pain points to enable the entire ecosystem to grow and succeed. Many of our theme proposals are actually very well suited for community ownership via [DevGrants](https://github.com/ipfs/devgrants) and collaborations. Some of them, like [“IPFS in Rust”](https://github.com/ipfs/roadmap/issues/54) and [“Examples and Tutorials”](https://github.com/ipfs/roadmap/issues/50), already have grants or bounties associated with them, and community teams actively pushing forward! 🙌
+9 -20
View File
@@ -15,17 +15,13 @@ Web 2.0 services increasingly depend on large scale computing infrastructure to
After [IPFS Camp 2019](https://camp.ipfs.io/), Netflix and IPFS began collaborating on ways to incorporate peer-to-peer services into Netflix's developer tooling. Together, we figured out a way to leverage IPFS to speed up cloud builds, designing and testing solutions for faster Continuous Integration (CI) pipelines powered by efficient p2p container image distribution.
<p align="center">
<a href="https://youtu.be/wNfk05D887M">
<img width="700" src="https://user-images.githubusercontent.com/618519/65925910-890ec180-e3a7-11e9-8eb9-b632a4d3c146.png">
</a>
</p>
[![](/netflix-containers-edgar-lee.png =700x)](https://youtu.be/wNfk05D887M)
As part of this collaboration, we made big improvements over the last two quarters to [Bitswap](https://github.com/ipfs/go-bitswap), the mechanism IPFS uses to transfer pieces of a file between two or more peers. A key factor enabling this improvement was [p2plab](https://github.com/Netflix/p2plab) - a performance benchmarking tool created by Netflix to run reproducible tests - allowing us to target and measure improvements. Our specific focus was a container distribution challenge Netflix wanted to address: how to efficiently pull container images in a large scale, multi-region environment. Image layers often reside in different regions. Leveraging IPFS as a peer-to-peer CDN lets nodes inside Netflixs infrastructure collaborate and seed common pieces to neighboring nodes, helping make container distribution faster.
To speed this up even more, we added some useful new capabilities to the Bitswap protocol which cut transfer time **in half** for benchmarked use cases around container distribution. In the previous version of Bitswap, it took on average 9.08 seconds to pull a 300 MiB image to 32 leeching peers. The optimized branch brought this down to 3.16 seconds -- 20% faster than DockerHub (3.93 seconds)! When the number of leeching peers exceed the seeders, we observed that pieces downloaded by leechers are reseeded, reducing the contention on the seeding peers.
![container_image_benchmark](https://user-images.githubusercontent.com/618519/73900782-aa942400-4845-11ea-8643-83c504750b35.png)
![container_image_benchmark](/container-image-benchmark.png)
## How Bitswap works
@@ -41,11 +37,7 @@ In order to improve Bitswap performance and efficiency, the IPFS team made some
Initially a node wants to know which of its peers have the root block, but doesnt actually want to receive the block itself (because it sends this “discovery” want to many peers). So one new change is that when Bitswap sends a want it can ask for a HAVE message in response (instead of getting back the whole block).
<p align="center">
<a href="https://docs.google.com/presentation/d/1mbFFGIIKNvboHyLn-k26egOSWkt9nXjlNbxpmCEQfqQ/edit#slide=id.g41cabeb941_0_1376">
<img width="600" src="https://user-images.githubusercontent.com/618519/73968417-83ce0000-48ce-11ea-975a-446cab977844.png">
</a>
</p>
[![](/p2p-image-distribution.png =600x)](https://docs.google.com/presentation/d/1mbFFGIIKNvboHyLn-k26egOSWkt9nXjlNbxpmCEQfqQ/edit#slide=id.g41cabeb941_0_1376)
Once a node has added peers to the session, it can also use these HAVE messages to figure out which of the session peers have the rest of the blocks it needs relatively cheaply, because it doesnt have to worry about duplicate blocks. At this stage the node also wants the peer to say if it doesnt have the block. So we added a DONT_HAVE response.
@@ -55,9 +47,10 @@ The node can also quickly recognize when all the peers in a session dont have
For more details on how Bitswap worked before ("master"), and the changes weve made ("poc"), check out [these slides](https://docs.google.com/presentation/d/1mbFFGIIKNvboHyLn-k26egOSWkt9nXjlNbxpmCEQfqQ), this [presentation at the IPFS Weekly Call](https://www.youtube.com/watch?v=G_Q7iTpwYQU), and [this recent performance comparison](https://github.com/ipfs/go-ipfs/issues/6782#issuecomment-579973116).
<p align="center">
<img width="400" alt="5ms-1024MB" src="https://user-images.githubusercontent.com/169124/73398685-ef531480-42b3-11ea-8054-d572abf7eea1.png"><img width="400" alt="5ms-160MB" src="https://user-images.githubusercontent.com/169124/73398686-ef531480-42b3-11ea-9b43-d978dc9c8e5d.png"><img width="400" alt="5ms-40MB" src="https://user-images.githubusercontent.com/169124/73398687-ef531480-42b3-11ea-930f-d63afee8e465.png"><img width="400" alt="5ms-20MB" src="https://user-images.githubusercontent.com/169124/73398688-efebab00-42b3-11ea-93c4-27509ec95315.png">
</p>
![5ms-1024MB](/5ms-1024MB.png =400x)
![5ms-160MB](/5ms-160MB.png =400x)
![5ms-40MB](/5ms-40MB.png =400x)
![5ms-20MB](/5ms-20MB.png =400x)
## Container distribution at Netflix
@@ -67,7 +60,7 @@ The docker registry is designed to decouple the notion of what an image referenc
## p2plab
[![image](https://user-images.githubusercontent.com/618519/73901452-abc65080-4847-11ea-992c-b4b3690c3206.png)](https://github.com/Netflix/p2plab)
[![image](/p2plab.png)](https://github.com/Netflix/p2plab)
Netflix infrastructure is deployed on Amazon Web Services (AWS) across multiple availability zones and regions around the world. In order to emulate that kind of environment, [p2plab](https://github.com/Netflix/p2plab) was created to measure the throughput of data transfer on the IPFS network in multi-region clusters. Using p2plab, we can reliably determine whether a change in IPFS will improve performance. An operator is able to provision live clusters with cluster definitions and benchmark a data transfer scenario with scenario definitions. Nodes in a p2plab cluster can also hot swap the IPFS binary under test, allowing Protocol Labs and Netflix engineers to quickly test a branch of an IPFS component like bitswap.
@@ -75,11 +68,7 @@ Once a benchmark has completed, we can extract metrics from libp2p and bitswap t
An in-memory driver for p2plab is also available. Head over to [the repository](https://github.com/Netflix/p2plab) and try it out today on your local system!
<p align="center">
<a href="https://asciinema.org/a/264008">
<img width="500" src="https://asciinema.org/a/264008.svg">
</a>
</p>
[![](https://asciinema.org/a/264008.svg =500x)](https://asciinema.org/a/264008)
## Next steps
@@ -34,7 +34,7 @@ If youd like to dig a little deeper into CIDs via video, we recommend checkin
Watch the recording below or check out the [slides](https://github.com/ipfs/camp/blob/master/CORE_AND_ELECTIVE_COURSES/CORE_COURSE_A/IPFS_Camp_Core_Course_A_Slides.pdf)!
[![Video: Understanding How IPFS Deals with Files](/img/057-ipfs-camp-course-videos/core-a-thumbnail.png)](https://youtu.be/Z5zNPwMDYGg)
[![Video: Understanding How IPFS Deals with Files](/core-a-thumbnail.png)](https://youtu.be/Z5zNPwMDYGg)
_Video: [Understanding How IPFS Deals with Files](https://youtu.be/Z5zNPwMDYGg)_
+2 -4
View File
@@ -10,9 +10,7 @@ tags:
- 'community'
---
<p align="center">
<img src="https://github.com/rs-ipfs/logo/raw/master/rust-ipfs-logo-256w.png">
</p>
![](https://github.com/rs-ipfs/logo/raw/master/rust-ipfs-logo-256w.png)
Calling all rustaceans, rustafarians, ferrosities, and rustlers - weve got an exciting update!
Active full time work on a Rust-IPFS implementation has commenced, building on the great work by
@@ -45,7 +43,7 @@ Instead of forking and/or starting fresh, this project aims to support and build
## What can be expected, and when?
![Rust IPFS Timeline](https://gateway.ipfs.io/ipfs/QmU7sssvo52Rrwj7MWZNpeHnFjjdG271Dx5zfGkZSbgVnN)
![Rust IPFS Timeline](/rust-ipfs-timeline.png)
As you can see in the [Rust-IPFS DevGrant Roadmap](https://github.com/ipfs/devgrants/tree/master/open-grants/ipfs-rust) implementation work
takes place mostly over early Q2 2020 and covers the use case of **IPLD applications**,
@@ -20,13 +20,13 @@ A short summary of the findings is below. You can read the full findings and det
We surveyed the two most used mobile browsers, Androids Chrome and iOSs Safari. Neither of these browsers has native P2P capabilities, but we surveyed them to understand mobile users first stop on the internet and how they may think about sharing to and from there.
![Google Android sharing photo interaction](https://raw.githubusercontent.com/ipfs/mobile-design-guidelines/master/.gitbook/assets/android-chrome-share.png)
![Google Android sharing photo interaction](/android-chrome-share.png)
Mobile sharing of files is a very common activity for all ranges of users, but the type of file shared varies from the desktop. We chose sharing photos as an interaction to study on both Android and iOS. This was to understand clearly how mobile users experience getting a file from their phone to another device.
We then tested a variety of publicly released mobile P2P apps. This was to understand previous approaches to designing and developing mobile P2P applications. The applications explored in the survey were spread across three main areas of use: messaging, posting and community boards. From this we learned which features, interface components, and design patterns are currently used in designing for P2P on mobile, to inform future designs for IPFS.
![Status.im's key recovery process](https://raw.githubusercontent.com/ipfs/mobile-design-guidelines/master/.gitbook/assets/status-recover.png)
![Status.im's key recovery process](/status-recover.png)
After in-depth review, we found many intriguing approaches to several shared core areas:
+1 -3
View File
@@ -14,9 +14,7 @@ tags:
- 'project planning'
---
<p align="center">
<img width="100%" src="/093-ipfs-pinning-summit-recap-header-image.png">
</p>
![](/093-ipfs-pinning-summit-recap-header-image.png)
The first-ever [IPFS Pinning Summit](https://ipfspinningsummit.com/) brought together [IPFS pinning services](https://docs.ipfs.io/guides/concepts/pinning/), infra providers, and users for 2 days of presentations & meetings to discuss the current state of IPFS infrastructure, services, and tools - and the future opportunities in this space.
+3 -9
View File
@@ -11,9 +11,7 @@ tags:
- 'Gossipsub'
---
<p style="max-width:780px;margin-left:auto;margin-right:auto;">
<img src="/094-gossipsub-v1.1-header-image+grid.jpeg">
</p>
![](/094-gossipsub-v1.1-header-image+grid.jpeg =780x)
The gossip youve heard on the streets is correct, Gossipsub v1.1 is here and it packs several security hardening extensions along with new testing, documentation, and an updated specification.
@@ -49,9 +47,7 @@ Additionally, with the new release, the [reference implementation of Gossipsub](
Weve prepared a brand new example for you to give the latest Gossipsub a try. In this example, you get to experiment with a chat application powered by libp2p. It will enable you to join different channels by subscribing to PubSub topics and see other peers joining the room as they subscribe to the topic.
<p style="max-width:780px;margin-left:auto;margin-right:auto;">
<img src="https://raw.githubusercontent.com/libp2p/go-libp2p-examples/master/pubsub/chat/chat-example.gif">
</p>
![](/chat-example.gif =780x)
You can find the code for this example at https://github.com/libp2p/go-libp2p-examples/tree/master/pubsub/chat
@@ -59,9 +55,7 @@ You can find the code for this example at https://github.com/libp2p/go-libp2p-ex
We are also releasing a brand new libp2p Test Plan that uses [Testground](https://github.com/testground/testground) to benchmark Gossipsub v1.1.
<p style="max-width:780px;margin-left:auto;margin-right:auto;">
<img src="/img/gossipsubv1.1-jupyter.gif">
</p>
![](/gossipsubv1.1-jupyter.gif =780x)
With this Test Plan, you can run an emulation (yes, it will run real Gossipsub nodes!) of a Gossipsub Network in which you can adjust:
+3 -9
View File
@@ -11,9 +11,7 @@ tags:
- 'Testground'
---
<p style="max-width:1000px;margin-left:auto;margin-right:auto;">
<img src="/095-road-to-dht-header-image.png">
</p>
![](/095-road-to-dht-header-image.png =1000x)
At the end of April, we released our largest update to go-ipfs to date: [IPFS 0.5.0](https://blog.ipfs.io/2020-04-28-go-ipfs-0-5-0/). This upgrade brings major performance and reliability improvements to IPFS — especially on the content discovery and routing front. These gains are brought to you largely by our rework of the Distributed Hash Table (DHT) which powers most peer and content discovery in the IPFS Public Network.
@@ -22,9 +20,7 @@ Wed like to take you through our journey to _re-write_ the DHT - from identif
**If you want to make use of these new improvements, please [upgrade IPFS now](https://docs.ipfs.io/recent-releases/go-ipfs-0-5/update-procedure/#use-ipfs-update)!**
<br />
<p style="max-width:1000px;margin-left:auto;margin-right:auto;">
<img src=/095-road-to-dht-brendan-quote.png">
</p>
![](/095-road-to-dht-brendan-quote.png =1000x)
## First a refresher: Whats the DHT?
@@ -61,9 +57,7 @@ With this analysis and the feedback synthesized from our core users and communit
This meant some hard calls on prioritization: focusing our working groups on a targeted set of improvements to the DHT and routing logic to ensure we resolved these underlying performance and reliability concerns. In turn, we adjusted our product roadmap and stood up new core working groups, including one focused strictly on content routing and another on a new test infrastructure: [Testground](https://docs.testground.ai/).
<p style="max-width:1000px;margin-left:auto;margin-right:auto;">
<img src="/092-launching-testground-hero-image.png">
</p>
![](/092-launching-testground-hero-image.png =1000x)
## Test, test, test
+1 -1
View File
@@ -20,7 +20,7 @@ The past year has seen amazing improvements to libp2p with the protocol quickly
Probably the most significant news on that front is the official adoption of libp2p as the networking layer for the [Ethereum 2.0 Network Specification](https://github.com/ethereum/eth2.0-specs/pull/1328). Ethereum 2.0 is the next generation of Ethereum, with a large and thriving network of clients, dapps, and developers. A big focus for libp2p in 2019 was leveling up stability, scalability, and ease of use to meet the requirements of such a large scale blockchain.
![libp2p at DevConV](/img/098_devcon.png)
![libp2p at DevConV](/098-devcon.png)
libp2p now has 7 language implementations:
+4 -12
View File
@@ -11,9 +11,7 @@ tags:
- 'pubsub'
---
<p align="center">
<img src="https://gateway.ipfs.io/ipfs/QmVSk8VvxWExnYCjqg7TNW2aBnN8Wr7SzkawLUyocWq96p/Gossipsub_fullcolor.png" alt="Gossipsub logo" width="400" />
</p>
![Gossipsub logo](/Gossipsub_fullcolor.png =400x)
We are back with a direct follow up on the [Gossipsub v1.1 release from May](https://blog.ipfs.io/2020-05-20-gossipsub-v1.1) with the much awaited Evaluation Report and three other presents we have for you.
@@ -25,9 +23,7 @@ You can find all the [logo assets here](https://ipfs.io/ipfs/QmVSk8VvxWExnYCjqg7
## 📊 Evaluation Report
<p align="center">
<a href="https://gateway.ipfs.io/ipfs/QmRAFP5DBnvNjdYSbWhEhVRJJDFCLpPyvew5GwCCB4VxM4"><img src="https://gateway.ipfs.io/ipfs/QmWR376YyuyLewZDzaTHXGZr7quL5LB13HRFnNdSJ3CyXu/report-eval.png" width="600" /></a>
</p>
[![](/report-eval.png =600x)](https://gateway.ipfs.io/ipfs/QmRAFP5DBnvNjdYSbWhEhVRJJDFCLpPyvew5GwCCB4VxM4)
We are sharing with you a comprehensive, 61-page evaluation report, in which you can learn how we approached the testing of Gossipsub v1.1, the setting in which tests were run, and detailed descriptions of the conclusions we were able to take from such evaluation. With this evaluation, we demonstrate that GossipSub is resilient against all of the attacks studied, capable of recovering the mesh and meeting the message delivery deadline requirements of the Filecoin and the ETH2.0 blockchains.
@@ -47,9 +43,7 @@ These are all very challenging attacks, which we wanted to test GossipSub agains
## 🔏 Security Audit by Least Authority
<p align="center">
<a href=""><img src="https://gateway.ipfs.io/ipfs/QmWR376YyuyLewZDzaTHXGZr7quL5LB13HRFnNdSJ3CyXu/report-la.png" width="600" /></a>
</p>
![](/report-la.png =600x)
Additionally, we are delighted to release Least Authoritys audit report for GossipSub. Least Authority has carried out an extensive audit on GossipSub v1.1 hardening extensions, both in theory and in implementation.
@@ -59,9 +53,7 @@ Least Authority produced a report detailing all of the tests they have carried o
## 📜 Gossipsub Paper
<p align="center">
<a href="https://arxiv.org/abs/2007.02754"><img src="https://gateway.ipfs.io/ipfs/QmWR376YyuyLewZDzaTHXGZr7quL5LB13HRFnNdSJ3CyXu/paper.png" width="600" /></a>
</p>
[![](/paper.png =600x)](https://arxiv.org/abs/2007.02754)
Finally, we are proud to share with you a preprint of a 16-page paper that puts everything together, justifies our design choices, and outlines the most important results we have gathered throughout. With this paper we want to put everything in one place, from the spec, to the details of the test setup, and the insights we have gathered from the most challenging of attacks, in a concise manner. The paper benchmarks performance of GossipSub with Bitcoins broadcast/flooding protocol, ETH1.0s pubsub protocol and the vanilla version of GossipSup (the one without mitigation strategies and the scoring function integrated). The performance improvements brought by GossipSub v1.1 are really impressive and certainly rewarding of the effort that has gone into the design and testing of the protocol.
+3 -7
View File
@@ -12,9 +12,7 @@ tags:
- 'Kademlia'
---
<p style="max-width:1000px;margin-left:aut o;margin-right:auto;">
<img src="/104-dht-deep-dive-header-image.png">
</p>
![](/104-dht-deep-dive-header-image.png =1000x)
At the end of April, we released our largest update to go-ipfs to date: [IPFS 0.5](https://blog.ipfs.io/2020-04-28-go-ipfs-0-5-0/). While there have been many improvements, the changes to IPFSs Distributed Hash Table (DHT) were especially critical to improving the performance and stability of finding data in IPFS. For some background on how we arrived at the most recent set of DHT changes, take a look at [The Road to the New DHT](https://blog.ipfs.io/2020-05-19-road-to-dht/), or try them out yourself in the [latest version of go-ipfs](https://dist.ipfs.io/#go-ipfs).
@@ -139,10 +137,8 @@ Throughout the development process we ran many Testground tests to get an unders
As can be seen in the graphs, the most drastic changes are to 95th percentile lookup times and to the operations that spent more time doing their lookups and could not terminate as early. This meant IPFS Provide and IPNS Put, which require actually completing a search through the network, got a very large boost (for Provide 24x speedup on average and 33x speedup for the 95th percentile). This was followed by IPNS Get which needs to find many records, then Find Peer which is looking for one very specific record, and finally the time to find just one IPFS Provider record was sped up by 2.2x on average and 6.4x for the 95th percentile.
<p style="max-width:1000px;margin-left:auto;margin-right:auto;">
<img src="/104-dht-deep-dive-find-time-dht.png">
<img src="/104-dht-deep-dive-ipns-time-dht.png">
</p>
![](/104-dht-deep-dive-find-time-dht.png =1000x)
![](/104-dht-deep-dive-ipns-time-dht.png =1000x)
## Parting Thoughts
+1 -3
View File
@@ -47,9 +47,7 @@ As you add and remove pins, this DAG grows and shrinks. [CID]s of intermediate n
`js-ipfs@0.50.0` has changed the default storage of pins to use the datastore instead of a [DAG] and has seen a corresponding speedup as the number of pinned blocks in your repo increases:
<p style="max-width:1000px;margin-left:auto;margin-right:auto;">
<img src="/108-js-ipfs-0.50.0-pinning-performance.png">
</p>
![](/108-js-ipfs-0.50.0-pinning-performance.png =1000x)
In the diagram above you can see that as the number of pinned items increases, so does the time it takes to add the next pin. There's a steep increase at 8,192 pins, which is when the first bucket is considered full and multiple buckets are created which then involves more operations to add the next pin.
@@ -16,7 +16,7 @@ The [ProtoSchool](https://proto.school) team is pleased to announce the launch o
This new content is inspired by feedback on our Decentralized Data Structures tutorial, which originally explored both content addressing and data structures. Based on learner feedback, weve split the content in two! Youll now find the majority of our original content in our rebranded tutorial, [Content Addressing on the Decentralized Web](https://proto.school/content-addressing), which highlights the key differences in how data is shared and retrieved on the centralized web and decentralized web. Meanwhile, our brand new tutorial, [Merkle DAGs: Structuring Data for the Distributed Web](https://proto.school/merkle-dags), is chock full of new content exploring the intricacies of the magical data structure that much of the decentralized web relies on.
<img src="/dag-deduplication.png" alt="Merkle DAG diagram"/>
![Merkle DAG diagram](/dag-deduplication.png)
In IPFS, as across the decentralized web, content addressing enables us to securely locate and identify data stored by peers. The Content Identifiers (CIDs) we often use to link to individual files, or pieces of data, can also be used to express complex webs of data in their entirety, when we structure that data as content-addressable Merkle DAGs. Merkle DAGs, structured using schemas provided by IPLD, are key to the interoperability of IPFS, libp2p, Filecoin, and other distributed protocols. In this new code-free ProtoSchool tutorial, we take a deep dive into the properties that make Merkle DAGs the backbone of the distributed web, and explore the many benefits that the data structure unlocks, from verifiability to distributability to deduplication. [Check it out!](https://proto.school/merkle-dags)
@@ -50,7 +50,7 @@ Prefer your learning in video format? Check out these presentations on the super
ProtoSchool is a team effort, and we depend on folks in the IPFS and dweb community to outline new content, add new features, fix bugs, catch typos, and test-drive new tutorials like this one. There are many ways to [contribute to the project](https://proto.school/contribute), no matter your background, and our new multiple-choice format makes it super easy to [create new tutorials](https://proto.school/build) without any coding experience. In fact, the awesome Mitch Wagner, who created our latest tutorial, built it with the help of our user-friendly ProtoWizard CLI!
<img src="/protowizard.png" alt="Screenshot of ProtoWizard CLI"/>
![Screenshot of ProtoWizard CLI](/protowizard.png)
One of the easiest ways to help is by sharing your feedback as you explore our tutorials. Youll find a link at the bottom of every lesson to help you submit your suggestions.
@@ -27,9 +27,7 @@ With `js-IPFS@0.51.0` types are now a first-class citizen within the codebase. T
Going forward all new code will be required to have types so to help contributors with that [aegir](https://github.com/ipfs/aegir) recently added stricter linting for JSDoc comments and we also [added a typecheck github action](https://github.com/ipfs/js-ipfs/pull/3327) to `js-IPFS` so any errors or missing types should be easy to spot in a PR.
<p style="max-width:1000px;margin-left:auto;margin-right:auto;">
<img src="/types.png">
</p>
![](/types.png =600x)
## SECIO Removal
+7 -7
View File
@@ -1,14 +1,14 @@
---
date: 2016-01-11
permalink: "/4-ipfs-weekly-1/"
permalink: '/4-ipfs-weekly-1/'
title: IPFS Weekly 1
description:
description:
author: Richard Littauer, Andrew Chin
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
Welcome to the first edition of IPFS Weekly!
[IPFS](//ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identities, aiming to make the web faster, safer, and more open. In these posts, we will try to highlight some of the development that happened in the past week. For anyone looking to get involved, follow the embedded hyperlinks, search the wealth of information on [github](//github.com/ipfs) or join us on [IRC](//webchat.freenode.net/?channels=ipfs) (#ipfs on the Freenode network).
@@ -53,7 +53,7 @@ Here are some of the highlights for the [December 14](//github.com/ipfs/pm/issue
### Updates
- [**(registry-mirror)**](//github.com/diasdavid/registry-mirror) [@diasdavid](//github.com/diasdavid) worked on the npm on IPFS project. This involved some new features, moving the mirror to a different server, and making it work better with larger dirs and with 0.4.0.
- [**(js-ipfs)**](//github.com/ipfs/js-ipfs [@diasdavid](//github.com/diasdavid) pushed some major updates for [js-ipfs](//github.com/ipfs/js-ipfs-repo), too.
- [**(js-ipfs)**](//github.com/ipfs/js-ipfs) [@diasdavid](//github.com/diasdavid) pushed some major updates for [js-ipfs](//github.com/ipfs/js-ipfs-repo), too.
Not much else to report this week; a lot of people are off to enjoy CCC, and the holidays.
@@ -114,4 +114,4 @@ Thanks, and see you next week!
- Richard Littauer and Andrew Chin
[_Send us feedback about the Weekly_](//github.com/ipfs/weekly/issues/7)
[_Send us feedback about the Weekly_](//github.com/ipfs/weekly/issues/7)
+7 -7
View File
@@ -1,14 +1,14 @@
---
date: 2016-03-04
permalink: "/10-ipfs-weekly-5/"
permalink: '/10-ipfs-weekly-5/'
title: IPFS Weekly 5
description:
description:
author: Richard Littauer, Andrew Chin
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
[IPFS](//ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identities, aiming to make the web faster, safer, and more open. In these posts, we highlight some of the development that has happened in the past week. For anyone looking to get involved, follow the embedded hyperlinks, search the wealth of information on [GitHub](//github.com/ipfs) or join us on [IRC](//webchat.freenode.net/?channels=ipfs) (#ipfs on the Freenode network).
If you would like to get this update as an email, sign up for our [weekly newsletter](http://eepurl.com/gL2Pi5)!
@@ -17,7 +17,7 @@ This weekly covers the last month. Here are some of the highlights for the Febru
## Highlight
![](https://cdn-images-1.medium.com/max/2000/1*czZJ7mvEAqL4wNAg-jt9Ow.jpeg)
![](/weekly-5-hightlight.jpeg)
Our friends and users at ConsenSys wrote an excellent "[Introduction to IPFS](https://medium.com/@ConsenSys/an-introduction-to-ipfs-9bba4860abd0#.48ki3fymw)", which starts with a less-technical preface, and then dives deep into a full explanation of how the IPFS object model works. It walks through multiple examples, including directory structures, version control systems, and blockchains. This is a great post to familiarize yourself with how the low level IPFS objects work, with graph visualizations and in-depth explanations. It also features a fantastic cover image! Thanks [@ChrisLundkvist](https://twitter.com/ChrisLundkvist) and [@ConsenSysAndrew](https://twitter.com/ConsenSysAndrew)!
@@ -249,4 +249,4 @@ This newsletter is also a community effort. If you have cool things to share for
- Richard Littauer and Andrew Chin
_Submit feedback about this issue [here](//github.com/ipfs/weekly/issues/10), or send us [feedback about the IPFS Weekly in general](//github.com/ipfs/weekly/issues/8)._
_Submit feedback about this issue [here](//github.com/ipfs/weekly/issues/10), or send us [feedback about the IPFS Weekly in general](//github.com/ipfs/weekly/issues/8)._
+9 -9
View File
@@ -1,14 +1,14 @@
---
date: 2016-03-09
permalink: "/11-ipfs-weekly-6/"
permalink: '/11-ipfs-weekly-6/'
title: IPFS Weekly 6
description:
description:
author: Richard Littauer, Andrew Chin
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
[IPFS](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identities, aiming to make the web faster, safer, and more open. In these posts, we highlight some of the development that has happened in the past week. For anyone looking to get involved, follow the embedded hyperlinks, search the wealth of information on [GitHub](https://github.com/ipfs) or join us on [IRC](https://webchat.freenode.net/?channels=ipfs) (#ipfs on the Freenode network).
If you would like to get this update as an email, sign up for our [weekly newsletter](http://eepurl.com/gL2Pi5)!
@@ -19,7 +19,7 @@ Here are some of the highlights for the [first week of March](https://github.com
#### [**station**](https://github.com/ipfs/station)
![Station](https://ipfs.io/ipfs/QmZV7iGTu91w1YePo1EG98siCPxPFrw9Uzf7wAmARusET5)
![Station](/station.png)
The new version of [station](https://github.com/ipfs/station) is ready for developer preview! `station` is one of the easiest ways to get an IPFS daemon running on your machine. It acts as a service and you get many convenient features, such as the ability to turn an IPFS node on through a GUI and drag and drop to share through IPFS. To try it out, you need Node.js 4 ([installation instructions here](https://nodejs.org/en/)) and npm 3 (which comes with Node) installed. Then, do the following:
@@ -98,7 +98,7 @@ central server for message exchange between peers.
#### [**fc00**](https://github.com/fc00/spec)
![lgierth in Paris](https://ipfs.io/ipfs/QmYBv9R3nHMm8XnTHuNhFDJeQxSE9g3G4edpL13eAje3Cc)
![lgierth in Paris](/lgierth-in-paris.jpeg)
[@lgierth](https://github.com/lgierth) spent a productive week in Paris, and chatted with [@cjdelisle](https://github.com/cjdelisle) and [@ansuz](https://github.com/ansuz) at [@xwiki](https://twitter.com/xwiki) about the state and future of cjdns/fc00, layed out ideas for routing improvements, and drafted spec documents for the switch and cryptoauth layers. You can find those specs [here](https://github.com/fc00/spec/pulls) (they'll be updated soon). Work will continue on these for the rest of March. The switch and routing layers of fc00 might be the foundation of a smarter swarm for IPFS/libp2p, so this is all very exciting.
@@ -118,7 +118,7 @@ central server for message exchange between peers.
#### [IPFS Dead drop](https://github.com/c-base/ipfs-deaddrop)
![cbase deadrop](https://ipfs.io/ipfs/QmTK8Djb6hFfHD3hGLv4w3RRYsZXLsTkQ4hYzXuM7ba3Sk 'Photo taken and cropped from https://www.flickr.com/photos/bergie/24769765569/in/datetaken-public/')
![cbase deadrop](/ipfs-dead-drop.ppeg 'Photo taken and cropped from https://www.flickr.com/photos/bergie/24769765569/in/datetaken-public/')
Some members of [c-base](http://www.c-base.org/) have written a dead drop-like system that automatically uploads files from a USB memory stick to IPFS. When you plug a USB memory into the device, it will automatically access the memory stick and publish all the files on the web. Thanks to IPFS the files are instantly available to the whole world. Check out [deaddrops.com](https://deaddrops.com/) for more information about dead drops.
@@ -192,4 +192,4 @@ Thanks, and see you next week!
- Richard Littauer and Andrew Chin
_Submit feedback about this issue [here](https://github.com/ipfs/weekly/issues/24), or send us [feedback about the IPFS Weekly in general](https://github.com/ipfs/weekly/issues/8)._
_Submit feedback about this issue [here](https://github.com/ipfs/weekly/issues/24), or send us [feedback about the IPFS Weekly in general](https://github.com/ipfs/weekly/issues/8)._
+8 -8
View File
@@ -1,14 +1,14 @@
---
date: 2016-03-17
permalink: "/12-ipfs-weekly-7/"
permalink: '/12-ipfs-weekly-7/'
title: IPFS Weekly 7
description:
description:
author: Richard Littauer, Andrew Chin
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
[IPFS](//ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identities, aiming to make the web faster, safer, and more open. In these posts, we highlight some of the development that has happened in the past week. For anyone looking to get involved, follow the embedded hyperlinks, search the wealth of information on [GitHub](//github.com/ipfs) or join us on [IRC](//webchat.freenode.net/?channels=ipfs) (#ipfs on the Freenode network).
If you would like to get this update as an email, sign up for our [weekly newsletter](http://eepurl.com/gL2Pi5)!
@@ -51,11 +51,11 @@ The new [libp2p-swarm](//github.com/diasdavid/js-libp2p-swarm) has been released
[@jbenet](//github.com/@jbenet) gave a talk [titled Datastructures In and On IPFS](http://www.infoq.com/presentations/data-ipfs-ipld) at last year's [QCon SF](https://qconsf.com/sf2015/schedule/tabular). [The video](http://www.infoq.com/presentations/data-ipfs-ipld) was released this week, so now you can all see it! The talk includes a typical introduction (skip if you know IPFS well), and then dives into datastructures, including Merkle Links, Mazieres links, how IPNS works, IPRS records, versioning, Keychain (PKI on IPFS), Persona (identity), and more.
![datastructures-talk-img](https://ipfs.io/ipfs/QmXXvH1dZnM5powG7BTJw71zrzGS5Rq2RFUr56apqKeDxx/007_talk.png)
![datastructures-talk-img](/007-talk.png)
The [IPFS powered USB deaddrop at c-base](//github.com/c-base/ipfs-deaddrop) was demonstrated at the [LoganCIJ 2016 Symposium](https://logancij.com/schedule/), in the Investigative Journalism conference. [More pictures here](https://www.flickr.com/photos/bergie/sets/72157665764801046). If you want to build your own IPFS USB deaddrops, check out the c-base project here: [c-base/ipfs-deaddrop](//github.com/c-base/ipfs-deaddrop).
![c-base-deaddrop](https://ipfs.io/ipfs/QmXXvH1dZnM5powG7BTJw71zrzGS5Rq2RFUr56apqKeDxx/007_cbase_deaddrop.jpg)
![c-base-deaddrop](/007-cbase-deaddrop.jpeg)
The [IPFS Copenhagen Meetup](http://www.meetup.com/Copenhagen-IPFS-Meetup/) organized by [@NeoTeo](//github.com/@NeoTeo) had another meeting a few days ago. If you're in the area, sign up at [the Meetup.com page](http://www.meetup.com/Copenhagen-IPFS-Meetup) so you don't miss the next one!
@@ -157,4 +157,4 @@ Thanks, and see you next week!
- Richard Littauer and Andrew Chin
_Submit feedback about this issue [here](//github.com/ipfs/weekly/issues/27), or send us [feedback about the IPFS Weekly in general](//github.com/ipfs/weekly/issues/7)._
_Submit feedback about this issue [here](//github.com/ipfs/weekly/issues/27), or send us [feedback about the IPFS Weekly in general](//github.com/ipfs/weekly/issues/7)._
+7 -11
View File
@@ -1,14 +1,14 @@
---
date: 2019-03-05
permalink: "/73-ipfs-weekly-32/"
permalink: '/73-ipfs-weekly-32/'
title: IPFS Weekly 32
description:
description:
author: Jenn Turner
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
## Welcome to the IPFS Weekly. 👋
The [InterPlanetary File System (IPFS)](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identity. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open. Since thats a pretty large scope, we track development across the ecosystem in this weekly dispatch.
@@ -21,11 +21,7 @@ Here are some of the highlights since the last IPFS Weekly.
<br/>
<div align="center">
<a href="https://camp.ipfs.io">
<img src="https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4/"></img>
</a>
</div>
[![](/ipfs-camp-2019.png)](https://camp.ipfs.io)
<br/>
@@ -89,4 +85,4 @@ _Did you know IPFS has a community forum at [discuss.ipfs.io](https://discuss.ip
## Thanks for reading ☺️
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
+7 -7
View File
@@ -1,14 +1,14 @@
---
date: 2019-03-19
permalink: "/75-ipfs-weekly-34/"
permalink: '/75-ipfs-weekly-34/'
title: IPFS Weekly 34
description:
description:
author: Jenn Turner
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
## Welcome to the IPFS Weekly. 👋
The [InterPlanetary File System (IPFS)](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identity. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open. Since thats a pretty large scope, we track development across the ecosystem in this weekly dispatch.
@@ -59,7 +59,7 @@ _[Awesome IPFS](https://awesome.ipfs.io/) is a community maintained and updated
- [Almonit](almonit.eth): A decentralized website made with ENS + IPFS
- Deploy DNSLink TXT Records To AWS Route53 Domains with [dnslink-route53](https://github.com/RTradeLtd/dnslink-route53)
![](https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4)
![](/ipfs-camp-2019.png)
## Join us at the first ever IPFS Camp
@@ -78,4 +78,4 @@ _Did you know IPFS has a community forum at [discuss.ipfs.io](https://discuss.ip
## Thanks for reading ☺️
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
+8 -8
View File
@@ -1,15 +1,15 @@
---
date: 2019-03-26
permalink: "/76-ipfs-weekly-35/"
permalink: '/76-ipfs-weekly-35/'
title: IPFS Weekly 35
description:
description:
author: Jenn Turner
tags:
- weekly
- CRDTs
header_image: "/header-image-weekly-newsletter.png"
- weekly
- CRDTs
header_image: '/header-image-weekly-newsletter.png'
---
## Welcome to the IPFS Weekly. 👋
The [InterPlanetary File System (IPFS)](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identity. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open. Since thats a pretty large scope, we track development across the ecosystem in this weekly dispatch.
@@ -68,7 +68,7 @@ _[Awesome IPFS](https://awesome.ipfs.io/) is a community maintained and updated
- [IPFS-Lite is an embeddable, lightweight IPFS-network peer for IPLD applications](https://github.com/hsanjuan/ipfs-lite)
- [Happy 5th birthday, 18F!](https://18f.gsa.gov/2019/03/19/18F-5-Anniversary-achieve/)
![](https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4)
![](/ipfs-camp-2019.png)
## Join us at the first ever IPFS Camp
@@ -87,4 +87,4 @@ _Did you know IPFS has a community forum at [discuss.ipfs.io](https://discuss.ip
## Thanks for reading ☺️
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
+7 -7
View File
@@ -1,14 +1,14 @@
---
date: 2019-04-02
permalink: "/77-ipfs-weekly-36/"
permalink: '/77-ipfs-weekly-36/'
title: IPFS Weekly 36
description:
description:
author: Jenn Turner
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
## Welcome to the IPFS Weekly. 👋
The [InterPlanetary File System (IPFS)](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identity. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open. Since thats a pretty large scope, we track development across the ecosystem in this weekly dispatch.
@@ -67,7 +67,7 @@ _[Awesome IPFS](https://awesome.ipfs.io/) is a community maintained and updated
- The [AKASHA Foundation](https://akasha.org/about/), a non-profit born at the intersection of blockchain and collective intelligence, is currently hiring!
- Check out this web app to check [a public IPFS gateway state](https://ipfs.fooock.com/)
![](https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4)
![](/ipfs-camp-2019.png)
## Join us at the first ever IPFS Camp
@@ -87,4 +87,4 @@ _Did you know IPFS has a community forum at [discuss.ipfs.io](https://discuss.ip
## Thanks for reading ☺️
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
+8 -8
View File
@@ -1,15 +1,15 @@
---
date: 2019-04-16
permalink: "/82-ipfs-weekly-38/"
permalink: '/82-ipfs-weekly-38/'
title: IPFS Weekly 38
description:
description:
author: Jenn Turner
tags:
- weekly
- project planning
header_image: "/header-image-weekly-newsletter.png"
- weekly
- project planning
header_image: '/header-image-weekly-newsletter.png'
---
## Welcome to the IPFS Weekly. 👋
The [InterPlanetary File System (IPFS)](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identity. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open. Since thats a pretty large scope, we track development across the ecosystem in this weekly dispatch.
@@ -73,7 +73,7 @@ _[Awesome IPFS](https://awesome.ipfs.io/) is a community maintained and updated
- [Genobank DNA Wallet](https://coinlist.co/build/nucypher/projects/a9f305f4-d0ff-4501-840e-4566608303ab) A Decentralised and anonymous DNA wallet. Enables users to extract DNA, establish ownership, share (P2P) & control using Nucypher and Blockchain.
- [deima](https://boramalper.github.io/deima/) is a decentralised image host that allows you to upload your images to IPFS distributed network.
![](https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4)
![](/ipfs-camp-2019.png)
## Join us at the first ever IPFS Camp
@@ -90,4 +90,4 @@ _Did you know IPFS has a community forum at [discuss.ipfs.io](https://discuss.ip
## Thanks for reading ☺️
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
+7 -7
View File
@@ -1,14 +1,14 @@
---
date: 2019-04-23
permalink: "/84-ipfs-weekly-39/"
permalink: '/84-ipfs-weekly-39/'
title: IPFS Weekly 39
description:
description:
author: Jenn Turner
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
## Welcome to the IPFS Weekly. 👋
The [InterPlanetary File System (IPFS)](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identity. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open. Since thats a pretty large scope, we track development across the ecosystem in this weekly dispatch.
@@ -58,7 +58,7 @@ _See the latest releases of IPFS tools and projects across the ecosystem._
- qri (“query”) is versioned, scriptable, exportable, collaborative datasets and [version 0.7.1](https://github.com/qri-io/frontend/releases/tag/v0.7.1) is out now.
- The [Textile team](https://www.textile.photos/) recently shipped the latest [Textile Update | March 2019](https://medium.com/textileio/textile-update-march-2019-5da0c1581d3e).
![](https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4)
![](/ipfs-camp-2019.png)
## Join us at the first ever IPFS Camp
@@ -77,4 +77,4 @@ _Did you know IPFS has a community forum at [discuss.ipfs.io](https://discuss.ip
## Thanks for reading ☺️
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
+7 -7
View File
@@ -1,14 +1,14 @@
---
date: 2019-04-30
permalink: "/85-ipfs-weekly-40/"
permalink: '/85-ipfs-weekly-40/'
title: IPFS Weekly 40
description:
description:
author: Jenn Turner
tags:
- weekly
header_image: "/header-image-weekly-newsletter.png"
- weekly
header_image: '/header-image-weekly-newsletter.png'
---
## Welcome to the IPFS Weekly. 👋
The [InterPlanetary File System (IPFS)](https://ipfs.io/) is a new hypermedia distribution protocol, addressed by content and identity. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open. Since thats a pretty large scope, we track development across the ecosystem in this weekly dispatch.
@@ -46,7 +46,7 @@ _[Awesome IPFS](https://awesome.ipfs.io/) is a community maintained and updated
- [Matters.news](https://matters.news/faq) is a news publishing site hosted on IPFS with approximately 10K+ active users!
- [galacteek](https://github.com/eversum/galacteek) is an experimental multi-platform Qt5-based browser/toolbox for the IPFS peer-to-peer network.
![](https://ipfs.io/ipfs/Qmd11gtyigpCjo4MfzXuj9MKuMF3Dj1EZEvbNRZeQE1jd4)
![](/ipfs-camp-2019.png)
## Join us at the first ever IPFS Camp
@@ -64,4 +64,4 @@ _Did you know IPFS has a community forum at [discuss.ipfs.io](https://discuss.ip
## Thanks for reading ☺️
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.
Thats it for this weeks news on all things IPFS. If we missed something, [reply to this email](mailto:newsletter@ipfs.io) and let us know! That way we can feature you in next weeks edition.

Some files were not shown because too many files have changed in this diff Show More