dwyl / adoro

❤️ The little publishing tool you'll love using. [work-in-progress]
http://www.dwyl.io/
32 stars 8 forks source link

Contentful? #105

Open nelsonic opened 6 years ago

nelsonic commented 6 years ago

Contentful came to our attention while researching a potential CMS to use for a customer website/app. https://www.contentful.com/ image

What?

The Contentful "Features" page: https://www.contentful.com/features makes it clear that Contentful is a Service. It is a RESTful API which allows you to store your content in their Database. image

Rich Text Editor

Having a Rich Text editor is a great feature for many "normal" CMS-based sites. https://www.contentful.com/features/#rich-editor-interface image

The point to note here is that only the users who are logged into Contentful will get this UX/UI. There is no mention of a "white label" (custom branding) so anyone editing content that is stored in the Contentful Database will see the Contentful UI. That will not be "desirable" in our case.

Roles and Permissions

https://www.contentful.com/features/#roles-permissions image

This is a nice feature to have, however only ONE role is "included" in the "micro space" (see pricing below) as a result to even use this feature we need to spend $10k/year!!

We need at least 4 roles for the CMS-based project we are working on. And I would recommend further segmenting each of our roles into a logical hierarchy the way that WordPress does: https://codex.wordpress.org/Roles_and_Capabilities#Summary_of_Roles

Implementing RBAC https://en.wikipedia.org/wiki/Role-based_access_control from scratch is not difficult. It's just a matter of gathering/understanding the requirements, assigning hierarchy to the roles and writing a function that checks for the appropriate permissions for each content/field type.

Content Modeling

Having a UI to model content is a nice feature to have which makes both developers and content owners life better.

https://www.contentful.com/features/#content-modeling image

The questions you need to ask are:

How Much? (Pricing: $10,548 / year)

The pricing is https://www.contentful.com/pricing/ image

There is a "free trial" to get you (your project) started (hooked). Their "Micro Space" may even be appealing to a small business; "only" $39/month ... But as soon as you reach 5000 items of content (which a "listing" website will reach immediately!) you pay $879 / month ... >> $10,548 / year We could chose to view this as an "acceptable" operating cost. But we've really got to ask:

image

I have a personal hate for products that have multiple tiers of pricing. Why not give everyone the same product/service and simply charge for usage?!

Lifetime Cost?

A typical website has a "useful life" of around 3 years. see: https://www.orbitmedia.com/blog/website-lifespan-and-you This means that if we decide (on our client's behalf) to use Contentful, we are committing them to paying $31,644. This might be a "drop in the ocean" for some clients whose budget is millions, but for other clients it can easily exceed the budget for the entire project. 💸

To be clear: I feel that there are definitely companies/organisations/projects for whom Contentful would be a good choice. However the overall budget for the CMS-based project would need to be at least $200k to justify the "vendor lock-in". If Contentful had a more reasonable monthly fee e.g: $100/month (which is more in-line with the true cost of the service!) I would not hesitate in recommending their service to more clients.

NOT Open Source.

The Contentful "CMS" is NOT "Open Source"; it's 100% Closed. Their objective is to make it as easy as possible for you to store your data in their database (service) so that you can pay them (a lot of) money to access it. (see pricing above).

GitHub?

The contentful GitHub organisation https://github.com/contentful is a collection of SDK/API wrappers which allow developers to CRUD content with the Contentful API. image

Conclusion?

We could perform a more "in depth" analysis of Contentful's features/benefits, but as it stands the price is a "deal breaker" we aren't going to overcome. Therefore we cannot recommend the service to Clients with lower budgets. When cash is constrained we must be more creative with our CMS options.

relates to: https://github.com/club-soda/club-soda-guide/issues/5