meshenka / sf-flex

A test project with Symfony4

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Symfony 4 Flex Demo App

Build Status Conventional Commits

A first test project with Symfony4 and Semver:

  • A "Last Seen" Microservice allowing to register user activity and query if a user is online or last seen
  • REST Style API
  • Secured with stateless JWT validation

Requirements

Build project

cd [project]
# display make help (autodocumented)
make
# install the all thing docker containers, composer, yarn etc
make install

Semver

The project use Sementic Versionning, your commit messages must comply to semver formatting (this is enforced with commitlint)

CHANGELOG and release is managed with standard-version which leverage semver commits format to produce correct Versionning

When you are read to create a new version, merge your code and Run

yarn release

It will take care of the following

  • bump version
  • update CHANGELOG
  • commit package.json and CHANGELOG.md
  • tag a new release

@see https://github.com/conventional-changelog/standard-version

Run for developpers

The full stack is dockerized @see file:./docker-compose.yml

make start # start project, after initial make install

What did i learn

  • Symfony Flex
  • Using XML Mapping for doctrine
  • Dockerize the infrastructure
  • Setup data fixture with faker + alice
  • Configure Symfony for non standard Namespaces
  • PHP Stan https://github.com/phpstan/phpstan
  • Autowiring + Autoconfigure + Type Hints
  • Azure Pipeline CI integration

About

A test project with Symfony4


Languages

Language:PHP 72.5%Language:Makefile 9.0%Language:Gherkin 6.2%Language:Twig 4.5%Language:JavaScript 2.9%Language:Dockerfile 2.5%Language:Shell 1.8%Language:SCSS 0.5%Language:CSS 0.1%