jukvalim

jukvalim

Content management system for Phoenix?

Hi all!

I have a potential case that involves a web site with a lot of admin-generated content, as well as custom features. So it needs CMS functionality, and I could use some advice on my options. The way I see it, currently my options are:

  • Use a CMS made for Phoenix. Unfortunately, it doesn’t look like there is a well-featured one that is maintained. Thesis and Contento both look like they’ve been abandoned.

  • Use a headless CMS such as Ghost or Strapi and integrate with it. Downside: it makes the app more of a distributed system with related headaches and extra work.

  • Roll my own. Not loving this idea at the moment, even though I could maybe use something like Kaffy to build on.

  • Write the app in Python and use Django and Wagtail. Downside: loss of Elixir goodies, the concurrency model in particular.

If you have suggestions or ideas, I’d be happy to hear them.

Most Liked

elmercante

elmercante

Just wanted to drop my experience with BeaconCMS in here for anyone that needs it.

It works well, but (as of the time of writing this) the installation can be a little rough. Some dependency conflicts may pop up. For me, there was a need to add some of beacon_live_admin’s configuration files to the application where I have beacon_live_admin installed.

I ran into some issues with the install command (mix beacon.install --site my_site). Nothing major, but the script wasn’t finding the correct files to make a few of the code injections. You might want to use the manual instructions, instead.

The installation instructions don’t mention it, but you’ll need to create a database or use your existing one in the Beacon repo configurations. Also Beacon has migrations, so they’ll need to be ran.

TLDR: It works well. Installation was a little rocky, but I’m looking forward to working with Beacon CMS.

vincer

vincer

We’re working on an Elixir-based CMS with Postgres + Elasticsearch + Absinthe GraphQL + Vue over here. It’s not quite ready for prime-time, but getting there. Currently fighting with Absinthe to get dynamic runtime GraphQL schemas (for user-defined data models).

In the meantime, we’ve found Prismic to be pretty cost-effective for clients we work with as it has a generous free tier and a pretty good API. There’s also Storyblok, Takeshape and Sanity that have decent free tiers. I doubt it’s worth the trouble to maintain a separate CMS in Node, but your mileage may vary.

elmercante

elmercante

Understood. Yea I was hoping to give it a try, because I had a similar experience with the Beacon CMS demo a month or two ago.

I’m really glad to see Beacon’s making a strong open source effort, though. Really looks promising. I’m going to give BeaconCMS a try in a new project. I’ll try to add my experience to this thread.

Where Next?

Popular in Questions Top

nobody
How to bind a phoenix app to a specific ip address? could not find anything about that, nowhere, unfortunately, but for me this is quite...
New
tduccuong
Hi, is there any work on GUI with Elixir, that is similar to Electron/Javascript? My idea is to bundle Phoenix and BEAM into a single se...
New
9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
ovidiubadita
Hey all, I discovered Elixir and I love it. I always wanted to learn a functional programming and I intended to go for Haskell, but afte...
New
fireproofsocks
Forgive me if this is obvious, but how does one delete a database record WITHOUT selecting it first? Ecto.Repo — Ecto v3.14.0 has exampl...
New
jerry
Good day to you all. I have been struggling to get a query involving like and ilike to work. Can anyone assist me on this, please? pro...
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
srinivasu
How to handle excepions in elixir? Suppose i have A, B, C ,D, E modules. and each module has get() function. A.get() method will call t...
New

Other popular topics Top

Darmani72
If I have a post route which an argument: post /my_post_route/:my_param1, MyController.my_post_handler How would get the post params ...
New
chrismccord
As promised, the first release candidate of Phoenix 1.3.0 is out! This release focuses on code generators with improved project structure...
New
sorentwo
Hello! tl;dr Announcing Oban, an Ecto based job processing library with a focus on reliability and historical observability. After spen...
985 43657 311
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
Fl4m3Ph03n1x
About me? ( if you have nothing better to do than reading about some random guy in the internet :stuck_out_tongue: ) Hello all, this is ...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 43806 214
New
chrismccord
This release brings a number of exciting features, including integration with the new Phoenix LiveDashboard and Phoenix LiveView. There h...
New
gausby
I asked this very same question on twitter and got some interesting feedback, but I thought it would be a good question to ask here as we...
1207 39523 209
New
jay1
Why is it that the mnesia database isn’t the most preferred database for use in Elixir/Phoenix?
New
minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New

We're in Beta

About us Mission Statement