Skip to content

lamminpaa/blogit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BlogIt

BlogIt is an open source blog engine alternative to Blogger and Wordpress and is built on Symfony2 and Bootstrap.

#Requirements

  • PHP 5.3 or later
  • Symfony2
  • MySQL

#Features

  • Multilingual UI, currently English and Finnish
  • Support for multiple users
  • Administration of categories and posts
  • WYSIWYG editor
  • Many nice Bootstrap3 themes out-of-the-box
  • Facebook comments plugin
  • Facebook like button

I have published my own blog about reading at www.kirjablogi.com and you are more than welcome to have a look around. Unfortunately this blog is only in finnish as the main target are finnish book readers.

#Installation

To install BlogIt to your server, go to desired folder of installation and clone the project from Github:

$ git clone [email protected]:artur-gajewski/blogit.git

If you want to contribute to the project, please fork it into your Github account and then clone it into your development environment.

$ git clone [email protected]:YOUR_GIT_ACCOUNT_NAME/blogit.git

Now go to your newly created directory.

Copy the distribution file for the parameters to your local file:

$ cp app/config/parameters.yml-dist app/config/parameters.yml

Modify the parameters.yml to reflect your database connections and blog settings of your preference.

Create the following directories inside app folder:

  • cache
  • logs

Prepare cache, logs folder permissions by running (double check your apache user on the first one):

$ sudo chmod -Rf +a "daemon allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
$ sudo chmod -Rf +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs

If you don't have Composer yet, download it following the instructions on http://getcomposer.org/ or just run the following command:

$ curl -s https://getcomposer.org/installer | php

Then, use the install command to install all dependencies:

$ php composer.phar install

After all dependencies are installed, make sure your app/cache and app/logs folder have write access. If there is no write access, the web server might output an internal error.

Connect to your database and run these commands:

CREATE USER 'blogit'@'localhost' IDENTIFIED BY 'secret';
GRANT ALL PRIVILEGES ON *.* TO 'blogit'@'localhost';

then run the following commands:

$ app/console doctrine:database:create

<<<<<<< HEAD

Next, you will have to create the database schema for the BlogIt:

$ app/console doctrine:schema:create

If you are developing BlogIt, you can update your schema with:

$ app/console doctrine:migrations:migrate

When you make changes to any of the entities, make sure to create migration file:

$ app/console doctrine:migrations:diff

Make sure you remember to commit the new migration file as well!

#Vagrant

If you want to get development environment setup fast, you can use Vagrant to setup development environment for BlogIt virtually. All you have to do is run Vagrant as follows:

$ vagrant up

======= $ app/console doctrine:schema:update --force

ea742830111663252434eb374e1d3f529cd49392

#Themes

BlogIt comes bundles with numerous Bootsrap 3 themes. In order to change the themes, modify the blog_theme variable in parameters.yml configuration file taht reflect the folder name present in web/bundles/blogmain/themes folder.

Each theme has its own CSS folder that contains the bootstrap.css file that builds the complete layout and theme.css which are meant to override certain components in the bootstrap.css definitions.

Themes are kindly provided by Thomas Park and his wonderful project at www.bootswatch.com

#Assets

BlogIt uses asset management and thus, you must install the assets.

$ app/console assets:install

#Creating admin users

In order to be able to administrate your new blog, you must create a user:

$ php app/console blog:user:create

Enter required information and after the console is done creating your user you are ready to login.

#Parameters

There are many things you can customize in BlogIt in the parameters.yml file:

blog_theme: Theme of the blog. blog_title: Title of the blog which will be visible in the navigation bar and browser's bar. blog_hero: Hero unit's big text. blog_subhero: Smaller head text under the hero unit. blog_copyright: Your copyright name. blog_email: email address you want to display to your readers. facebook_like_button: Whether you want to enable Facebook button after each post. facebook_commenting: Whether you want to enable Facebook comment plugin so that people can comment on your posts.

#RESTful API

If you want to implement blog writings to any third party website, it is very simple to do so by using BlogIt's RESTful API.

Fetch list of posts from newest to oldest: /api/v1/posts

Fetch list of posts in chronological order: /api/v1/posts/ordered

Fetch individual post: /api/v1/posts/{postId}

Fetch list of categories: /api/v1/categories

Fetch posts in individual category: /api/v1/categories/{categoryId}

You can test out the API on my personal blog and fetch posts with www.kirjablogi.com/api/v1/posts

#If you use BlogIt

If you end up installing your own instance of BlogIt, I kindly ask you to send me a quick note about it. I would love to see this blog engine in action some where in the world :)

#Contributing

We welcome any developers with various skills and background. Anyone is free to join the team and develop BlogIt.

If you want to join the team, please contact me and provide me with your github account ID so that I can add you to the team.

#Welcome

Enjoy and welcome to the project!

Artur Gajewski

[email protected]

Skype: artur.t.gajewski

About

Open source blog engine built on Symfony2

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 60.3%
  • JavaScript 25.4%
  • CSS 14.3%