
Ockam built a JAMStack site and it's 100% Open Source - mattgreg
https://www.ockam.io/learn/blog/ockam_website_is_open_source/#the-ockamio-open-source-stack
======
ChymeraXYZ
I don't know but somehow the ockam.io page being blank except the menu somehow
does not inspire confidence...

------
chrisacky
Code looks really clean. What's the naming reasoning behind `mdxComponents`.
Does mdx mean something?

`Blockqute` is that a typo?

I like how you handle MenuItems on mobile.

~~~
miedziak
Yea, it's related to [https://mdxjs.com](https://mdxjs.com). All .md files can
contain valid jsx code. This `mdxComponents` folder name, refers to components
that could both be - used directly in markdown files or used to generate html
from markdowns.

------
stabbie_mcgee
That's all good and well, but the actual website fails to render on Firefox
(OSX Catalina)

~~~
mattgreg
Thanks for the heads up...Maybe the build we did this morning has a bug for
firefox. Let me take a look.

~~~
stabbie_mcgee
Sorry I should add - Works fine for me in Safari and Chromium, in Firefox the
header and footer render fine, but the content fails to display. There are no
console errors.

------
ithrow
_There are two primary advantages for the ockam.io site to use JAMStack:

No need for a database or complex backends

Building and hosting are decoupled_

I don't get it, since when building a static site requires a database? Are
they referring to eliminating some kind of CMS?

~~~
miedziak
I think the point is that ockam site requires a flexible layer to manage its
data, which is focused mostly on .md documentation files. So Storing, updating
and managing these files through a database could be quite hard and annoying,
since all of them are stored across many different github repos. Moreover, all
these files, have to be shown in a user-friendly way. This data from .md
files, have to be converted to HTML at some point as well.

So what we have done is we keep all data on their place ( depended github
repos ), grab them before build time, and generate static content based on it.
Moreover, we have some mechanism to target particular branches/commits on
depended repos, and control when we want to trigger our pipelines.

So, replaying directly to your question - no, building a static site not
require a database. JAMStack architecture is helping us to provide and manage
our specific data sources.

~~~
mattgreg
...exactly!

------
yingw787
I really want to find a great open-source JAMStack documentation site for
APIs. Does one exist somewhere?

~~~
chrisacky
I'm planning on migrating all our Postman documentation away to
[https://github.com/slatedocs/slate](https://github.com/slatedocs/slate) if
that's what you mean.

PS. The reason why we're moving away from Postman is due to some tiny issue[1]
that has caused lots of "you need to click here to see everthing"
conversations.

[1] : [https://github.com/postmanlabs/postman-app-
support/issues/57...](https://github.com/postmanlabs/postman-app-
support/issues/5789)

~~~
yingw787
I'm not quite sure what you mean by "Postman documentation". Is this Postman's
documentation or documentation for other APIs (not sure if Postman has an
OpenAPI spec?).

I found slate, and it's super cool, but I haven't used it myself. There might
be some pipelining involved, from my understanding of projects like
[https://github.com/Mermade/widdershins](https://github.com/Mermade/widdershins)
where you convert OpenAPI specs to markdown?

I think the good folks over at getstream.io used slate as a base for their
docs CMS and loved it enough to write about it, and I'd love to read more
about slate in production. Looking forward to when you finish your migration
and if you write about it!

------
sobi3ch
This is a great platform for IOT!

