►
Description
Parent issue (Creating a Gitlab Onboarding Page): https://gitlab.com/gitlab-org/incubation-engineering/jamstack/meta/-/issues/7
JSON to Yaml Converter:
- https://gitlab.com/gitlab-org/incubation-engineering/jamstack/meta/-/issues/9
Highlighting in Yaml:
- https://gitlab.com/gitlab-org/incubation-engineering/jamstack/meta/-/issues/10
A
A
A
One
of
the
tasks
I
had
was
to
have
this
yaml
file
be
created
by
javascript,
one
from
a
javascript
object,
so,
basically
being
able
to
programmatically,
create
yammer.
Usually
to
do
this,
we
use
the
yaml
gis
package,
which
does
a
splendid
job,
converting
json
to
yaml,
except
this
file
is
supposed
to
make
life
easier
for
humans.
So
I
really
really
need
to
support
them
with
comments,
and
I
wanted
to
be
able
to
programmatically
inject
those
comments.
Too.
A
Comments
obviously
aren't
supported
by
jason,
so
I
created
a
workaround.
I
created
this
tool
working
title,
yaml
jason.
I
think
there's
probably
something
better
than
that,
but
it
takes
a
json
object
as
an
input
and
similar
to
yaml
js
has
a
dump
function
that
outputs
the
yammer
now
the
difference
to
yammer
js
is
that
I
can
feed
it
a
json
object
that
looks
like
this.
A
A
A
Now,
although
the
engine
that
powers
all
this
is
now
completely
different,
the
front
end
looks
pretty
much
similar
to
how
it
did
last
week.
But
if,
in
the
future
we
were
to
add
another
very
deeply
nested
setting
it's
as
easy
as
just
specifying
this
in
the
json,
including
the
comment.
A
This
obviously
could
even
come
from
the
api.
So
by
doing
this,
this
way
I'm
paving
the
way
for
backend,
driven
automated
project
type
detection
and
different
pipeline
structures
for
different
projects.
A
This
part
is
much
more
visual
luckily,
but
what
I
wanted
to
do
is
I
want
the
user
to
immediately
get
a
visual
feedback
of
the
changes
that
they
made.
A
A
The
yaml
editor
is
basically
just
a
view
wrapper
around
the
source
editor.
It
takes
a
json
object
in
the
format
that
I
explained
earlier
with
comments
as
a
value
prop,
but
it
also
takes
another
prop
called
highlight.
This
can
be
a
path
to
basically
any
point
within
the
object
that
was
passed
as
a
value.
A
A
So
to
wrap
this
up.
I've
spent
some
time
this
week
on
improving
and
productionalizing
the
interface
that
helps
creating
the
gitlab
ci
yaml
file
for
pages
I'd
say
this
page
is
now
about
70
complete.
I
need
to
write
a
few
more
tests
and
clean
up
the
code
before
this
can
be
merged,
but
next
week,
I'd
also
like
to
reiterate,
on
the
left
hand,
side
of
this
interface.
A
On
the
other
hand,
a
form
with
more
than
three
input
fields
automatically
feels
cluttered,
so
I
want
to
break
it
down
into
a
multi-step
interface,
but
that
is
something
for
next
week.
So
we'll
talk
about
it,
then
this
was
it
for
this
week's
update.
I
hope
you
enjoyed
watching,
see
you
next
week.
Bye.