PHPackages                             jacksleight/coast - 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. jacksleight/coast

ActiveLibrary[Framework](/categories/framework)

jacksleight/coast
=================

Web application framework for PHP

0.8.14(9mo ago)8961[1 PRs](https://github.com/jacksleight/coast/pulls)2MITPHPPHP &gt;=7.1.0CI failing

Since Feb 16Pushed 9mo ago3 watchersCompare

[ Source](https://github.com/jacksleight/coast)[ Packagist](https://packagist.org/packages/jacksleight/coast)[ Docs](http://coast.jacksleight.com/)[ RSS](/packages/jacksleight-coast/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (3)Versions (45)Used By (2)

Coast
=====

[](#coast)

[![Packagist](https://camo.githubusercontent.com/c052f1353e2208ec15d47f87670f9c3b42c358c33c8212247bde12e33d33ef09/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6a61636b736c65696768742f636f6173742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jacksleight/coast)[![Travis](https://camo.githubusercontent.com/f7558159f6c1138f09733cff61375c4bc829922adfd9fc2bb497b254ca7eed4a/687474703a2f2f696d672e736869656c64732e696f2f7472617669732f6a61636b736c65696768742f636f6173742f6465762e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/jacksleight/coast)[![Coverage Status](https://camo.githubusercontent.com/9cf5071a06c99c68f1f18c1318d902ba8cb5fc18b32c05e39ed2e72eed3acdd4/687474703a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f6a61636b736c65696768742f636f6173742f6465762e7376673f7374796c653d666c61742d737175617265)](https://coveralls.io/r/jacksleight/coast)[![License](https://camo.githubusercontent.com/c3c119b3d6770a0ad6ac822c15877c0d7f84e6bc67ac9203f7358125bea48d88/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6a61636b736c65696768742f636f6173742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/jacksleight/coast)

Coast is a web application framework. The goal of Coast is to provide a simple, lightweight and flexible framework for building high-performance, modern web apps. Some parts of the API were inspired by the Connect and Express node.js frameworks.

Components
----------

[](#components)

All components are designed to be as standalone as possible and can generally be used independently. Many implement `App\Executable` for use as middleware in applications, these are marked with a ★.

- **Acl**
    - Access control list
- **App, Request, Response** ★
    - Simple Express inspired application logic
    - HTTP request and response data handling
    - Lazy loading of application dependencies
    - Sub-applications
- **Config**
    - Load and merge config files into config object
- **Controller** ★
    - Request controller
- **Csp** ★
    - Content security policy header generation
    - Generation of nonce values
- **Csrf** ★
    - Cross site request forgery protection
- **Feed**
    - ATOM feed generation
- **Filter**
    - Data filtering
- **Http**
    - HTTP client (based on cURL)
- **Image** ★
    - Image manipulation
    - Requires [intervention/image](https://github.com/Intervention/image)
- **Lazy** ★
    - Lazy load files/closures on demand
- **Model, Collection**
    - Base entity and entity collection classs
    - Works with Filter, Transformer, Validator
- **Path, Dir, File**
    - Path, directory and file manipulation
- **Resolver**
    - Resolves strings, files, routes etc. into URLs
- **Router** ★
    - Path and method routing
- **Session** ★
    - Session management and data wrapper
- **Sitemap**
    - XML sitemap generation
- **Transformer**
    - Data transformation
- **Url**
    - URL manipulation
- **Validator**
    - Data validation
- **View** ★
    - Powerfull view component
    - Child and parent (wrapper) views
    - Extensible views
    - Output capture
- **Xml**
    - SimpleXML extensions

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

[](#installation)

The easiest way to install Coast is through [Composer](https://getcomposer.org/doc/00-intro.md), by creating a file called `composer.json` containing:

```
{
    "require": {
        "jacksleight/coast": "dev-master"
    }
}
```

And then running:

```
composer.phar install
```

Hello World
-----------

[](#hello-world)

Create a new file called `app.php` containing:

```
