Skip to content

Latest commit

 

History

History
108 lines (74 loc) · 3.78 KB

README.md

File metadata and controls

108 lines (74 loc) · 3.78 KB

Logo

Borsch Skeleton

Keep it simple.

Version Version License


About Borsch Skeleton

Sometimes, you don't need an overkill solution like Laravel or Symfony.

Borsch is a simple and efficient PSR-15 micro framework made to kick start your web app or API development by using the tools you prefer, and provides minimal structure and facilities to ease your development.

It natively features :

Can be enriched with :

  • ORM
  • Templating
  • Anything else you want

The framework is built around a PSR-11 Container, therefore everything is made around interfaces.
If something is not at your taste, you can implement your own logic without having to modify everything.

Get started

Via composer :
composer create-project borschphp/borsch-skeleton [your-app-name]

Web servers

Instructions below will start a server on http://0.0.0.0:8080.

PHP Built-in web server

After installation, you can run the application in development with the command :

php -S 0.0.0.0:8080 -t ./public/ ./public/server.php
# or use the shortcut
composer serve

Docker Compose

Or you can use docker-compose to run the app with docker :

docker-compose up -d

Lando

Or you can also use lando to run the app with docker :

lando start

FrankenPHP

You can spin up a FrankenPHP docker container of the app with :

docker run \
    -v $PWD:/app \
    -p 80:8080 -p 443:443 -p 443:443/udp \
    dunglas/frankenphp

Worker

A script is available at public/worker.php to run the app with a FrankenPHP worker :

docker run \
    -e FRANKENPHP_CONFIG="worker ./public/worker.php" \
    -v $PWD:/app \
    -p 80:8080 -p 443:443 -p 443:443/udp \
    dunglas/frankenphp

Documentation

An extended documentation is available here.

Notes

Borsch Framework is heavily inspired by Mezzio and Laravel, only it is a much simpler and lightweight implementation.

Do not hesitate to check Mezzio and Laravel out 😉 .

License

The package is licensed under the MIT license. See License File for more information.