PHPackages                             contributte/webapp-skeleton - 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. [API Development](/categories/api)
4. /
5. contributte/webapp-skeleton

ActiveProject[API Development](/categories/api)

contributte/webapp-skeleton
===========================

Webapp skeleton is full featured web app kit based on Nette Framework + Contributte and many useful packages by @f3l1x.

951.0k↓100%21[1 issues](https://github.com/contributte/webapp-skeleton/issues)[1 PRs](https://github.com/contributte/webapp-skeleton/pulls)PHPCI passing

Since Nov 26Pushed 1mo ago6 watchersCompare

[ Source](https://github.com/contributte/webapp-skeleton)[ Packagist](https://packagist.org/packages/contributte/webapp-skeleton)[ RSS](/packages/contributte-webapp-skeleton/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (4)Used By (0)

[![](https://camo.githubusercontent.com/192b87f7e0c3920a73ab6e27f42d504e2a22117e4f06bf8ceec9216bffca3c1a/68747470733a2f2f686561746261646765722e6e6f772e73682f6769746875622f726561646d652f636f6e74726962757474652f7765626170702d736b656c65746f6e2f)](https://camo.githubusercontent.com/192b87f7e0c3920a73ab6e27f42d504e2a22117e4f06bf8ceec9216bffca3c1a/68747470733a2f2f686561746261646765722e6e6f772e73682f6769746875622f726561646d652f636f6e74726962757474652f7765626170702d736b656c65746f6e2f)

 [![](https://camo.githubusercontent.com/e8ddd6bccc8486718827a6e512a1f2ee6c545b3f5896766922d98cd839d3d38a/68747470733a2f2f62616467656e2e6e65742f6769746875622f636865636b732f636f6e74726962757474652f7765626170702d736b656c65746f6e2f6d6173746572)](https://github.com/contributte/webapp-skeleton/actions) [![](https://camo.githubusercontent.com/a2439f50c83cb78952ea2f62fcf3e003b080e4a114d12f4037ab4009b0458a03/68747470733a2f2f62616467656e2e6e65742f636f6465636f762f632f6769746875622f636f6e74726962757474652f7765626170702d736b656c65746f6e)](https://codecov.io/gh/contributte/webapp-skeleton) [![](https://camo.githubusercontent.com/536cd914eb8c3f4d56a24b43eb8152dd9f9fe3d8d56bf990f67d48ed802f20e8/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f646d2f636f6e74726962757474652f7765626170702d736b656c65746f6e)](https://packagist.org/packages/contributte/webapp-skeleton) [![](https://camo.githubusercontent.com/6b93dc44f7c85ac76299d57606215db8f41a34757e1359383d84bb7df34181fa/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f762f636f6e74726962757474652f7765626170702d736b656c65746f6e)](https://packagist.org/packages/contributte/webapp-skeleton)

 [![](https://camo.githubusercontent.com/853b761bf00fd1d294c33e603795bb81c2234292b6cfa1f3396a62ca37099094/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f7068702f636f6e74726962757474652f7765626170702d736b656c65746f6e)](https://packagist.org/packages/contributte/webapp-skeleton) [![](https://camo.githubusercontent.com/aee9a4feeacbd40ac6377356c39a6ead5c5f2610ec2041994d49de6af00d261f/68747470733a2f2f62616467656e2e6e65742f6769746875622f6c6963656e73652f636f6e74726962757474652f7765626170702d736b656c65746f6e)](https://github.com/contributte/webapp-skeleton) [![](https://camo.githubusercontent.com/a8b1cd856d7d396fdebbe46947cc3507490acc267a02361e5e53bb7b820c95c3/68747470733a2f2f62616467656e2e6e65742f62616467652f737570706f72742f6769747465722f6379616e)](https://bit.ly/ctteg) [![](https://camo.githubusercontent.com/86d6416fc04f8bcc3daa7bf881526b9953b9726b1164d05c157c8713e3a73418/68747470733a2f2f62616467656e2e6e65742f62616467652f737570706f72742f666f72756d2f79656c6c6f77)](https://bit.ly/cttfo) [![](https://camo.githubusercontent.com/5d170ab94e6d594609561e16fe0f9e4293968fbd4dfcfafc5e11efc1415ef09c/68747470733a2f2f62616467656e2e6e65742f62616467652f73706f6e736f722f646f6e6174696f6e732f463936383534)](https://contributte.org/partners.html)

Website 🚀 [contributte.org](https://contributte.org) | Contact 👨🏻‍💻 [f3l1x.io](https://f3l1x.io) | Twitter 🐦 [@contributte](https://twitter.com/contributte)

 [![](https://camo.githubusercontent.com/082e2cb99bb05ca14724ba03a5d1ca4d6c94841757ba54477f0dbe3853b11c34/68747470733a2f2f6170692e6d6963726f6c696e6b2e696f3f75726c3d68747470732533412532462532466578616d706c65732e636f6e74726962757474652e6f72672532467765626170702d736b656c65746f6e253246266f7665726c61792e62726f777365723d6c696768742673637265656e73686f743d74727565266d6574613d66616c736526656d6265643d73637265656e73686f742e75726c)](https://camo.githubusercontent.com/082e2cb99bb05ca14724ba03a5d1ca4d6c94841757ba54477f0dbe3853b11c34/68747470733a2f2f6170692e6d6963726f6c696e6b2e696f3f75726c3d68747470732533412532462532466578616d706c65732e636f6e74726962757474652e6f72672532467765626170702d736b656c65746f6e253246266f7665726c61792e62726f777365723d6c696768742673637265656e73686f743d74727565266d6574613d66616c736526656d6265643d73637265656e73686f742e75726c)

---

Goal
----

[](#goal)

Main goal is to provide best prepared starter-kit project for Nette developers.

Focused on:

- PHP 8.4+
- `nette/*` packages
- Doctrine ORM via `nettrine/*`
- Symfony components via `contributte/*`
- codestyle checking via **CodeSniffer** and `contributte/qa`
- static analysing via **phpstan** and `contributte/phpstan`
- unit / integration tests via **Nette Tester** and `contributte/tester`

Demo
----

[](#demo)

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

[](#installation)

To install latest version of `contributte/webapp-skeleton` use [Composer](https://getcomposer.org).

```
composer create-project -s dev contributte/webapp-skeleton acme

```

### Install using [docker](https://github.com/docker/docker/)

[](#install-using-docker)

1. At first, use composer to install this project.

    ```
    composer create-project -s dev contributte/webapp-skeleton

    ```
2. After that, you have to setup Postgres &gt;= 10 database. You can start it manually or use docker image `dockette/postgres:12`.

    ```
    docker run -it -p 5432:5432 -e POSTGRES_PASSWORD=webapp -e POSTGRES_USER=webapp dockette/postgres:12

    ```

    Or use make task, `make docker-postgres`.
3. Custom configuration file is located at `config/local.neon`. Edit it if you want.

    Default configuration should look like:

    ```
    # Host Config
    parameters:
        # Database
        database:
            host: localhost
            dbname: webapp
            user: webapp
            password: webapp
    ```
4. Ok database is now running and application is configured to connect to it. Let's create initial data.

    Run `NETTE_DEBUG=1 bin/console migrations:migrate` to create tables. Run `NETTE_DEBUG=1 bin/console doctrine:fixtures:load --append` to create first user(s).

    Or via task `make build`.
5. Start your devstack or use PHP local development server.

    You can start PHP server by running `php -S localhost:8000 -t www` or use prepared make task `make dev`.
6. Open  and enjoy!

    Take a look at:

    - .
    -  ( / admin)

### Install using [docker-compose](https://https://github.com/docker/compose/)

[](#install-using-docker-compose)

1. At first, use composer to install this project.

    ```
    composer create-project -s dev contributte/webapp-project

    ```
2. Modify `config/local.neon` and set host to `database`

    Default configuration should look like this:

    ```
    # Host Config
    parameters:
        # Database
        database:
            host: database
            dbname: webapp
            user: webapp
            password: webapp
    ```
3. Run `docker-compose up`
4. Open  and enjoy!

    Take a look at:

    - .
    -  ( / admin)

Features
--------

[](#features)

Here is a list of all features you can find in this project.

- PHP 8.4+
- 📦 Packages
    - Nette 3+
    - Contributte
    - Nettrine
- 🌳 Structure
    - `app`
        - `config` - configuration files
            - `env` - prod/dev/test environments
            - `app` - application configs
            - `ext` - extensions configs
            - `local.neon` - local runtime config
            - `local.neon.dist` - template for local config
        - `domain` - business logic and domain specific classes
        - `model` - application backbone
        - `modules` - Front/Admin module, presenters and components
        - `resources` - static content for mails and others
        - `ui` - UI components and base classes
        - `bootstrap.php` - Nette entrypoint
    - `bin` - console entrypoint (`bin/console`)
    - `db` - database files
        - `fixtures` - PHP fixtures
        - `migrations` - migrations files
    - `docs` - documentation
    - `var`
        - `log` - runtime and error logs
        - `tmp` - tmp files and cache
    - `tests` - test engine and unit/integration tests
    - `vendor` - composer's folder
    - `www` - public content
- ❗ Tracy
    - Cool error 500 page

### Notable changes

[](#notable-changes)

- `$user` variable in templates [is renamed](https://github.com/contributte/webapp-skeleton/blob/master/app/model/Latte/TemplateFactory.php) to `$_user`

### Composer packages

[](#composer-packages)

Take a detailed look 👀 at each single package.

- [contributte/bootstrap](https://contributte.org/packages/contributte/bootstrap.html)
- [contributte/application](https://contributte.org/packages/contributte/application.html)
- [contributte/di](https://contributte.org/packages/contributte/di.html)
- [contributte/cache](https://contributte.org/packages/contributte/cache.html)
- [contributte/http](https://contributte.org/packages/contributte/http.html)
- [contributte/forms](https://contributte.org/packages/contributte/forms.html)
- [contributte/latte](https://contributte.org/packages/contributte/latte.html)
- [contributte/mail](https://contributte.org/packages/contributte/mail.html)
- [contributte/security](https://contributte.org/packages/contributte/security.html)
- [contributte/utils](https://contributte.org/packages/contributte/utils.html)
- [contributte/tracy](https://contributte.org/packages/contributte/tracy.html)
- [contributte/console](https://contributte.org/packages/contributte/console.html)
- [contributte/webapp-skeleton](https://contributte.org/packages/contributte/webapp-skeleton.html)
- [contributte/event-dispatcher](https://contributte.org/packages/contributte/event-dispatcher.html)
- [contributte/event-dispatcher-extra](https://contributte.org/packages/contributte/event-dispatcher-extra.html)
- [contributte/neonizer](https://contributte.org/packages/contributte/neonizer.html)
- [contributte/mailing](https://contributte.org/packages/contributte/mailing.html)
- [contributte/monolog](https://contributte.org/packages/contributte/monolog.html)

**Doctrine**

- [contributte/doctrine-orm](https://contributte.org/packages/contributte/doctrine-orm.html)
- [contributte/doctrine-dbal](https://contributte.org/packages/contributte/doctrine-dbal.html)
- [contributte/doctrine-annotations](https://contributte.org/packages/contributte/doctrine-annotations.html)
- [contributte/doctrine-cache](https://contributte.org/packages/contributte/doctrine-cache.html)
- [contributte/doctrine-migrations](https://contributte.org/packages/contributte/doctrine-migrations.html)
- [contributte/doctrine-fixtures](https://contributte.org/packages/contributte/doctrine-fixtures.html)

**Dev**

- [contributte/dev](https://contributte.org/packages/contributte/dev.html)
- [ninjify/qa](https://contributte.org/packages/ninjify/qa.html)
- [ninjify/nunjuck](https://contributte.org/packages/ninjify/nunjuck.html)
- [phpstan/phpstan](https://github.com/phpstan/phpstan)
- [mockery/mockery](https://github.com/mockery/mockery)
- [nelmio/alice](https://github.com/nelmio/alice)

Screenshots
-----------

[](#screenshots)

[![](.docs/assets/screenshot1.png)](.docs/assets/screenshot1.png)

>  / admin

[![](.docs/assets/screenshot2.png)](.docs/assets/screenshot2.png)[![](.docs/assets/screenshot3.png)](.docs/assets/screenshot3.png)[![](.docs/assets/screenshot4.png)](.docs/assets/screenshot4.png)

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

[](#development)

See [how to contribute](https://contributte.org/contributing.html) to this package.

This package is currently maintaining by these authors.

[ ![](https://avatars2.githubusercontent.com/u/538058?v=3&s=80)](https://github.com/f3l1x)---

Consider to [support](https://contributte.org/partners.html) **contributte** development team. Also thank you for using this project.

###  Health Score

39

—

LowBetter than 85% of packages

Maintenance62

Regular maintenance activity

Popularity32

Limited adoption so far

Community25

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

 Bus Factor1

Top contributor holds 65.2% 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.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/538058?v=4)[Milan Šulc](/maintainers/f3l1x)[@f3l1x](https://github.com/f3l1x)

---

Top Contributors

[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (366 commits)")[![f3l1x](https://avatars.githubusercontent.com/u/538058?v=4)](https://github.com/f3l1x "f3l1x (93 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (57 commits)")[![petrparolek](https://avatars.githubusercontent.com/u/6066243?v=4)](https://github.com/petrparolek "petrparolek (11 commits)")[![vanam](https://avatars.githubusercontent.com/u/2945739?v=4)](https://github.com/vanam "vanam (8 commits)")[![felixure](https://avatars.githubusercontent.com/u/23188301?v=4)](https://github.com/felixure "felixure (7 commits)")[![ohmyfelix](https://avatars.githubusercontent.com/u/261235610?v=4)](https://github.com/ohmyfelix "ohmyfelix (4 commits)")[![DepkaCZ](https://avatars.githubusercontent.com/u/4254146?v=4)](https://github.com/DepkaCZ "DepkaCZ (3 commits)")[![jvitasek](https://avatars.githubusercontent.com/u/8986306?v=4)](https://github.com/jvitasek "jvitasek (2 commits)")[![michalhlavka](https://avatars.githubusercontent.com/u/15013378?v=4)](https://github.com/michalhlavka "michalhlavka (2 commits)")[![VottusCode](https://avatars.githubusercontent.com/u/53915302?v=4)](https://github.com/VottusCode "VottusCode (1 commits)")[![cendak](https://avatars.githubusercontent.com/u/2562859?v=4)](https://github.com/cendak "cendak (1 commits)")[![mstefan21](https://avatars.githubusercontent.com/u/22791905?v=4)](https://github.com/mstefan21 "mstefan21 (1 commits)")[![racinmat](https://avatars.githubusercontent.com/u/5525771?v=4)](https://github.com/racinmat "racinmat (1 commits)")[![rdurica](https://avatars.githubusercontent.com/u/16089770?v=4)](https://github.com/rdurica "rdurica (1 commits)")[![solcik](https://avatars.githubusercontent.com/u/1543737?v=4)](https://github.com/solcik "solcik (1 commits)")[![universe-42](https://avatars.githubusercontent.com/u/3579000?v=4)](https://github.com/universe-42 "universe-42 (1 commits)")[![adaamz](https://avatars.githubusercontent.com/u/4347332?v=4)](https://github.com/adaamz "adaamz (1 commits)")

---

Tags

apiapittecontributtenette-frameworknettrineprojectskeletonweb

### Embed Badge

![Health badge](/badges/contributte-webapp-skeleton/health.svg)

```
[![Health](https://phpackages.com/badges/contributte-webapp-skeleton/health.svg)](https://phpackages.com/packages/contributte-webapp-skeleton)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M475](/packages/stripe-stripe-php)[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M270](/packages/twilio-sdk)[knplabs/github-api

GitHub API v3 client

2.2k15.8M186](/packages/knplabs-github-api)[facebook/php-business-sdk

PHP SDK for Facebook Business

90121.9M33](/packages/facebook-php-business-sdk)[microsoft/microsoft-graph

The Microsoft Graph SDK for PHP

65723.5M95](/packages/microsoft-microsoft-graph)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

73813.7M114](/packages/meilisearch-meilisearch-php)

PHPackages © 2026

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