►
From YouTube: Browser updates, offline WebUI and lazy cohosting - IPFS GUI and Browsers Weekly, 2019-10-09
Description
Browser updates blogpost: https://blog.ipfs.io/2019-10-08-ipfs-browsers-update/
About IPFS GUI and Browsers Weekly: https://github.com/ipfs/team-mgmt/issues/790
IPFS Mirror: https://ipfs.io/ipfs/bafybeihlchdfctzhahapwwzviyswrk2jayczdmhbirc6gydnf7ax4m2e5e/
A
The
first
item
on
the
list
is
pre-caching
assets,
making
web
UI
work
in
offline
mode,
so
that
one
is
mine.
So
I'll
give
a
quick
update
on
this
one.
So
the
idea
is
when
user
installs
ipfs
companion
the
first
thing
they
want
to
do,
especially
in
the
next
release.
There
will
be
a
button
when
everything
is
set
up.
There
will
be
a
button
open
web
UI.
So
that's
the
very
first
thing
new
user
is
doing
opening
web
UI.
The
problem
is
if
the
web,
if
it's
the
very
first
time
user,
is
opening
web
UI.
A
A
For
user
experience,
and
also
not
that
good
for
offline
use
cases,
so,
for
example,
if
someone
goes
to
to
a
cafe
or
if
internet
cafe
or
a
friend
where
there's
a
Wi-Fi
and
they
install
ipfs
companion
and
like
a
Kieffer's
desktop
and
they
shut
the
laptop
down
and
then
go
someplace
without
the
networking
and
they
want
to
play
with
ipfs,
they
try
to
open
web
UI
and
nothing
happens
because
the
note
is
not
able
to
find
those
blocks.
So
it's
also
not
connected
to
the
network
and
it's
not
able
to
open
web
UI.
A
So
that's
pretty
bad
for
the
offline
use
case
and
the
way
I
figured
out
to
mitigate
this
is
to
basically
precache
web
UI
in
a
way
that's
native
to
ipfs.
So
the
idea
is
to
basically
bundle
an
archive
with
web
web
UI
assets
with
the
browser
extension
itself
and
then
on
the
very
first
time
user
is
starting
I
profess
companion.
We
check
if
web
UI
is
present
in
local
repository.
A
If
it's
not
present
in
local
repository,
we
check
if
the
tower
archive
is
present
in
the
bundle,
because
not
we
may
not
want
to
bundle
it
on
every
platform.
We
need
to
figure
it
out
if
it's
okay
to
bundle
it
Firefox
and
other
stuff.
But
if
the
web
UI
is
not
in
local
repository,
we
have
it
locally
as
a
file,
and
we
just
import
that
file
to
local
note
on
the
first
boat
and
that's
pretty
fast.
It's
like
the
uncompressed
web
UI.
A
It
is
about
22
megabytes,
but
compressed
is
11
megabytes
with
companion
itself,
so
companion
on
its
own
is
4
megabytes.
If
we
add
web
UI,
it's
11
compressed
and
it's
pretty
cool.
The
pretty
cool
thing
is
that
what
we
include
in
the
bundle
is
at
our
archive,
which
is
an
archive
which
is
not
compressed
itself
and
companion,
and
whether
you
I
share
a
lot
of
assets
such
like
phones
and
some,
like
some
images
and
other
assets,
so
those
are
basically
duplicated.
A
That's
why
we
got
this
pretty
good
compression
and
I
feel
like
11
megabytes
for
chromium
extension
is
not
that
bad,
not
that
good
either.
But
you
get
this
offline
first
experience
so
that's
implemented
and
we
will
land
at
some
point
in
the
future,
pretty
happy
with
it,
because
it's
not
specific
to
a
DUI.
We
this
way
we
are
able
to
be.
We
may
even
like
extract
this
and
create
a
library
for
doing
that
in
other
apps.
A
I
know
that
in
ifs
desktop
we
sort
of
have
web
UI
shipped
locally,
because
there
are
different
constraints,
but
for
browser,
extensions
and
other
applications
that
wants
to
ship
some
data
that
needs
to
be
available
immediately
without
fetching
it
from
the
network.
This
may
be
useful
and
in
ipfs
companion
this
means
when
you
open
web
UI,
it
will
be
available
instantly,
so
the
first
load
won't
take
a
long
time
right
now
it
can
be
a
few
seconds
of
even
up
to
a
minute
if
your
network
is
slow
and
you
are
not
lucky.
B
B
Ya
confessed
for
advisors
update,
so
we
put
together
a
summary
of
kind
of
where
we've
been
with
browser
integrations
and
where
we
want
get
to,
but
more
like
a
hint
where
we
get
to
most
of
its
talking
where
we
are
today
integrations
with
brave
and
the
work
that
everyone's
been
doing.
Lydell
driving
that
for
the
last
almost
are
over
a
year
now,
at
this
point,
so
really
the
culmination
of
really
a
lot,
a
lot
of
work
and
a
lot
of
help
from
Gravesend
as
well.
B
B
All
that
going
back
all
the
way
to
to
last
summer,
when
we
have
Idol
and
Kyle
definitely
like
I,
think
that
was
actually
only
above,
that
might
admit
a
month
or
something
after
Lindy.
Webb
was
most
fully
announced,
really
a
scroll
back
through
the
history
and
a
hint
of
where
we
want
to
go,
and
one
of
the
things
that
we
didn't
really
talk
about
in
this
post
and
then
I
feel
like
I'd
love
to
be
able
to
talk
about
more
once
we
get
into
to
2020
planning.
Are
things
like
out?
Co-Hosting
is
really
big.
B
Co-Hosting
really
speaks
to
kind
of
the
core
use
cases
that
we
talked
about
when
talking
about
why
IP
fess
is
good
and
why
we
were
doing
this
in
the
first
place
and
and
it's
a
kind
of
our
first
at
first
serious
foray
into
figure
out
what
those
user
flows
are
for.
I'm,
a
regular
person
and
I
want
to
be
able
to
share
I
wanna,
be
able
to
see
if
something
I
also
want
to
share
it.
What
does
that
mean?
How
do
I
do
it?
B
So
I'm
really
I
feel
like
with
browser
integration,
we're
getting
things
to
the
point
where
regular
people
can
start
to
have
access
to
distributed,
networked
without
having
to
install
extra
stuff
necessarily,
but
that
next
step
is
even
more
important
and
that's
really
working
out
the
kinks
and
those
types
of
workflows.
If
I
view
Wikipedia.
B
How
can
I
make
sure
that
my
neighbor
can
also
be
Wikipedia
if
all
of
our
internet
goes
out
right
right,
then,
so
those
that
I
think
the
talking
a
little
bit
about
that
that
next
view
what
comes
next,
once
we
have
network
capability?
What
comes
next
steps?
We
smooth
out
the
bumps
for
those
those
really
common
use
cases
how
to
share
how
to
publish
how
to
read
what
I'm
saved
and
a
lot
of
the
intricacies
of
where's.
B
My
stuff
I've
got
multiple
repos,
multiple
devices
and
web
browser
extension
and
web
content
and
mobiles
about
you
know
like
up
other
local
going,
P,
fest,
node,
I'm.
Think
there's
a
lot
of
work
to
do
is
smooth
out
the
bumps,
but
this
is
a
big
progress
and
then
so
far,
the
reaction
on
on
the
Twitter's
been
pretty
good
and
I
got
retweeted
by
ipfs
bot,
so
that
would
that
means
it's
official.
Let's
legit
and
I'm
really
getting
a
lot
of
positive
feedback.
People
are
pretty
excited
and,
interestingly,
a
bunch
of
projects
talking
about
mdns.
B
So,
like
I,
think
those
were
its.
If
you,
if
you
work
in
the
space
long
enough,
you
have
an
understanding
that
that
local
connectivity
is
one
of
like
it's
like
that.
That
Holy
Grail
that
cornerstone
of
two
devices
be
able
to
talk
to
each
other
and
and
discover
each
other
and
be
able
to
interact
whether
it's
IP,
fests
or
any
other
other
distributed
network,
and
especially
in
offline
scenarios,
so
that
kind
of,
like
people,
people
are
excited,
be
able
to
see
that
we're.
B
Looking
at
that
and
I
think
once
we
have
some
really
good
demos
and
development
scenarios
like
API
somewhere
close
for
browser
to
browser
browser,
communication,
I
think
we're
gonna
see
even
more
interest
on
what
we're
seeing
right
now.
So
the
interest
that
we're
seeing
right
now
is
people
have
that
kind
of
longer
efficient,
but
once
you
make
local
network
pressor
browser
development
a
little
bit
easier
in
the
simple
publishing
we're
close
like
it's
going
to
be,
it's
going
to
be
really
I'm,
not
a
lot
of
a
lot
of
abilities
for
people.
B
A
You
for
creating
this
summary,
it's
a
very
good
overview
and
I,
really
like
that's
it's
so
much
stuff
it
the
way
it
balances
like
over
overarching
roadmap
and
where
we
are
today
without
going
to
too
deep
into
technical
details.
That's
super
useful,
because
otherwise,
if
it
was
too
technical,
people
will
just
shut
off
and
it
was
very
nice
with
I
I
enjoyed
it.
Thank
you
we'll.
B
B
B
We
talked
about
like
what
a
brave
1v1
looks
like
at
browser
week,
which
I'll
talk
about
next
last
last
week
when
we
or
we
prefer
last
one
we're
in
Malta
but
and
we
we
actually
did
narrow
down
a
set
of
cases,
their
LinkedIn
me
that's
what
we
notice
about
what
that
v1
might
look
like
I
think,
but
but
ultimately,
like
the
fact
that
it's
available
in
the
way
that
it
is
especially
now
that
the
sockets
are
white
listed
in
release
rate,
which
I
didn't
realize.
That's
awesome.
B
A
For
me,
the
the
v1
is
when
we
got
like
ipfs
colon,
slash,
slash
indication
bar-
that's
like
probably
trivial,
but
that's
like
this
cherry
on
top,
when
you
like,
say:
oh,
it's
probably
done
right,
but
until
until
we
get
protocol
handler
API
or
like
this
better
ux
of
address
bar,
we
will
iterate
on
the
performance
of
method.
Note
which
I'm
pretty
happy
is.
B
There
anything
that
is
there
anything
on
our
end
that
we
can
do
to
to
help
the
development
of
protocol
handler
new
protocol
handler
and
brave,
like
is
that
something
that's
happening
at
the
brave
level
or
is
that
required
underlying
chromium
changes
on
there?
And
this
argument,
for
maybe
us
doing
more
direct
browser
development?
Are
that.
A
However,
on
the
user
interface
just
change
your
address
bar
and
that
something
couldn't
be
easily
done
with
like
a
smaller
patch,
however,
like
introducing
something
on
par
with
native
protocol
handler
for
browser
extension,
when
you
actually
have
no
like
HTTP
connection,
you
just
inject
bytes
right
from
from
JavaScript,
that's
something
closer
to
chromium
and
also
we
want
it
to
be
closer
to
chromium
past.
It's
not
going
that
way.
A
It
could
be
reused
in
other
places
and
having
the
same
web
extension
API
between
like
Firefox
and
chromium,
would
be
a
dream
right
and
yeah
so
like
right
on
Oprah,
and
it's
like,
like
as
a
segue
I'm
working
on
addressing
some
bugs
related
to
adding
files
from
web
UI
in
brave
when
using
embedded,
Jacek
TFS.
Sorry,
it's
bit
technical,
but
long
story
short,
is
that
we
there
was
a
bug
which
I
found,
but
we
did
not
have
tests.
So
that's
very
fortunate
that
we
have
testing
with.
You
is
one
of
our
key
ours.
B
Yes,
so
that
is
the
next
segue.
Thank
you
very
much,
I
wait!
So
what
we
have
two
acres
that
are
really
kind
of
related
to
this
group
for
q4
and
the
first
one
is
the
opera
brave
and
the
second
one
is
to
improve
the
intent
testing
scenario,
and
we
talked
a
little
bit
about
this
last
quarter.
I,
you
know
hoc.
B
B
So,
in
you
know,
as
as
those
core
implementations
are
making
big
changes,
we
need
to
be
able
to
know
immediately
when
web,
UI,
companion
or
desktop
all
break
because
of
a
change
that
happened
from
integrated
core
implementation
or
some
module
dependency
down
there
in
the
infinite
tree
of
modules
that
we
depend
on.
So
that's
why
I
think
like
for
me
the
from
a
instead
of
you
know
we
don't
want
to
take
you
know
one
step
forward
and
two
steps
back
are
getting
this
test
suite
set
up
even
with
this
minimal.
B
You
know
matrix
that
that
Lytle,
you
put
here,
really
is
probably
the
most
important
thing
that
we
need
to
finish
this
quarter,
so
I'd
love
to
be
able
to
know
how
what
what
do?
What
can
I
do
to
be
able
to
help
this?
What
do
you
need
from
an
infrastructure
standpoint?
How
much
of
this
work
is
already
done?
It
just
needs
to
be
put
together
and
put
it
in
the
CI.
Somehow
do
we
want
to
have
do
we
need
some
daily
operation?
Do
we
need
per
commit
operation
of
execution
of
these
tests?
B
A
So
generally,
just
like
I
said
there
are
different
dimensions
to
this.
I
think
that
the
starting
point
I,
think
we
sort
of
agree
is
that
web
UI
should
be
a
home
like
the
web.
Ui
repo
should
be
a
home
for
those
tests,
so
basically,
whether
you
I
would
test
itself
against
chromium,
Firefox
and
electron,
and
then
testing
itself
against
like
go
ipfs
over
HTTP
api,
JS
ipfs
over
HTTP
api
and
then
like
stuff
like
embedded
JS
ipfs
in
brave.
It's
something
I
could
add
on
top
of
that.
A
But
we
need
this
like
lower-level
infrastructure
for
having
these
test
matrix,
and
if
we
have
this
test
matrix.
This
test
should
set
up
in
ipfs
web
UI.
It's
why
it's
important
it's
important
because,
for
example,
recently
J's
ipfs
has
an
early
adopter
program
and
the
way
it
works
they
enable
other
projects,
maybe
I.
D
A
So
that's
why
going
back
here?
If
we
have
a
web
UI
having
self-contained
tests
for
this,
then
we
could
just
submit
to
that
program
and
not
only
having
like
web
UI
testing
itself.
Then,
if
Jarius
ipfs
makes
a
change,
it
would
run
web
UI
tests
against
a
new
version
of
trace
ipfs,
and
that
would
be
a
very
like
a
canary
in
a
coal
mine.
In
sum,
if
something
goes
wrong
and
similar
I
believe
the
same
like
process
could
be
then
be
used
for,
go
ipfs,
cuz,
that's
a
pretty
pretty
elegant
solution.
A
So
that's
where
my
mind
is
around
those
tests
and
I
would
be
happy
to
to
help
with
setting
it
up
for
cost
like
chromium,
Firefox
I
need
that
for
aquifers
companion
and
like
electron
and
Ricans,
that
for
aquifers
desktop
so
will,
but
like
entire
framework.
It's
a
common
for
all
cases.
So
as
soon
as
I'm,
like
done
with
this
bug,
I'm
working
on
four
brave,
probably
jump
into
this
and
help
with
this.
A
B
B
A
It
was
like
for
additional
context
historically
I,
remember
when
stuff
broke
in
the
collection.
It
was
not
usually
not
related
to
like
user
interface
interaction.
It
was
mostly
stuff
like
Oh
URL
object
is
kind
of
different
than
libera
browser,
or
the
fetch
event
is
not
really
the
same
as
in
node,
nor
like
in
web
browser.
All
those
like
intricacies
were
code
specific,
not
UI
specific.
So
that
may
be
a
good
point.
That's.
C
Also,
there
is
something
that,
if
we
test
web
UI
on
electrum,
when
we
directories,
it
won't
work
on
a
line.
It
just
works
if
we
type
if
a
desktop,
because
we
have
a
custom
function
to
call
an
electric
function
that
opens
the
open
directory
dialog,
it
won't
work
if
we
just
test
it
against
a
row.
Electrum
version
yeah.
A
That
might
be
like
a
local
problem:
how
to
sculpt
those
tests
because,
like
I
know,
if
we
really
really
want
to
test
it
like
end
to
end
including
user
interface
on
like
UNIX
and
when
there's
like
x11
windows
like
you,
can
basically
like
programmatically
produce
keyboard
and
mouse
events.
But
that's
basically
writing
at
custom
testing
framework
for
your
eyes
and
I
sort
of
wanted
to
believe
something
like
that
exists
or
could
be
adapted
to
our
needs,
but
yeah
that
that's
something
we'll
look
at
this
quarter.
B
B
B
C
B
Yes,
we
took
a
couple
days
to
do
some
planning
for
planning
for
2020,
and
then
we
we
picked
it
up
at
him
to
hack
on
it
and
and
try
to
figure
out
for
complete
yeah.
The
key
for
planning
was
basically,
we
already
talked
about
couldn't
with
the
q4
of
cara's.
Are
some
of
that
was
actually
like
reducing
the
set?
B
So,
instead
of
trying
to
go
big
at
1/4,
where
we
have
lab
week
quarter,
we
have
holidays
happening
and
we
also
have
2020
planning
happening,
let's
narrow
the
set
of
things
and
see
how
we
can
help
the
other
parts
of
the
project
as
well.
So
that
includes
things
like
helping
with
the
async
refactor.
If
we
have
time
and
then
doing
this
prioritizing,
this
testing
work
as
well.
B
The
the
next
big
piece
was
actually
kind
of
identifying
what
what
they,
what
the
set
of
I
mean.
We
had
a
lot
of
stuff
to
test.
There's
a
big
list
here,
the
next
big
piece
that
was
kind
of
like
what
our
priorities
for
2020
in
browser,
specifically
understanding
what
the
developer
experience
should
be
for
people
who
are
developing
with
ipfs.
What
didn't
need
a
browser
implementation
would
look
like,
so
we
were
like.
We
have
a
pretty
good
feel
now
for
what
it
looks
like
when
companion
is
running
inside
of
a
browser.
B
B
Think
at
this
point,
what
we
really
want,
because
we're
gonna
get
the
most
browser
coverage
for
many
Daria's,
be
able
to
get
a
experienced,
chrome,
developer,
onboard
and
joined
the
team
and
I
made
that
call
out
in
the
in
the
browser
blog
post
as
well
and
then.
Finally,
the
user
experience
is
part
of
it.
So
if
we
want
to
be
able
to
I
could
miss
running
native
browsers
and
integrated,
we
need
to
be
able
to
communicate
what
the
threat
model
is.
What
does
design
of
the
URL
bar
needs
to
be
and
why?
B
What
needs
to
be
communicated
when
the
content
is
well?
One
cryptographically,
verifiable,
but
also
can
come
from
anywhere,
and
it
has
ramifications
outside
of
privacy
and
security,
also
in
the
areas
of
power,
consumption,
CPA
utilization
and
other
things
of
then
power
trade-offs
as
well.
So
a
lot
to
figure
out
there.
This
table
is
the
prioritized
list
of
2020
projects
where
we
went
through
each
one
of
the
things
that
we
knew
where
open
issues
that
we
need
to
be
able
to
fix
in
browsers
to
be
able
to
get
a
full
up
and
running
IPS
node.
B
Doesn't
talk
to
over
h
to
be
the
local
node
just
talking
to
try
to
get
native
connectivity
to
the
local
node.
You
just
use
web
RTC
to
speak
to
eat
built-in,
like
we
haven't,
really
figured
that
those
bits
out.
So
this
is
the
kind
of
a
stack
ranked
list
of
things
that
we
identified
the
from
prior
prior,
a
prioritization
perspective
that
we
need
to
fix
in
order
to
address
the
world
of
ipfs
suppressors
as
we
that's
the
world
is
today,
so
assuming
that
there's
no
native
implementation.
B
Another
issue
that
we
here
have
to
figure
out
at
some
point,
but
that
becomes
be
the
nature
of
how
the
data
is
stored.
Cid
v1,
based
r2,
is
the
highest
priority
for
for
2020
in
order
to
set
us
up
for
the
next.
You
know
you
know
about
five
years
of
ipfs
work
without
having
to
worry
about
the
the
addressing
format.
B
So
that
was
kind
of
fascinating
that
we
were
kind
of
I,
didn't
add
the
category
stuff
until
later,
so
we
were
actually
just
looking
at
the
list
of
projects
and
me
and
Hugo
and
Lionel
just
like
intensely
for
hours
talking
about
each
one
of
these
and
slowly
doing
this
sort
based
on
the
technical
bits
behind
each
one
of
them
and
afterwards
I
went
through
did
the
group
he
goes
I
go.
We
have.
B
We
have
a
live,
a
an
emergent
clustering,
it's
very
important
that
connectivity
makes
sense
that
connectivity
is
gonna,
be
the
biggest
thing
in
our
mind,
because
everything
else
we
can
fix
back
after
that
after
the
back.
So
that's
that's
kind
of
what
came
out
of
this.
We
still
have
some
next
steps
around.
B
Reconciling
this
list
with
the
like
I
feel,
like
it'll,
probably
end
up
being
like
us,
attacking
these
things,
because
the
HTTP
world
will
live
on
for
the
next
prolly
forevers.
Reconciling
this
against
what
a
native
implication
looks
like
how
those
two
interplay
together
when
you
have
these
mixed
hybrid
environments
is
which
will
probably
have
forever.
So
we
will
have
a
good
story
for
how
that
works.
B
B
B
Really
just
blue
sky,
putting
it
up,
there
will
be
the
big
pieces
and
then
spend
some
time
digging
into
some
of
these.
These
deeper
problems,
like
we've,
spent
a
bunch
time
talking
about
the
wave
you
I,
probably
brave,
and
really
now
the
light
is
almost
done
implementing
that
and
then
some
of
the
other
long-term
brothers.
Like
you
know,
we
have
I
profess.
How
many
ipfs
nodes
can
we
write
on
one
machine?
B
Ideally,
it
would
just
be
one
so
and
and
and
really
that
ends
up
speaking
back
to
the
HTTP
model
as
well.
So
if
we
really
only
want
one
I
picked
us
snowed
running
on
any
machine
in
any
given
time
you
we're
gonna,
be
up.
We're
gonna
have
to
speak
HTTP
to
that
node.
Even
in
that
that
perfect
dish
fish
world,
so
lots
lots
of
discussions.
All
the
notes
are
linked
in
this
in
this
I
can
be
that
one
of
the
fun
parts
was
the
next
couple
days
where
we
actually
dug
into
a
technical
problem.
B
So
we
said:
okay
should
we
say
spent
two
days
hacking
on
web
RTC
connectivity
should
we
spend
two
days
hacking
on.
There
are
other
different
routing,
optimizations
and
things
like
that.
Should
we
spend
two
days
hacking
on
performance
and
while
doing
the
Interop
test,
conversion
to
async
Hugo
found
that
the
IP
of
NGS
ipfs
tests
for
basic
ads
where
sometimes
pathologically
slow?
He
found
it
was
taking
a
minute
sometimes
to
be
able
to
add,
not
really
file.
That
should
not
take
a
minute
to
that.
B
He
implemented
the
datastore
API
with
just
a
memory
database
to
see
if
there
is
a
improvement
there
and
it
because
we
use
a
level
to
be
wrapper
running
a
web
page
that
talks
to
index
DB
which
actually
in
Chrome,
is
also
level
2b
in
the
backend.
So
we
have
level
DB
ception
there
and
on
firefox
it's
kind
of
similar,
but
it's
SQLite
on
the
back
end,
that's
IDB!
B
Do
you
making
each
one
of
those
rights
at
the
IDB
level
as
an
individual
transaction
and
IDB
provides
transaction
semantics
to
be
able
to
take
all
this
right,
split,
em
up
and
then
make
the
file
system
the
file,
IO,
happenin
and
one
large
transaction
was
supposed
to
a
whole
bunch
of
different
independent
atomic
rights.
This
is
a
lesson
that
we
learned
in
browser
lands
and
and
really
the
lesson
played
out
here
as
well
once
adding
transactions
before
it
got
about
a
50%
increase
in
performance
in
both
ads
and
and
I.
B
Think
there
was
it
gets
as
well,
but
I
don't
remember
exactly,
but
the
the
rights
for
sure
we
had
a
massive
promoters
increase,
so
that
has
not
landed
yet
as
far
as
I
know
and
we're
still
waiting
on
ego
to
merge
those
changes.
But
that
will
be
a
significant
improvement
and
I
profess
and
webpages
hi,
and
was
it
also
note
as
well
that
we
get
those
the
batching
improvement?
Yeah.
B
B
Is
it
yeah?
It's
it's
a
little
tense.
When
you
get
you
know
it's
actually,
the
small
group
can
be
can
be
kind
of
more
intense
than
the
big
group,
sometimes
because
you
can
go
and
next
time,
I
think
we
need
to
get
a
little
more
organized
and
happy
the
ipfs
web
UI
and
desk
the
browser
desktop
and
web
UI
week
push
it
up
to
maybe
five
people.
Six
people
I
feel
like
when
we
had
14
people
in
Lisbon.
It
was
like
two
too
much
all
at
once,
and
three
people
was
super
intense
about
six.
B
A
A
Cool
thank
you
to
check
the
last
item
on
the
agenda.
Experiment
in
collaborative
web
site
hosting
lazy
vs.,
prefetched
co-hosting
I
could
like
probably
write
more
but
I,
don't
think
it
would
be
more
like
it
would
be
clearer.
Now,
I
apologize
I
was
not
sure
what
to
write,
but
it's
basically,
this
co-hosting
spec,
which
we
have
been
low-key,
experimenting.
A
It's
very
simple:
it's
just
adding
removing
and
updating.
Basically,
however,
from
from
the
implementation
hacked
it,
he
created
a
simple
bar
script.
So
if
you
want
to
see
how
this
co-hosting
would
work,
there's
a
shell
script,
you
can
download
and
it
just
had
become
a
has
comments
for
adding
removing
and
syncing
basically
and.
A
A
The
thing
is,
it's
just
a
pointer:
it's
there.
This
operation
does
not
touch
data
store.
So
if
this
harsh
represents
entire
Wikipedia,
you
have
entire
Wikipedia
in
your
MF
s.
However,
it's
not
physically
on
your
MF
s.
It's
not
on
your
machine.
You
go
to
web
UI,
you
go
to
files
in
web
UI
or
you
use
command
line
to
traverse
this
directory
under
em
FS
and
with
each
like
level.
Each
file
you
open
there.
It
will
be
dynamically
loaded
from
the
network
because
it's
not
physically
on
your
machine
yet
so
initially
it
was
a
bug.
A
So
the
idea
was
to
okay.
We
need
to
add
this
step
here.
To
ensure
contents
are
in
the
local
repo.
So
there's
this
command,
which
lists
or
sub
blocks
of
entire
dock,
which
has
a
side
effect
of
prefetching
everything
to
your
local
repository.
So
that
is
why,
like,
if
we
do
this
before
copying,
that
ensures
everything.
That's
in
MF
s,
it's
physically
on
your
machine.
A
A
Those
pages
I
visit
are
cached
on
my
local
network
on
my
local
repository
I,
don't
have
entire
Wikipedia
I
have
a
small
subset
of
Wikipedia
and
the
idea
behind
LASIK
or
hosting.
Is
that
that's
actually
a
feature,
so
some
people
may
not
want
to
store
anti
Wikipedia.
Some
people
want
to
just
ensure
all
the
Wikipedia
resources
they
visited
are
being
protected.
A
Being
garbage
collected
are
pinned
or
are
basically
co-hosted,
so
that's
pretty
cool
I'm
able
to
like
host
a
lot
of
websites
and
I,
basically
just
share
and
provide
content
to
other
people.
Only
the
content
I've
actually
visited.
It
works
like
this
right
now.
So
the
only
feature
on
top
of
how
ipfs
works
right
now
is
this
implicit
pinning
right
now
when
you
go
to
a
page,
it's
saved
and
cashed
in
your
local
repository.
A
However,
at
any
time,
garbage
collection
may
remove
it
unless
it's
pin,
if
it's
added
to
MF
s,
even
as
this
pointer
of
an
entire
website,
is
how
that,
as
a
pointer,
if
you
have
any
sub
resources
of
that
in
your
local
repo
and
garbage
collection
is
happening
that
will
protect
them
from
being
garbage
collected.
So
that's
that
background
behind
lazy
co-hosting.
The
second
issue
I
linked
it's
it's,
maybe
is
explained
in
shorter
terms,
because
I
see
it
fits
on
my
screen,
but
I
felt
this
explanation
was
necessary
to
understand
how
powerful
this
is.
A
You
are
able
to
like
have
the
entire
Wikipedia
as
a
pointer,
and
you
can
traverse
it
and
from
a
web
websites
like
in
web
browser
or
from
web
UI
interface,
and
you
progressively
get
content
fetched.
So
this
lazy,
co-hosting
idea
is,
is
a
proposal
to
like
extend
or
to
change
or
tweak
this
co-hosting
experiment
in
a
way
that,
like
makes
use
of
this
powerful,
primitive
and
some
exploration,
how
the
user
interface
would
look
like.
A
A
Because
Wikipedia
is
like
40
gigabytes
or
16
gigabytes
with
images
I'm,
not
sure
it's
like
ridiculous
and
to
fudge
that
if
you
like
start
a
click,
yeah
I
want
to
co-host
this,
and
if
you
start
prefetching
entire
thing,
should
that
be
a
blocking
cooperation
or
a
background
operation,
and
then
we
don't
have
API
to
track
progress
of
this
patch.
So
it's
a
very
an
open
question
and
challenges
how
to
communicate
with
user
and
how
to
build
those
interfaces.
I
wrote
some
notes
here.
A
Basically,
either
we
I
sort
of
tend
to
lean
on
side
where
we
do
lazy
co-hosting
by
default,
and
only
if
user,
like
explicitly
said,
yeah
I,
won't
entire
Wikipedia
or
I
want
at
this
entire
website
physically
on
my
desk.
So
that's
that's
much
where
I
am
right
now,
but
it
needs
a
lot
more
work
and
I'm
really
happy.
Thank
you,
hug
for
like
crazy,
low
scripts
and
working
on
spec
and
to
helping
us
pushing
this
hosting
experiment
further
cause.
A
This
is
exactly
why
I
started
this
experiment
to
like
discover
those
hidden
gems
in
our
API
and
what
user
experiences
could
we
build
around
them,
because
this
m
FS
property
of
being
a
pointer,
a
laser
pointer?
Was
there
always?
We
just
did
not
think
in
a
way
how
to
productize
that
or
how
to
expose
that
to
user
and
I
really
want
to
remove
the
spinning
interface
from
ipfs
companion.
Make
it
more
like
seamless
and
I
feel
like
if
compile
would
do
this,
like
lazy,
pinning
with
like
optional
switch
to
fall?
A
B
C
A
A
C
A
That's
one
of
open
questions.
The
way
I've
been
thinking
if
it's
lazy
I
still
want
to
know
when,
like
the
route
like
the
the
website
got
updated
and
the
pointer
in
my
MF
s
would
still
get
updated.
So
if
I
want
to
go
to
Anna,
fest
I
would
see
those
snapshots,
so
it
would
still
be
lazy
right.
We
could
just
the
open
question
is
how
do
we
distinguish
distinguish
yeah?
So
you
what
how
this
prefetching
would
work?
Would
you
just
I
want
to
preferably
fetch
every
website
I
have
co-hosted?
A
No,
probably
not,
but
I
want
prefetch
everything
apart
from
Wikipedia
or
I
want
to
add
Wikipedia
as
a
lazy.
However,
I
want
to
add
this
other
smaller
website
as
a
full
snapshot,
because
it's
my
website
I
want
to
co-host
it
fully.
So
that's
a
good
question:
how
do
we
distinguish
it?
At
the
MF
s
level,
we
could
like
add
the
suffix
to
a
directory
name
or
something
I'm,
not
sure.
A
A
Or
we
could
have
a
separate,
separate
sub
directories
like
like
yeah,
it's
probably
probably
harder
to
answer
is
how
to
represent
that
in,
like
companion
UI
this
choice
when
you
want
to
decide
when
you
want
to
decide,
is
it
lazy
or
full
and
like
how
to
give
this
UI
to
a
user?
Who
may
not
have
the
all
the
technical
context?
So
probably
we
should
tell
Oh
Wikipedia
is
like
60
gigabytes
in
size.
A
Stuff
like
that
yeah,
so
that's
like
where
we
are
with
this
lexical
house
thing
it's
in
the
discussion
phase
right
now,
but
it's
pretty
powerful
25
you
and
I
had
discussion
with
Michelle
Hartsville
last
week
on
the
Kinning
generally,
how
pinning
in
ipfs
ecosystem
works
and
I
mentioned
this
em
FS
experimentation.
We
have
so
probably
I
hope.
We
also
also
bounce
some
ideas
with
her
to
see
how
we
can
refine
this
UX.
B
A
And
also,
we
sort
of
start
seeing
there
are
problematic
or
missing
KPIs
for
things
like
when
is
this
block
or
is
this
CID
in
local
repository?
Is
it
fully
in
this
local
repository
or
only
a
part
of
it
or
how
many
percent
of
this
thing
is
local?
We
don't
either
don't
have
api's
or
will
you
need
to
chain
multiple
api's
through
to
get
dots?
So
that's
also
like
super
powerful,
forcing
function
on
like
thinking
about
those
needs
and
what
those
things
could
unlock
so
expect
more
on
co-hosting
in
the
future.
I
guess
guys.