Skip to content
This repository

Simple blogging Application, written in clojure

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 resources
Octocat-spinner-32 src
Octocat-spinner-32 test
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .travis.yml
Octocat-spinner-32 Procfile
Octocat-spinner-32 README.md
Octocat-spinner-32 project.clj
Octocat-spinner-32 run.sh
README.md

cblog

Version 1.0.0 and instructions for the basic setup will be released soon.

DEMO: http://www.martinkremers.de

Local setup:

  1. Install MongoDB on localhost
  2. git clone & ./run.sh
  3. Browse "/bootstrap"
  4. Browse "/admin" and login with default credentials admin:admin
  5. Change admin password
  6. Enter amazon s3 credentials in Settings section

Heroku setup:

  1. git push to heroku
  2. setup mongohq & logging for the application
  3. Next steps see local setup 3.ff

Super-awesome features:

  • No local storage, using amazon s3
  • No local session, using mongodb session adapter
  • No local data, using mongodb
  • Markdown for post editing
  • Tagcloud, Image minifier,...

Blogging software written in clojure.

Next todos:

  • Configurable Blogroll
  • Tags & Tag Cloud
  • Add fancy ajax response in media section (delete,...)
  • Slugify s3 key names (spaces cause errors,...)
  • Thumbnail generation for images
  • S3 connection and binary data upload & Media Section
  • RSS feed (RSS & Atom templates for mustache are available)
  • Fix link to recent posts
  • Refactor sandbar "layout" function to moustache tempalte
  • Datamodel for posts,...
  • Simple functionality to add crud posts
  • Defensive bootstrap of database with default categories, settings and users
  • CRUD for categories
  • Categories with URLfriendly name
  • Routes to view categories and posts by /:category and /:category/:post
  • AdminUI, Output and Selection for categories
  • HideTitle Option for posts
  • Settings section (configure blog name, admin password, ...)
  • Enhance AdminUI with more ajax feeling & (Web-)design changes
  • Fix broken build (heroku and 'local runnable' app - see core.clj)
  • Fix broken links from adminui
  • Change password functionality - settings page
  • Automatic (client side) generation of URLfriendly name
  • Print application health on admin welcome page. Runtime/getRuntime ...
  • Fix broken links "recent posts"
  • Fix "number does not work as password"
  • Write the persistent user sessions to mongodb, currently existing frameworks do not work with monger and clojure 1.3. Fork and refactor them
  • Image include functionality for wysiwyg editor
  • A lot error handling stuff (messages on admin overview) - missing settings,...
  • Move this page to a todo page and write instructions how to install this blog *maybe
  • Implement cache with clojure.core.cache *maybe
  • Minify javascript

After initial release:

  • Write a session timeout (check monger-session for date values)
  • Comments, Askimet Integration

Tech goal:

  • Building reference projects for clojure
  • High scalable
  • No data stored on application servers
  • Run it on Heroku & S3
  • Optional caching with memcached
  • Binary data in S3, other data in MongoDB (sessions, posts, ...)
  • "Reference" building for a clojure web stacks

Ideas:

  • More Info on admin welcome page (server load, database stats)

Usage

git clone, ./run.sh

License

Copyright (C) 2012 Martin Kremers

Distributed under the GPLv3, see http://www.gnu.org/licenses/gpl.html

Something went wrong with that request. Please try again.