#A Tour of Bean CMS
Bean CMS is a minimalist content management system. I built it as a personal replacement for the great rwtxt. The motivation to build Bean CMS was:
-
I wanted to self-host rwtxt, but had some changes I wanted to make to the core application.
-
I wanted an excuse to build something using redbean.dev and fullmoon while demonstrating that Redbean and Lua are viable options for building web applications
As a result of using redbean, Bean CMS is deployed as a single >7MB file that runs natively on Windows/MacOS/Linux -- all without cross-compilation! Take a look at the repo for installation instructions.
#Getting up and running
In short, download beancms.com
from the releases page. On Linux/MacOS, chmod +x beancms.com
. Then, on Windows/Linux/MacOS, simply run the file while using the current directory to store persisted data:
./beancms.com -D ./
Right away, you'll notice a data
directory created next to your executable. This is where all persisted data for Bean CMS is stored. Bean CMS uses SQLite as supported by Redbean, which means to back up your site data, all you have to do is copy the data
folder.
Upon opening the site at localhost:8080
, you'll see the welcome page. From here, new users can register, or existing users can log in.
{{ img(src="https://github.com/user-attachments/assets/a21b2e28-971c-40a1-9d60-8784160ab11f") alt="welcome page" }}
#User Page
Upon logging in, users are able to customize their profile pages by modifying their personal title, filling in an intro section, selecting from multiple free/open-source themes, or adding their own custom CSS that will apply to their profile page as well as their writings.