PHPackages                             aptoma/silex-bootstrap - 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. aptoma/silex-bootstrap

AbandonedArchivedLibrary[Framework](/categories/framework)

aptoma/silex-bootstrap
======================

Basic bootstrap for Silex based projects. Use as template for getting started quickly.

1.0.0(12y ago)3139415[1 issues](https://github.com/aptoma/silex-bootstrap/issues)MITJavaScript

Since Feb 10Pushed 11y ago4 watchersCompare

[ Source](https://github.com/aptoma/silex-bootstrap)[ Packagist](https://packagist.org/packages/aptoma/silex-bootstrap)[ RSS](/packages/aptoma-silex-bootstrap/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (11)Versions (3)Used By (0)

Silex Bootstrap
===============

[](#silex-bootstrap)

[![Build Status](https://camo.githubusercontent.com/b160202029d405d5a178f69f90cba400ac3fb76bac91c3857b6c01d292520464/68747470733a2f2f7472617669732d63692e6f72672f6170746f6d612f73696c65782d626f6f7473747261702e737667)](https://travis-ci.org/aptoma/silex-bootstrap)[![Coverage Status](https://camo.githubusercontent.com/5e9c4b9625c0815a9b144e2b3fd794463d2e9ca8d61858b066547aadab8ed779/68747470733a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f6170746f6d612f73696c65782d626f6f7473747261702e737667)](https://coveralls.io/r/aptoma/silex-bootstrap)

This repository provides a starting point for building Silex applications. It includes:

- A directory structure
- Stubs and default configuration
- CI/QA config

This repo is complemented by [aptoma/silex-extras](https://github.com/aptoma/silex-extras), which contains various helpers, base classes and services. The idea is that you will never need to do a rebase of Silex Bootstrap, as all significant updates will be handled by Silex Extras, which you can simply update through Composer. In fact, you should delete the `.git`directory after downloading the project.

To start a new project, run:

```
$ composer create-project aptoma/silex-bootstrap

```

To get started, you probably want to have a look at `app/app.php` to see the config bootstrap, and then have a look `app/routing.php`, `src/App/Controller/DefaultController.php` and `src/App/views` for some basic actions.

This repo contains a few example files and comments like this one, that should obviously not remain within the project. When ready, delete everything in this section, and update the following sections according to your project.

Project Name
============

[](#project-name)

Tech Lead: name

Product Description
-------------------

[](#product-description)

### Purpose

[](#purpose)

A clearly defined and documented purpose and lifetime

### Technologies

[](#technologies)

A description of technologies and components/modules

### Integration with other company products

[](#integration-with-other-company-products)

A description of other company products in use/integrated with

### External Dependencies

[](#external-dependencies)

A description of external dependencies (both people and systems)

### Roadmap

[](#roadmap)

Roadmap and maintenance plan

Folder Outline
--------------

[](#folder-outline)

```
app     # Config and bootstrap
src     # Application code and views
tests   # All tests
web     # Public doc root. Front controller and assets.

```

During installation and CI these folders may also be created:

```
build        # Reports from various build tasks
node_modules # Dependencies managed by npm
vendor       # Dependencies managed by Composer

```

By default, logs and cache is written to `app/log` and `app/cache` respectively.

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

[](#installation)

Describe how to install

Development
-----------

[](#development)

Install dependencies (requires [Composer](https://getcomposer.org/download), \[NPM\](manager) and [Bundler](http://gembundler.com/) to be installed globally)

```
$ composer --dev install
$ npm install
$ bundle install

```

You also need to install jshint and grunt-cli globally:

```
$ npm install -g jshint@0.9.1
$ npm install -g grunt-cli@0.1.6

```

Set up paths for logging and caching:

```
$ grunt mac-paths # or ubuntu-paths if you are using ubuntu
# OR if your web server doesn't run as the default _www
$ grunt exec:mac-paths:
# OR grunt exec:ubuntu-paths:

```

To watch your project, run `bundle exec guard`;

### Permissions

[](#permissions)

For local development, you need to setup cache and log dirs:

```
mkdir -p app/cache
mkdir -p app/log

```

These directories must be writable both by the web server and the command line user. On a UNIX system, if your web server user is different from your command line user, you can run the following commands just once in your project to ensure that permissions will be setup properly. Change www-data to your web server user:

#### 1. Using ACL on a system that supports chmod +a (Typically MAC OS X)

[](#1-using-acl-on-a-system-that-supports-chmod-a-typically-mac-os-x)

Many systems allow you to use the chmod +a command. Try this first, and if you get an error - try the next method:

```
$ sudo chmod +a "_www allow delete,write,append,file_inherit,directory_inherit" app/cache app/log
$ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/log

```

#### 2. Using Acl on a system that does not support chmod +a (Typically Ubuntu)

[](#2-using-acl-on-a-system-that-does-not-support-chmod-a-typically-ubuntu)

Some systems don't support chmod +a, but do support another utility called setfacl. You may need to [enable ACL support](https://help.ubuntu.com/community/FilePermissionsACLs)on your partition and install setfacl before using it (as is the case with Ubuntu), like so:

```
$ sudo setfacl -R -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs
$ sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs

```

Describe other stuff needed for local development

Testing
-------

[](#testing)

PHP Tests are powered by PHPUnit. You have several options.

- Run `phpunit` if PHPUnit is installed globally.
- Run `bin/vendor/phpunit` to run version installed by Composer. This ensures that you are running a version compatible with the test suite.
- Run `grunt phpunit`, basically just a wrapper for `bin/vendor/phpunit`
- Run `bundle exec guard` to watch files and run tests when source or test files change

JavaScript testing is under development.

Contributing
------------

[](#contributing)

Describe guidelines for contributing.

To contribute to *this* project, simply create a feature branch, do your thing, and open a pull request. If you do lot's of stuff in your project that you think should be easily backported to older `silex-bootstrap` based projects, consider extracting them to separate packages that can be managed by Composer, or add them to [silex-extras](https://github.com/aptoma/silex-extras).

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance19

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 93.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

4475d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6814bf369d6df442037fc62c78ca37d85189df13400e924a8c384c846ab0e42f?d=identicon)[gunnarlium](/maintainers/gunnarlium)

---

Top Contributors

[![gunnarlium](https://avatars.githubusercontent.com/u/207556?v=4)](https://github.com/gunnarlium "gunnarlium (31 commits)")[![huyderman](https://avatars.githubusercontent.com/u/209594?v=4)](https://github.com/huyderman "huyderman (2 commits)")

---

Tags

bootstrapsilex

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/aptoma-silex-bootstrap/health.svg)

```
[![Health](https://phpackages.com/badges/aptoma-silex-bootstrap/health.svg)](https://phpackages.com/packages/aptoma-silex-bootstrap)
```

###  Alternatives

[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[contao/core-bundle

Contao Open Source CMS

1231.6M2.4k](/packages/contao-core-bundle)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[vesparny/silex-simple-rest

A simple silex skeleton for rest api

3346.8k](/packages/vesparny-silex-simple-rest)[chameleon-system/chameleon-base

The Chameleon System core.

1026.5k3](/packages/chameleon-system-chameleon-base)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
