ctBlog (Version 0.6) Author: Jon Zgoda (jon atta ct-scan dotta comma) ================================================ Why? ===== Yes, another blog software...just what the world needs ;) So, okay, why in the world would I write another one...simply put, I dislike what I've seen. Blog software is just too bloated, it tries to be more than it should be. Things like multi-user blogs, why? A blog is for ONE person, at least that's the intention, one poster, multiple readers. If you want a message board, there are plenty of those out there too, go try one. Another reason, to practice my Ruby on Rails more (and this is the first app I built with 2.0.2). I'm a recovering PHP programmer, and there are plenty of systems that I built in PHP that I need to keep adding things to, so I needed a way to "take a break" from all that and focus on something fun. I wanted to truly implement the concept of "Keep It Simple, Stupid!", I look at many blogs, and I just cringe by all the crap down the sides. Future Improvements ==================== - Make the CSS Themes more dynamic, and easier to create through the administration interface - Re-work the Site Config to be more dynamic: descriptions and being displayed to the user should be variables in the database - Better Authentication System - DRY (Don't Repeat Yourself) it up a bit - Use an SVN repository (not part of the software, but I should do this) The "Future Improvements" list could grow, but I believe that once all these items have been accomplished, I will be at version 1.0. Requirements ============= - Rails 2.0.2 - Starting in 0.4, RMagick (http://rmagick.rubyforge.org) will need to be installed. Installation ============= First, it's a Rails app, and I'm assuming that anyone looking for a Rails powered blog already knows how to install a Rails app on THEIR server environment. (Currently my only criticism of Rails is that there is no clear (and simple) "best method" for serving pages.) I personally prefer the: MySQL -> app -> Pack of Mongrels -> Apache 2 (mod_proxy) It's quite a bit to setup, but works really great once it is. I go over this type of setup in my blog, starting at: http://blog.cintegrity.net/blog/article/11 For other installations, please consult your host's documentation on installing Rails applications on their servers. All personalization can be done through: config/database.yml => Database variables (but you already know that) public/stylesheets/ctblog.css => Shared Styles (both Blog and Admin) public/stylesheets/blog.css => The Blog layout public/stylesheets/admin.css => The Admin layout public/stylesheets/article.css => The .article class layout public/stylesheets/themes/* => each file is a color theme, can be selected in the Site Config Upgrade Notes ============== - Untar archive (tar -zxvf [filename]) - Rename directory (mv ctblog ctblog-[version]) - Copy old database file to new directory (cp ctblog-[oldversion]/config/database.yml ctblog-[version]/config/database.yml) - Update database (rake db:migrate RAILS_ENV=production) - Remove old link (rm web) and add new link (ln -s ctblog-[version] web) - Move uploaded images to new site folder (mv ctblog-[oldversion]/public/uploaded_images ctblog-[version]/public/) - Restart Mongrel Process(es) Themes ======= There are two installed themes, which can be selected through the Site Config. Theme files are located in: public/stylesheets/themes They are named: theme_[name].css [name] is the name of the theme, and is what should be typed into the text box under Site Config. The two pre-installed themes are: default - The original, and default installed theme. espresso_libre - A theme based on TextMate's theme by the same name Contact ======== For questions/comments regarding the system, please email me. Development Environment ======================== MacOS X 10.5.1 Ruby 1.8.6 Rails 2.0.2 MySQL 5.1.22 TextMate 1.5.7