PHPackages                             angel/core - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. angel/core

ActiveLibrary[Framework](/categories/framework)

angel/core
==========

Angel is a CMS built on top of Laravel.

v1.0.3(10y ago)448299[2 issues](https://github.com/JVMartin/angel-core/issues)1PHPPHP &gt;=5.3.0

Since Jul 10Pushed 9y ago14 watchersCompare

[ Source](https://github.com/JVMartin/angel-core)[ Packagist](https://packagist.org/packages/angel/core)[ Docs](https://github.com/JVMartin/angel)[ RSS](/packages/angel-core/feed)WikiDiscussions master Synced 6d ago

READMEChangelog (6)Dependencies (2)Versions (11)Used By (1)

Angel CMS for Laravel 4
=======================

[](#angel-cms-for-laravel-4)

Angel is a CMS built on top of Laravel. It is available via [Packagist](https://packagist.org/packages/angel/core).

**UPDATE 8/5/2016**: The Laravel 5 version of Angel is [underway here](https://github.com/JVMartin/angel5).

**UPDATE 3/9/2015**: Just wanted to give a heads up that this project is still in very active usage and deployment and is well tested by several large applications. The [eCommerce module](https://github.com/JVMartin/angel-products) that works with Stripe is also well tested and used.

Table of Contents
-----------------

[](#table-of-contents)

- [Demo](#demo)
- [Installation](#installation)
- [Customize](#customize)
- [Configuration](#configuration)
- [Using Slugs](#using-slugs)
- [Develop Modules](#develop-modules)

Demo
----

[](#demo)

[![Demo Screenshot](/assets/demo.jpg?raw=true)](http://youtu.be/et0QXJLHXoQ)

Installation
------------

[](#installation)

[![Installation Screenshot](/assets/install.jpg?raw=true)](http://youtu.be/2nAyi-u9jp0)

The Angel CMS was built on top of Laravel 4.1.

Install Laravel 4.1 using the following command:

```
composer create-project laravel/laravel --prefer-dist {project-name} 4.1.*
```

Add the `angel/core` package requirement to your `composer.json` file, like this:

```
"require": {
    "laravel/framework": "4.1.*",
    "angel/core": "1.0.*"
},
```

Issue a `composer update` to install the package.

After the package has been installed, open `app/config/app.php` and add the following to your `providers` array:

```
'Angel\Core\CoreServiceProvider'
```

While you're in there, set `debug` to true.

Delete:

- All the default routes in `app/routes.php`.
- All the default filters except for the `csrf` filter in `app/filters.php`.
- All controllers in `app/controllers` except `BaseController.php`.
- All the models in `app/models`, including `User.php`. You can replace it with a `.gitkeep` file for now to be sure to keep the `app/models` directory.

Create and configure your database so that we can run the migrations.

Finally, issue the following artisan commands:

```
php artisan dump-autoload                 # Dump a load
php artisan asset:publish                 # Publish the assets
php artisan config:publish angel/core     # Publish the config
php artisan migrate --package=angel/core  # Run the migrations
mkdir -p public/uploads/kcfinder          # Create the KCFinder uploads folder
touch public/uploads/kcfinder/.gitkeep    # Keep the folder
```

Customize
---------

[](#customize)

[![Customize Screenshot](/assets/customize.jpg?raw=true)](http://youtu.be/6iuZ8p-x5bY)

Every class in the core is easily extendable.

Let's start by extending the [PageController](https://github.com/JVMartin/angel/blob/master/src/controllers/PageController.php).

When extending this controller, you can create a method for each page URI that you've created in the administration panel.

Create the following file as `app/controllers/PageController.php`:

```
