
Relax – A CMS on Top of React and Node.js - hliyan
https://github.com/relax/relax
======
BillinghamJ
I don't understand why (seemingly) every CMS wants to get involved in the
request serving process.

I'd really like to see CMSes which only do content management, then expose
that content via very simple JSON APIs. Then I build the website myself
separately as a super lightweight HTML rendering service which pulls from the
CMS API.

Every CMS I've ever used didn't scale because its templating/rendering/request
stack was so heavy.

~~~
jwarren
Wordpress (yes I know) has a pretty robust JSON API plugin[1], which is being
rolled into core as of the next release (4.4). This means it's dead easy to
have a familiar CMS experience and then pull out the data in whatever way you
want.

There are plugins available for other CMSs[2] which do pretty much the same
thing too.

[1]: [http://v2.wp-api.org](http://v2.wp-api.org) [2]:
[https://github.com/pixelandtonic/ElementAPI](https://github.com/pixelandtonic/ElementAPI)

~~~
morgante
I disagree with the notion that the WordPress REST API plugin is "robust."
Having developed on it several times, it really doesn't live up to the
standard set by great APIs and has a lot of missing components.

Having a great JSON API baked into the core and dogfooded for the admin UI
should really be a focus for WordPress.

~~~
jwarren
The JSON API is getting baked into the next core release, and dogfooding it is
(afaik) on the medium-term cards.

Have you tried version 2? Personally I found it substantially easier to work
with than v1.

~~~
morgante
> The JSON API is getting baked into the next core release, and dogfooding it
> is (afaik) on the medium-term cards.

Awesome, that's great to hear.

> Have you tried version 2?

I've actually worked with both versions. v2 is nicer but also didn't support
some required functionality at all.

------
bruno12mota
Hi!

Relax creator here :)

Read most of comments here and I think there is still a lot users didn't try
out on Relax.

Relax is not just a page builder, it provides a way of creating schemas in a
graphic ui, and the magic happens when you create a template for that schema
and link data to components by drag and drop on the page builder.

Will eventually make some screencasts showing some cool features that past
unnoticed at first glance.

Also Relax is modular, developers can create react components that will work
perfect with the page builder.

Thanks all for the feedback! Keep it coming!

~~~
babby
Quick suggestion; grab ShareX and make some .webm's showcasing Relax for your
landing page. Much more accessible than learning how it all works. People want
to see results.

~~~
bruno12mota
Wasn't expecting this sudden inflow since it isn't even in beta version, so
didn't prepare anything to showcase it. I'll be working in refactoring it to
use graphQL and relay and then will make some videos to showcase it :)

------
beeboop
Is it just me or is the barrier of getting apps like this working seem silly?

You git clone the repo (assuming you have git installed). You then have to npm
install (assuming you have node installed). You then have to npm install
sharp. But before sharp can work, you have to npm install node-gyp. But in
before that can work, you have to make sure you're using a specific version of
Python, specific versions of Visual Studio (2010 and 2015 both seem to fail),
an SDK, and then run some console commands to set the WindowsSDKDir.

After you spend 30 minutes downloading and uninstalling and re-installing
different version of Visual Studio and SDKs and sorting out other error
messages, you're finally back to trying to install sharp. You install sharp,
but wait, then you need to download this zip file and change your environment
variables and PATH variables, which you have to Google to remember how to do
each time because it's done so rarely.

This is obviously all feasible and to an experienced developer not
intimidating, but for someone who's on a Windows machine and new to node, it
doesn't seem like simply getting a package running should be this difficult in
2015. The demo is broken and I wanted to check it out, but it's just not worth
the effort.

~~~
eloisant
If you want to develop on a Windows machine, unless you just want to do .NET
with Visual Studio, you're asking for trouble.

Just install Linux, it's much more user friendly.

~~~
beeboop
I use Linux at home, but I was attempting this at work where it's Windows. I
know Linux is much easier in this regard, but most more-beginner programmers
are still Windows (or sometimes OSX).

------
marknadal
This is quite the accomplishment for 1 developer. Haters going to hate, of
course there will be problems/bugs. But I think we should encourage people for
doing spectacular things, rather than gripe. Great job and keep it up!

~~~
bruno12mota
Thanks mate! Type of feedback that keeps me working on this full time :)

------
jwarren
It's very slick, but also rather confusing. Perhaps in future releases you can
work towards making the page creation process more structured and predictable.

~~~
bruno12mota
Will need an ux designer working fulltime with me, I'm not the best in that
area, so a lot of work to be done there still :)

------
WimLeers
[https://raw.githubusercontent.com/relax/relax/gh-
pages/asset...](https://raw.githubusercontent.com/relax/relax/gh-
pages/assets/images/screenshot.jpg) shows the key features are WYSIWYG-style
building of entire HTML pages.

This is not a Content Management System, but a Page Management System. A CMS
works with structured content and the relations between those pieces of
structured content. It allows you to model the data it needs to store, receive
(forms) and render. So you can then reuse, combine and display that data in
any way you need.

(Many projects/people conflate "page builder" with "CMS".)

That being said, this looks very nice :) There totally are use cases for an
easy-to-use page builder :)

~~~
andybak
> Many projects/people conflate "page builder" with "CMS"

That's because there's no clear bright line between the two. I've created
systems that lie on many points between these two extremes.

Sometimes the page metaphor is as simple as it sounds. Sometimes pages pull in
structured content or are placeholders for a subtree of structured content.
Sometimes the page structure plus metadata IS the structured content.

~~~
WimLeers
True, there's not always a clear distinction.

But giving lots of WYSIWYG-esque options to the content creator is a sure way
to end up with unstructured content that _cannot_ be reused, because it's got
so much garbage HTML in it, and so few semantics.

------
awjr
My major concern with a CMS that delivers a front-end is that it must to be
able to deliver "raw" HTML to be accessible and support search engines.

Yes search engines can index javascript but I still see a requirement of any
CMS to deliver html first and foremost.

~~~
bruno12mota
Relax does server side rendering with cache, so it is indexed by any search
engine.

------
melle
Completely off-topic, but I really like the logo. Who made it?

~~~
autoreleasepool
I wouldn't say the logo of the thing posted is off-topic.

------
factorialboy
Looks promising but the demo app is very slow. When I pick a CMS, the tech
stack is a consideration but I scrutanize the admin interface much much more.

~~~
bruno12mota
Relax had an enormous spike of traffic that I wasn't expecting, in the
meantime upgraded the server a bit to support the traffic it was getting.
There is still of course work to do to optimize it

~~~
gildas
Out of curiosity, was the server side rendering the cause of this issue?

~~~
bruno12mota
It was simply the huge traffic inflow and our server had only one core, poor
thing ahah. We've upgraded it to only two cores and it's day to night
difference. Server side of course has some weight but it has caching so it is
quite fast.

Major problem for now is that in some places it still doesn't retrieve data
with the right projection, for example when creating a menu it loads all the
pages with everything in it. That's why I'm switching to Relay to make this
easy pie and more reliable

------
lips
From a "site-builder" perspective, I find this to be an excellent balance
between high and low level interface. Perhaps less capable than something like
webflow, but the learning curve here is a piece of cake. But unfortunately,
the person who will feel freed by ease of use will likely be nonplussed at
installation.

------
0x4a42
I wanted to test the admin but in Firefox (v43 Developper Edition) it doesn't
work at all, I'm just getting the menus but the page body is empty. It works
under Chrome.

Anyone tested it with Firefox?

~~~
bruno12mota
There's an issue created for that
[https://github.com/relax/relax/issues/45](https://github.com/relax/relax/issues/45)
will take care of it after the Relay refactoring

------
wpyz
Avoid the media section if you are at work - it appears to have been subject
to some abuse already.

