und0ck3d

und0ck3d

Contento: an open source CMS built with Elixir, Phoenix and Postgresql

Hello everyone!

A few days ago I’ve created a topic here about how people were creating CMSs with Elixir and Phoenix. I’ve been studying some available work such as Changelog CMS (a very specific podcasts CMS built by and for Changelog.com) and Thesis (a lightweight CMS that can be plugged in into any Phoenix application and enables easy content edition and dynamic pages).

Although those are great projects from which I’ve taken some ideas and learnt some things, what I was looking for isn’t nothing like any of these projects. Instead I was looking for something more “Wordpress-ish” in the sense that I download it, install a theme into it, setup database and :tada: a new website was born. Why not Wordpress? I simply don’t like PHP and I’m in love with Elixir!

So, I put my hands to work, and I’ve started building Contento an open source CMS built with the power of Elixir, Phoenix and Postgresql (and, of course, the awesome community behind those).

It doesn’t have much features, it isn’t production-ready (nor near it) and it isn’t very fancy (yet!). I’m not looking for users, I’m looking for people that would like to see such project gain life and contribute to it!

The goals for this project are few and simple:

  1. Create a powerful CMS with Elixir/Phoenix/Postgresql that can be extended with different themes and plugins.
  2. Make it easier to anyone, independently if they have programming knowledge or not, to create their own website.
  3. Spread the word about Elixir, Phoenix and all the awesomeness that’s around them!

Give it a try (check the repo here) and let me know your opinion, ideas and suggestions!

Thanks in advance!

P.S.: If you wish to discuss more about this project, I’ve created a #contento channel in Elixir Slack.

Most Liked

und0ck3d

und0ck3d

Hello everybody!

I’ve been making several updates to what will be the initial version which hopefully will come out soon for everyone to test and get a better feeling of what’s intended for this project.

There are some things I’d appreciate community’s opinion to make sure the best approach is being applied. Such things are:

  • The tool created to help (mostly non-technical) users create a new Contento-based project, like: mix contento.new [dest] (read more about it here)
  • The themes structure (there isn’t yet any documentation on it, but it’s on it’s way soon), which you can check in the default theme repo Simplo
  • How a theme’s template is compiled (on-request at runtime), you can check ContentoWeb.Themer.
  • And how theme’s assets are served (take a look)

There are some pages available already to help anyone interested getting started, here are some useful links:

Currently I’m not making any updates to the code itself, I’m just documenting code and creating the User Guides.

Thanks everyone in advance!

outlog

outlog

wonder if it would make sense to use something like liquid for the templates so they can be made “safe” and available for end user editing, but maybe I am wrong to assume that eex should not be made available to the end user..

elixir lib:

OvermindDL1

OvermindDL1

Yeeeah I definitely would not expose eex to the end user. ^.^;

Where Next?

Popular in Discussions Top

matthias_toepp
I’d love to hear what people think about Wisp, the new Gleam web framework started by Gleam’s primary creator Louis Pilfold. Gleam, alon...
New
Donovan
Hello everyone, I’m so glad to have discovered this awesome community. Thanks for creating it! This is my second post, and apologies for...
New
WolfDan
After doing a port from a c++ library to my project in phoenix I’ve seen that I need a faster way to run this algorithm and I found this ...
New
sashaafm
I’m trying to evaluate the best combo/stack for a BEAM Web app. Right now I’m exploring Yaws a bit, after having dealt with Phoenix for a...
New
laiboonh
Hi all, I am trying to convince my team to use liveview over the current react. What are some of the points where one should consider us...
New
Ankhers
Just a little information upfront. Generally speaking, if I feel like I need to either break a pipe chain or use an anonymous function in...
New
AstonJ
Are there any Elixir or Erlang libraries that help with this? I’ve been thinking how streaming services like twitch have exploded recentl...
New
rower687
Hi all, I’ve been reading a lot about the “let it crash” term and how supervising processes and the whole messaging passing make an elixi...
New
tomekowal
Hey guys! I want to create a toy project that shows a chart of temperature over time and updates every 5 seconds. I feel LiveView is per...
New
griffinbyatt
Sobelow Sobelow is a security-focused static analysis tool for the Phoenix framework. For security researchers, it is a useful tool for g...
New

Other popular topics Top

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
lessless
I believe there are people here who are dealing with CSV files import on the daily basis, and since Excel is a really popular tool there ...
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
skosch
To my knowledge, put_in, Map.update etc. all have the one limitation of not automatically creating intermediate keys when needed (for exa...
New
aesmail
Hello guys, I have finally made it. I created an admin interface for a framework. It’s been on my todo list for years and with the curre...
New
aalberti333
As the title describes, I’m trying to run Enum.map() over a list of key/value pairs, where the value is a map. My data looks like this: ...
New
rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
Qqwy
Update: How to use the Blogs & Podcasts section You can post links to your blog posts or podcasts either in one of the Official Blog...
3271 127536 1222
New

We're in Beta

About us Mission Statement