Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ajclarkson/frankly
A Sinatra & Markdown CMS
https://github.com/ajclarkson/frankly
Last synced: 3 months ago
JSON representation
A Sinatra & Markdown CMS
- Host: GitHub
- URL: https://github.com/ajclarkson/frankly
- Owner: ajclarkson
- Archived: true
- Created: 2013-01-17T11:51:36.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2014-12-17T22:57:00.000Z (almost 10 years ago)
- Last Synced: 2024-02-13T02:08:22.426Z (9 months ago)
- Language: Ruby
- Size: 285 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Frankly
Simple Web Publishing
Frankly is a lightweight web publishing platform that runs on the Sinatra framework. You simply write your content using markdown, create a few template files, and then stick everything in a git repository, Frankly takes care of the rest.
Primarily designed for writers who code, Frankly provides a stable platform for deploying any website to a Ruby server (such as Heroku). This repository contains all of the source code for the CMS and the frankly site, which it is powering, and as such is reasonably self documenting.
## Getting Started
If you're raring to get stuck in with the default site and see just how easy it is to author content with Frankly, you only need four commands:
(_This assumes you have a Ruby environment installed_)1.
git clone http://github.com:ajclarkson/frankly.git
2.cd frankly
3.bundle install
4.rackup
By browsing to [http://127.0.0.1:9292](http://127.0.0.1:9292) you should now see a local version of this site, and that's it. Frankly is running.
## Adding a Page
Adding a page to your local development version is also incredibly simple. So let's add a new page. Leave the already running server running, and open a new terminal, then get to the folder where frankly is. To add a new page simply type:
rake new_page
You will be prompted to give a title, and then the page is generated, it'll be inside the
'pages'
folder. If you open it up you'll be faced with the front matter:
---
title: Example Page
date: 2013-01-21 13:06
slug: example-page
author: ajclarkson
---
This is all editable, as long as you keep the formatting. The title field is what will be used as link text in the navigation menus and will be displayed at the top of the new page. The slug meanwhile, is the url used to access that page. Beneath this, you can start writing in markdown and authoring your page. Once you've done that, all you need to do is update the site indexes, which is done with the following command:
rake generate
Refresh the site, and your new page will be part of the site navigation, and all should be working fine. Simple.
## Adding a new Blog Post
Blog posts work almost identically to adding new pages, except you create them with:
rake new_post
Other than that, follow the same procedure, editing the new file in the
'posts'
folder and runningrake generate
which will index the new blog post, and you'll be able to see it on the archive page.## Customisation
Now that you know how to add content to the default site, you can get your hands dirty with the templating system. Everything is controlled using [HAML](http://haml.info) layouts and CSS files. The layouts can be found in the
'views'
folder, while the CSS, javascript, and images are all within'public'
Configuration options regarding the generation of your site can be found at the top of the
'Rakefile'
. These allow changes to items such as the default author name that gets added to posts.When templating, leave the
'/views/shared/nav.haml'
file where it is, because any changes will just be overwritten next time you run therake generate
command.## Good Luck!
That should be plenty for you to get started using Frankly. The documentation will be updated as the CMS evolves, as will the blog on this site. It's early days yet, but Frankly can already provide a stable, fast, platform for your blog or site. Any questions / comments can be levied [@ajclarkson](http://twitter.com/ajclarkson), and issues can be posted through [GitHub](http://github.com/ajclarkson/frankly)
Thanks for checking out Frankly!
— Adam