►
From YouTube: Chatterbox - Alan Shaw
Description
A chat application built in Typescript using IPFS and libp2p pubsub.
For more information on IPFS
- visit the project website: https://ipfs.io
- or follow IPFS on Twitter: https://twitter.com/IPFS
Sign up to get IPFS news, including releases, ecosystem updates, and community announcements in your inbox, each Tuesday: http://eepurl.com/gL2Pi5
A
Chatterbox
a
chat
application
built
in
typescript
using
ipfs
and
live
p2p
pub/sub
I
built
this
when
I
was
on
parental
leave
because
can't
stop
anyway.
There
are
some
I
had
some
goals
with
this,
one
of
which
was
learn
typescript,
because
I
want
to
understand
why
people
keep
asking
us
for
this
feature.
First,
us,
but
also
I.
Had
this
really
good,
well,
I.
Think
I
had
an
idea
too,
that
we
might
be
able
to
use
typescript
to
generate
our
Doc's
from.
A
We
could
actually
have
better
Doc's
by
having
typescript
type
definitions
in
the
repo
and,
at
the
same
time
as
having
better
Doc's,
also
service.
This
whole
community
of
typescript
people,
so
I
thought
that
might
be
a
good
idea.
So
that's
why?
What
like
wanted
to
do
this?
Second
up
I
wanted
to
deploy
Jace
ipfs
in
production,
I
sort
of
strongly
feel
that
we
should
be
like
dogfooding
our
own
stuff
and
using
it.
A
I
wanted
to
expose
like
errors
or
cpu
problems
or
memory
problems
that
might
happen
in
a
Jace
IVFs
node,
that's
running
for
a
long
time,
because
all
our
tests,
they
spin
up
nodes,
they
last
4
seconds,
and
then
they
spin
them
down.
We
test
that
they
work
we're
good,
but
they
don't.
What
they
don't
test
is
that
the
node
can
spin
up
stay
up
for
days
or
months
or
weeks
on
end
and
not
not
explode.
A
So
I
wanted
to
I
wanted
to
feel
that
pain,
because
I
sort
of
feel
that
we
should
be
feeling
that
pain,
I
think
that
people
who
do
feel
that
pain,
don't
always
open
an
issue
on
our
repos.
They
they
put
things
down
and
then
they
walk
away.
They're
like
that
is
enough
for
me.
So
yeah,
you
know,
and
it
can
be
like
problems
with
like
bugs,
but
it
could
be
like
developer
experience
or
like
user
experience.
Things
like
I
couldn't
use
it
properly
and
I
want
to
know.
A
I
want
to
feel
that,
because
I
want
to
make
it
better
and
I
strongly
feel
that
we
should
be
doing
that
so,
and
the
third
thing
was
like
I
had
this
big
idea
that
we
should
like
jeaious
ipfs
should
be
able
to
be
its
own.
Preload
nodes
like
we've
got
preload
nodes,
but
there
go
ipfs
nodes.
Why
are
they
go?
A
So
many
repos
I
made
there's
a
core
of
Chatterbox,
which
is
just
the
which
is
just
the
bit.
Where
everything
happens,
you
give
it
an
IP
FS
instance.
It
subscribes
to
pub
sub
channels
and
stuff
like
that.
There
is
a
web
extension
like
I
built
this,
so
that
you
could,
you
could
have
like
many
different
clients
in
many
different
places.
Like
you,
I've
built
a
web
extension
version
of
it,
but
you
could
have
it
in
electron.
A
You
could
have
it
in
you
know
as
a
web
page
or
whatever
doesn't
matter,
you
just
include
the
decor
and
you
should
be
able
to
use
it
as
a
relay
in
pops.
Up
turns
a
relay
is
like
just
another
node
that
is
listening
to
the
same
topics
as
you
are,
which
is
kind
of
fun
and
there's
a
bot
I
built
a
robot,
but
for
my
own
kind
of
testing
and
sanity,
because
I
wanted
to
I
wanted
other
friends
on
the
network.
That
I
knew
were
actually
talking
to
me.
A
So
I
built
a
robot
who's
running
in
the
cloud
summer,
just
says
random
stuff
every
so
often,
and
then
obviously
there
are
some
answerable
scripts
I
had
to
write
because
I
was
deploying
it
to
actual
servers
on
digital
ocean
and
I
was
going
to
say
Dropbox,
but
anyway,
okay,
so
demo
this.
This
has
all
been
running
like
the
whole
time.
Web
extension,
you
remember
I
said
it's
a
web
extension.
This
is
it
so
it's
been
running,
and
in
here
you
can
see
like
this
column.
Here
is
meant
to
be
the
list
of.
A
We
don't
have
avatars
yet
okay,
so
we
just
got
these
randomly
drawn
once
this
is
meant
to
be
the
list
of
all
appears
on
the
network
that
you
can,
that
you
can
currently
see
and
the
this
little
I
changed
the
the
diagram
thing.
So
it's
a
heart,
because
these
are
your
friends,
so
we've
got,
we've
got
the
so
we've
got
two
two
of
them
here.
We've
got
me
me
on
Chrome
and
me
over
here,
and
you
can
do
stuff
like
you.
A
Can
you
can
say
things
like
I
think
I
think
over
here
I've
already
added
this
yeah
I've
added
the
chrome
one
as
a
friend
already,
and
you
can
just
sort
of
hit
the
the
friend
thing
and
then
they
become
will
don't
become
friends.
You
can
add,
add
people
by
pure
ID,
so
I've
got
my
robot
somewhere
over
here.
Here
is
so
I
can
just
sort
of
copy
that
peer,
ID
and
I
can
add
him
as
a
friend
by
peer
ID.
A
B
Meant
to
be
like
a
notification,
but
actually
this
is
automatically
to
turn
them.
I
do
not
disturb
so
normally
I
would
get
a
message
for
that
notification
for
that,
but
but
there
they
are.
Let
me
just
quickly
do
that
one
more
time
yeah
and
you
get
my
notifications,
okay,.