About

Now what is this?!

WebsiteMixer is a VERY early stage open source content management system built using Python 3.6 and Flask.

I'm a huge fan of what WordPress and Drupal provide for PHP, and I'm also a huge fan of Python and while I enjoyed some of the aspects of Django, I found it more complicated than I liked considering I just wanted to have a 5 page website, maybe add a blog. I shouldn't have to reinvent the wheel just to get the basics, and I want the flexibility to add plugins and themes and manage them accordingly. This was something Django didn't do unless there was already a Debian package in a repository and that just didn't seem to fit my needs. So as I was learning more Python, I found Flask and fell in love! As I was learning and writing code, I found I was duplicating myself frequently, not just in code, but in files and deployments, especially when I wanted to replace several WordPress sites with Flask. I wanted to have a system that was easy to use, code that was reproducible, flexible, that allowed for plugins and templates, but that wasn't WordPress/Drupal/Django. So using Flask, I made WebsiteMixer! My goal and hope for this project is to keep a steady, professional grade core set of code and features, and then help people understand how to write plugins and templates and integrate the config.json file to build their own sites quickly and easily!

What do I need to run this?

At this point, I'm supporting Ubuntu 16.04 with Python 3.6 and the latest Flask packages. There is now a requirements.txt in the github repo. I use DigitalOcean and a 512MB server instance for most of my testing, and I scale sites using larger instances, or multiple instances and a load balancer as needed. If you would like a free $10 credit, use my referal code and I will get a kickback if you stay a few months which will go towards supporting hosting costs.

So what comes next?

At this point I'm still adding more plugins and themes to see how extendable the platform is and what other things may need to be worked on. If you're interested in helping, please get in touch! So far this has been a one person hobby project and I'd like to build a team so of course there are ground floor opportunities. But you have to be able to submit code to join, so open an issue, or create a pull request on one of the repos and let me know where you can help!