und0ck3d

und0ck3d

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.

Showing Posts 1 to 10

und0ck3d

und0ck3d OP

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. ^.^;

und0ck3d

und0ck3d OP

Hey, thanks for your suggestion!

I didn’t knew about Liquid before and it seems a very nice template language. I think it could be a very good choice for the themes question. I’ll take it in consideration and create a PR and see how it fits.

Now that you’re speaking about it, it does makes more sense to use an alternative template language rather than eex for this case, for the security reasons.

Thanks!

outlog

outlog

while we are on templates there are a lot of good CCA licensed templates here: https://html5up.net - so you are free to adapt/implement them in your cms as long as you keep the attribution in the bottom. And say I use your cms and one of these themes and want to get rid of the attribution I can pay them for a non-attribution license (think it’s 19$)..

so could be a great idea to ship with some of these out of the box - also implementing a few different ones of them provides good exercise for the capabilities and structure of your cms..

und0ck3d

und0ck3d OP

The templates available in HTML5Up seem very nice, and as you outlined, a good way to test the CMS capabilities and easiness of customization.

I also think it would be better to make some more themes available instead of only the “default”, and I will use those to make a few ones available so that there are also various examples of how themes are built. In fact, I’ll get rid of the default theme for now (Simplo) and just go with one of those, as they are already solid and very pretty works.

The way themes are currently “installed” is with a mix task: mix contento.new [repo] so Contento itself doesn’t ship with any theme (in it’s own repository) and instead it installs the default theme on “Setup”. I think it’s better this way than including the themes in the Contento repo for a few reasons: don’t overload the repo, easier to maintain both (theme and platform) and eventually to make a kind of “marketplace” where people can check every themes available and install them with a one-click action.

Regarding licensing of those templates, including the attribution will be ofc the default behaviour, as I’ll do it myself when converting those templates to themes, however as end-users will be able to edit themes, they can easily remove attribution even without paying the “license upgrade” from HTMLUp, and that’s something I can’t and don’t want to control… I guess it will just a question of good sense from those using them to leave the attribution.

Thanks for that great suggestion!

P.S.: I’m already working on implementing/testing Liquid and so far so good, it seems a very nice choice. However I’m still learning a few more things about it so I’m going slowly on this to make sure everything is ok.

dimitarvp

dimitarvp

This project looks stale. Any news? Will it be developed further?

odyright

odyright

??? still active?

StevenNunez

StevenNunez

Project is gone.

— All posts loaded —

Where Next? Top

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 92995 915
New
caslu
I want to open this thread for you all to discuss and help those who really like Ash but are still hesitant to use it in a real project. ...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
GES233
I’m posting this in response to Jose’s recent tweet (Cr. link) : People are sleeping on Elixir for a coding harness: Hot-code swappi...
New
marciol
It would be helpful to have a list of companies worldwide that hire engineers without prior experience in Elixir. Often, it can be quite ...
New
durvia
Anyone running long-lived stateful processes on BEAM? We’re building an AI agent runtime and would love to compare notes. We’re a small ...
New
nseaSeb
I’ve just put together a small POC exploring PDF inspection from Elixir/Phoenix: The idea is pretty simple: drag & drop a PDF in a...
New

Other Trending Topics Top

garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
wintermeyer
There are three potential reasons for members of this forum to have a look at https://vutuv.de You are tired or annoyed of LinkedIn. Yo...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews