All Projects → 4xxi → skeleton

4xxi / skeleton

Licence: other
4xxi Symfony Skeleton is an extension for the official Symfony Skeleton with symfony flex used in 4xxi

Programming Languages

PHP
23972 projects - #3 most used programming language
Dockerfile
14818 projects
shell
77523 projects

Projects that are alternatives of or similar to skeleton

swoole-server-bundle
No description or website provided.
Stars: ✭ 15 (-72.22%)
Mutual labels:  symfony3, symfony4
SemartSkeleton
Symfony Skeleton
Stars: ✭ 49 (-9.26%)
Mutual labels:  skeleton-application, symfony-skeleton
EasyAuditBundle
A Symfony Bundle To Log Selective Events
Stars: ✭ 84 (+55.56%)
Mutual labels:  symfony3, symfony4
kotlin-multiplatform-example
A barebones Kotlin multiplatform project with JVM and JS targets
Stars: ✭ 15 (-72.22%)
Mutual labels:  skeleton-application
create-fastify-app
An utility that help you to generate or add plugin to your Fastify project
Stars: ✭ 53 (-1.85%)
Mutual labels:  skeleton-application
symfony4-user
User registration and authentication with Symfony 4
Stars: ✭ 32 (-40.74%)
Mutual labels:  symfony4
doctrine-json-odm
JSON Object-Document Mapping bundle for Symfony and Doctrine
Stars: ✭ 15 (-72.22%)
Mutual labels:  symfony4
ypereirareis.github.io
DevOps, Symfony and VueJs developer. Articles and experiences on docker, grafana, prometheus, RabbitMQ, PHP, MySQL, Admin, Nginx, Haproxy, SSH,...
Stars: ✭ 15 (-72.22%)
Mutual labels:  symfony3
symfony5-jwt-restapi
API for Meeting app development
Stars: ✭ 21 (-61.11%)
Mutual labels:  symfony4
dadata-bundle
Бандл для работы с API ДаДата.
Stars: ✭ 14 (-74.07%)
Mutual labels:  symfony4
cart
Simple Symfony 4 shopping cart application. App boilerplate
Stars: ✭ 18 (-66.67%)
Mutual labels:  symfony4
noise-php
A starter-kit for your PHP project.
Stars: ✭ 52 (-3.7%)
Mutual labels:  skeleton-application
p3arsec
Parallel Patterns Implementation of PARSEC Benchmark Applications
Stars: ✭ 12 (-77.78%)
Mutual labels:  skeleton-application
payments-DDD-ES-tutorial
This is tutorial project to learn how to connect Symfony4 and docker compose with Domain Driven Design and Event Sourcing
Stars: ✭ 23 (-57.41%)
Mutual labels:  symfony4
symfony-docker
A template for new Symfony applications using Docker: ./install.sh && 🚀
Stars: ✭ 34 (-37.04%)
Mutual labels:  skeleton-application
Symfony-4-by-Samples
Symfony 4 by Samples is a personal project in which I will be creating small demos with tutorial in which to learn the symfony framework 4. Each of the samples contains a README.md file that indicates the purpose of the sample plus an step by step guide to reproduce it. Basic topics, login and register form, authentication, webpack encore, sass…
Stars: ✭ 40 (-25.93%)
Mutual labels:  symfony4
Symfony4-REST-API
www.thinktocode.com/2018/03/26/symfony-4-rest-api-part-1-fosrestbundle/
Stars: ✭ 54 (+0%)
Mutual labels:  symfony4
symfony3-wallpaper-website-tutorial
Symfony 3 beginner friendly wallpaper website tutorial series
Stars: ✭ 20 (-62.96%)
Mutual labels:  symfony3
laravel-skeleton
Скелет приложения на базе Laravel 5.3/5.4
Stars: ✭ 48 (-11.11%)
Mutual labels:  skeleton-application
symfocommerce
Symfony 3 framework based ecommerce (eshop) project
Stars: ✭ 25 (-53.7%)
Mutual labels:  symfony3

4xxi Symfony Skeleton

4xxi Symfony Skeleton is an extension for the official Symfony Skeleton (recommended way for starting new projects using Symfony Flex). It's main idea is to keep simplicity of official Skeleton, while adding must-have dependencies and default configs used in 4xxi for developing majority of the projects. It contains bare Symfony Skeleton with the following additions:

  • A minimal set of must-have bundles for production environment
    • ORM Pack (Doctrine + Migrations)
    • FrameworkExtraBundle (Annotations)
    • MonologBundle
    • Sensiolabs SecurityChecker
  • A set of bundles and tools that are necessary for development
  • Docker Compose and Docker Sync configs optimized for development under Linux and MacOS
  • Template for README.md with installation instructions

Creating new project

Creating new project with 4xxi Symfony Skeleton is as easy as running

composer create-project 4xxi/skeleton <project_name> 

where <project_name> is the directory where you want to setup a new project. New project is ready for development immediately after this step.

Additional configurations

Docker

4xxi Symfony Skeleton comes with Docker configuration for local development (includes PHP 7.1, nginx and PostgreSQL) on Linux and MacOS.

  • Follow instructions in docker-sync.yml and docker-compose-sync.yml and update project_name-data-sync volume with the real name of your project. This is needed to keep a unique name for data volume used by Docker Sync for developers working simultaneously on several projects.
  • Optional: Add additional PHP extensions to PHP Docker container by following instructions in config/docker/php/Dockerfile.
  • Optional: Add additinal services (like Redis, RabbitMQ, Elasticsearch) in docker-compose.yml.

Add Bundles and dependencies that are required by our project

Projects created by Flex include only the mininum amount of dependencies by default. Most of additional components that were previously a part of Symfony Standard Edition are not installed, so it is up to you to install them if they are really needed.

Most of components could be installed and auto-configured by Flex by running:

composer req <component>

The list of common Components that may be needed for the project:

  • api
  • asset
  • twig
  • workflow
  • web-link

Update installation instructions

When you are done with previous steps, update Installation Instructions and remove everything above them in this file.

Installation Instructions

Everything below is a template for Installation Instructions. It should be updated with the full steps for setting up your project.

Requirements

Configuration

Application configuration is stored in .env file.

Run cp .env.dist .env to apply the default configuration for local installations.

HTTP port

If you have nginx or apache installed and using 80 port on host system you can either stop them before proceeding or reconfigure Docker to use another port by changing value of EXTERNAL_HTTP_PORT in .env file.

Application environment

You can change application environment to dev of prod by changing APP_ENV variable in .env file.

DB name and credentials

DB name and credentials could by reconfigured by changing variables with POSTGRES prefix in .env file. It is recommended to restart containers after changing these values (new database will be automatically created on containers start).

Installation

1. Start Containers and install dependencies

On Linux:

docker-compose up -d

On MacOS:

docker-sync-stack start

2. Run migrations, install fixtures

docker-compose exec php bin/console doctrine:migrations:migrate

3. Build frontend

Place instructions to build frontend here.

4. Open project

Just go to http://localhost

Application commands

Add application-specific console commands and their description here.

Useful commands and shortcuts

Shortcuts

It is recommended to add short aliases for the following frequently used container commands:

  • docker-compose exec php php to run php in container
  • docker-compose exec php composer to run composer
  • docker-compose exec php bin/console to run Symfony CLI commands
  • docker-compose exec db psql to run PostgreSQL commands

Checking code style and running tests

Fix code style by running PHP CS Fixer:

docker-compose exec php vendor/bin/php-cs-fixer fix

Run PHP Unit Tests:

docker-compose exec php bin/phpunit
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].