►
Description
Local-first software design is almost opposite to traditional models. Software built this way has some clear advantages for a large application set but isn't without its challenges.
We'll take a look at replication of Merkle-CRDT replicas using pinned IPNS/IPFS and conclude with a demo of Opal (https://github.com/cypsela/opal) + Zzzync (https://github.com/tabcat/zzzync) .
A
So
opal
Dynamic
content
from
Merkel
crdts
and
it's
kind
of
meant
to
be
more
modular
and
memory,
efficient
implementation
of
orbit
DB
and
it's
it's
also
meant
to
represent
kind
of
General
States
for
like
web
app
components.
A
It's
written
in
typescript
and
it'll
be
released
at
the
end
of
the
year
so
as
a
with
working
with
crdts,
the
very
kind
of
closely
associated
with
local
first
software
and
consistency
is
out
the
window.
So
a
lot
of
pretty
much
every
other.
Every
system
has
their
own
kind
of
sort
of
source
of
truth,
instead
of
it
being
based
in
like
a
a
once
one
system
somewhere.
A
A
A
There
are
a
lot
of
fundamental
there's
a
few
fundamental
limits
and
one
of
them
is
uniqueness.
So
it's
very
difficult
to
kind
of
pick
a
winner
between
two
different
updates
when,
when,
when
any
any
update
can
be
merged
at
a
later
point
and
it
it
tends
to
I
like
to
think
it.
A
They
play
well
with
other
systems
so
that
you
can
kind
of
have
a
system
with
consensus
like
a
blockchain
and
kind
of
point
to
one
of
these
Merkel
or
these
these
crdt
logs.
A
So
there
are
a
few
downsides,
sometimes
they're,
not
very
intuitive,
for
developers
a
lot
of
times.
A
If
you
would
come
into
the
orbit,
DB
Community,
chat
and
kind
of
ask
why
some
other
states
not
the
the
same
as
their
their
peers
and
whether
there's
a
like
this
lack
of
global
state,
which
is
sometimes
hard
to
for
for
new
people
to
understand
it's
also
not
as
much
tooling
yet
and
then
and
JS
live
P2P
they're.
A
The
hole
punching
is
not
ready,
but
it
it's
it's
on
the
road
map
for
the
first
quarter,
2023,
which
is
which
I'm
pretty
excited
about,
and
one
of
the
one
of
the
largest
downsides
is
replica
availability,
and
this
has
to
do
with
being
able
to
merge
with
peers
on
the
network
so
that
you
can
kind
of
build
on
on
new
States
and
kind
of
keep
building
on
other
people's
updates.
A
So
there's
a
a
replicator
than
a
building
for
Opel
that
will
push
each
Piers
replica
up
to
like
a
storage
back
end
and
and
then
update
like
an
ipns
link
to
the
new
version
of
the
replica,
so
that
the
replicas
kind
of
stay
online
and
they're
available,
so
that
you
can
kind
of
have
this
Edge
computed
application
without
having
any
having
a
need
or
needing
to
run
any
like
machines.
Specialized
machines
yourself,
I,
like
a
lot
of
other
people.
I
wanted
to.
A
You
know
build
dapps
when
I
got
in
to
this
kind
of
space
and
I
don't
want
to
run
my
own
infrastructure,
so
I'm
hoping
this
will
help
with
that.
A
Oops
so
there's
a
it's
a
very
simple
demo
and
it
just
shows
the
first
Pier
kind
of
coming
online,
making
some
entries
and
then
pushing
them
to
to
web3,
storage
and
and
then
another
peer
Company
online
and
seeing
the
updated
ipns
and
pulling
the
changes.