Skip to content

🎁 Web application project skeleton based on Nette Framework (@nette), Doctrine (@nettrine) and Contributte (@contributte) libraries by @f3l1x.

License

Notifications You must be signed in to change notification settings

bileto/webapp-skeleton

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Website πŸš€ contributte.org | Contact πŸ‘¨πŸ»β€πŸ’» f3l1x.io | Twitter 🐦 @contributte


Goal

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

Focused on:

  • latest PHP 7.4 & 8.0
  • nette/* packages
  • Doctrine ORM via nettrine/*
  • Symfony components via contributte/*
  • codestyle checking via CodeSniffer and ninjify/*
  • static analysing via phpstan
  • unit / integration tests via Nette Tester and ninjify/*

Demo

https://examples.contributte.org/webapp-skeleton/

Installation

To install latest version of contributte/webapp-skeleton use Composer.

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

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 >= 10 database. You can start it manually or use docker image postgres:10.

    docker run -it -p 5432:5432 -e POSTGRES_PASSWORD=webapp -e POSTGRES_USER=webapp postgres:10
    

    Or use make task, make loc-postgres.

  3. Custom configuration file is located at app/config/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 loc-web.

  6. Open http://localhost and enjoy!

    Take a look at:

Install using docker-compose

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

    composer create-project -s dev contributte/webapp-project
    
  2. Modify app/config/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 http://localhost and enjoy!

    Take a look at:

Features

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

  • PHP 7.4+
  • πŸ“¦ Packages
    • Nette 3.0
    • Contributte
    • Nettrine
  • 🌳 Structure
    • app
      • config - configuration files
        • env - prod/dev/test environments
        • app - application configs
        • ext - extensions configs
        • config.local.neon - local runtime config
        • 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
    • log - runtime and error logs
    • temp - temp files and cache
    • tests - test engine and unit/integration tests
    • vendor - composer's folder
    • www - public content
  • ❗ Tracy
    • Cool error 500 page

Notable changes

  • $user variable in templates is renamed to $_user

Composer packages

Take a detailed look πŸ‘€ at each single package.

Nettrine

Dev

Screenshots

[email protected] / admin

Development

See how to contribute to this package.

This package is currently maintaining by these authors.


Consider to support contributte development team. Also thank you for using this project.

About

🎁 Web application project skeleton based on Nette Framework (@nette), Doctrine (@nettrine) and Contributte (@contributte) libraries by @f3l1x.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 74.9%
  • HTML 9.1%
  • Latte 8.2%
  • CSS 5.4%
  • Makefile 2.0%
  • Dockerfile 0.3%
  • JavaScript 0.1%