Spiral - High-Performance PHP/Go Framework
![](https://img.shields.io/badge/discord-chat-magenta.svg)
Spiral Framework is a High-Performance PHP/Go Full-Stack framework and group of over sixty PSR-compatible components.
The Framework execution model based on a hybrid runtime where some services (GRPC, Queue, WebSockets, etc.) handled by
Application Server RoadRunner and the PHP code of your application stays in
memory permanently (anti-memory leak tools included).
App Skeleton (CLI
, GRPC)
| spiral.dev
| Documentation
| Twitter
| CHANGELOG
| Contributing
#Features
- Battle-tested since 2013
-
Lightning fast full-stack PHP framework
- PSR-{2,3,4,6,7,11,15,16,17} compliant
- Powerful application server and resident memory application kernel
- Native support of queue (AMQP, SQS, Beanstalk) and background PHP workers
- Native support of cache (PSR-16)
- GRPC server and client
- TCP server
- Pub/Sub, event broadcasting
- HTTPS, HTTP/2+Push, encrypted cookies, sessions, CSRF-guard
- The ORM you will use for the next 25 years
- MySQL, MariaDB, SQLite, PostgreSQL, SQLServer support, auto-migrations
- Intuitive scaffolding and prototyping (it literally writes code for you)
- Helpful class discovery via static analysis
- Authentication, RBAC security, validation, and encryption
- Dynamic template engine to create your own HTML tags (or just use Twig)
- MVC, HMVC, CQRS, Queue-oriented, RPC-oriented, CLI apps... any apps
#Skeletons
#Core
Component |
Current Status |
spiral/core |
![Codecov](https://codecov.io/gh/spiral/core/branch/master/graph/badge.svg) |
spiral/boot |
![Codecov](https://codecov.io/gh/spiral/boot/branch/master/graph/badge.svg) |
spiral/config |
![Codecov](https://codecov.io/gh/spiral/config/branch/master/graph/badge.svg) |
#Dispatchers
Component |
Current Status |
spiral/http |
![Codecov](https://codecov.io/gh/spiral/http/branch/master/graph/badge.svg) |
spiral/console |
![Codecov](https://codecov.io/gh/spiral/console/branch/master/graph/badge.svg) |
spiral/roadrunner-bridge |
![Codecov](https://codecov.io/gh/spiral/roadrunner-bridge/branch/master/graph/badge.svg) |
spiral/temporal-bridge |
![Latest Stable Version](https://poser.pugx.org/spiral/temporal-bridge/version) |
#Http Extensions
Component |
Current Status |
spiral/cookies |
![Codecov](https://codecov.io/gh/spiral/cookies/branch/master/graph/badge.svg) |
spiral/csrf |
![Codecov](https://codecov.io/gh/spiral/csrf/branch/master/graph/badge.svg) |
spiral/hmvc |
![Codecov](https://codecov.io/gh/spiral/hmvc/branch/master/graph/badge.svg) |
spiral/router |
![Codecov](https://codecov.io/gh/spiral/router/branch/master/graph/badge.svg) |
spiral/session |
![Codecov](https://codecov.io/gh/spiral/session/branch/master/graph/badge.svg) |
spiral/nyholm-bridge |
![Codecov](https://codecov.io/gh/spiral/nyholm-bridge/branch/master/graph/badge.svg) |
spiral/auth-http |
![Codecov](https://codecov.io/gh/spiral/auth-http/branch/master/graph/badge.svg) |
spiral/annotated-routes |
![Codecov](https://codecov.io/gh/spiral/annotated-routes/branch/master/graph/badge.svg) |
#Security and Validation
Component |
Current Status |
spiral/encryption |
![Codecov](https://codecov.io/gh/spiral/encrypter/branch/master/graph/badge.svg) |
spiral/security |
![Codecov](https://codecov.io/gh/spiral/security/branch/master/graph/badge.svg) |
spiral/validation |
![Codecov](https://codecov.io/gh/spiral/validation/branch/master/graph/badge.svg) |
spiral/filters |
![Codecov](https://codecov.io/gh/spiral/filters/branch/master/graph/badge.svg) |
spiral/auth |
![Codecov](https://codecov.io/gh/spiral/auth/branch/master/graph/badge.svg) |
spiral/auth-http |
![Codecov](https://codecov.io/gh/spiral/auth-http/branch/master/graph/badge.svg) |
#Database
Component |
Current Status |
cycle/database |
![Codecov](https://codecov.io/gh/cycle/database/branch/master/graph/badge.svg) |
cycle/migrations |
![Codecov](https://codecov.io/gh/cycle/migrations/branch/master/graph/badge.svg) |
#Cycle ORM
Component |
Current Status |
cycle/orm |
![Codecov](https://codecov.io/gh/cycle/orm/graph/badge.svg) |
cycle/schema-builder |
![Codecov](https://codecov.io/gh/cycle/schema-builder/graph/badge.svg) |
cycle/annotated |
![Codecov](https://codecov.io/gh/cycle/annotated/graph/badge.svg) |
cycle/schema-migrations-generator |
![Build Status](https://github.com/cycle/schema-migrations-generator/workflows/build/badge.svg) |
cycle/entity-behavior |
![Codecov](https://codecov.io/gh/cycle/entity-behavior/graph/badge.svg) |
cycle/schema-renderer |
![Codecov](https://codecov.io/gh/cycle/schema-renderer/graph/badge.svg) |
#Stempler Template Engine
Component |
Current Status |
spiral/stempler |
![Codecov](https://codecov.io/gh/spiral/stempler/branch/master/graph/badge.svg) |
spiral/stempler-bridge |
![Codecov](https://codecov.io/gh/spiral/stempler-bridge/branch/master/graph/badge.svg) |
#Components
Component |
Current Status |
spiral/cache |
![Codecov](https://codecov.io/gh/spiral/cache/branch/master/graph/badge.svg) |
spiral/queue |
![Codecov](https://codecov.io/gh/spiral/queue/branch/master/graph/badge.svg) |
spiral/exceptions |
![Codecov](https://codecov.io/gh/spiral/exceptions/branch/master/graph/badge.svg) |
spiral/pagination |
![Codecov](https://codecov.io/gh/spiral/pagination/branch/master/graph/badge.svg) |
spiral/files |
![Codecov](https://codecov.io/gh/spiral/files/branch/master/graph/badge.svg) |
spiral/streams |
![Codecov](https://codecov.io/gh/spiral/streams/branch/master/graph/badge.svg) |
spiral/logger |
![Codecov](https://codecov.io/gh/spiral/logger/branch/master/graph/badge.svg) |
spiral/tokenizer |
![Codecov](https://codecov.io/gh/spiral/tokenizer/branch/master/graph/badge.svg) |
spiral/snapshots |
![Codecov](https://codecov.io/gh/spiral/snapshots/branch/master/graph/badge.svg) |
spiral/translator |
![Codecov](https://codecov.io/gh/spiral/translator/branch/master/graph/badge.svg) |
spiral/models |
![Codecov](https://codecov.io/gh/spiral/models/branch/master/graph/badge.svg) |
spiral/debug |
![Codecov](https://codecov.io/gh/spiral/debug/branch/master/graph/badge.svg) |
spiral/dumper |
![Codecov](https://codecov.io/gh/spiral/dumper/branch/master/graph/badge.svg) |
spiral/views |
![Codecov](https://codecov.io/gh/spiral/views/branch/master/graph/badge.svg) |
spiral/storage |
![Codecov](https://codecov.io/gh/spiral/storage/branch/master/graph/badge.svg) |
spiral/reactor |
![Codecov](https://codecov.io/gh/spiral/reactor/branch/master/graph/badge.svg) |
spiral/attributes |
![Codecov](https://codecov.io/gh/spiral/attributes/branch/master/graph/badge.svg) |
spiral/storage |
![Codecov](https://codecov.io/gh/spiral/storage/branch/master/graph/badge.svg) |
spiral/distribution |
![Codecov](https://codecov.io/gh/spiral/distribution/branch/master/graph/badge.svg) |
spiral/broadcasting |
![Codecov](https://codecov.io/gh/spiral/broadcasting/branch/master/graph/badge.svg) |
spiral/data-grid |
![Codecov](https://codecov.io/gh/spiral/data-grid/branch/master/graph/badge.svg) |
#Integrations
Component |
Current Status |
spiral/dotenv-bridge |
![Codecov](https://codecov.io/gh/spiral/dotenv-bridge/branch/master/graph/badge.svg) |
spiral/monolog-bridge |
![Codecov](https://codecov.io/gh/spiral/monolog-bridge/branch/master/graph/badge.svg) |
spiral/twig-bridge |
![Codecov](https://codecov.io/gh/spiral/twig-bridge/branch/master/graph/badge.svg) |
spiral/sentry-bridge |
![Codecov](https://codecov.io/gh/spiral/sentry-bridge/branch/master/graph/badge.svg) |
spiral/roadrunner-bridge |
![Codecov](https://codecov.io/gh/spiral/roadrunner-bridge/branch/master/graph/badge.svg) |
spiral/cycle-bridge |
![Codecov](https://codecov.io/gh/spiral/cycle-bridge/branch/master/graph/badge.svg) |
spiral/temporal-bridge |
![Codecov](https://codecov.io/gh/spiral/temporal-bridge/branch/master/graph/badge.svg) |
#Development and Assembly
Component |
Current Status |
spiral/testing |
![Codecov](https://codecov.io/gh/spiral/testing/branch/master/graph/badge.svg) |
spiral/scaffolder |
![Codecov](https://codecov.io/gh/spiral/scaffolder/branch/master/graph/badge.svg) |
spiral/prototype |
![Codecov](https://codecov.io/gh/spiral/prototype/branch/master/graph/badge.svg) |
spiral/annotations |
![Codecov](https://codecov.io/gh/spiral/annotations/graph/badge.svg) |
spiral/composer-publish-plugin |
![Codecov](https://codecov.io/gh/spiral/composer-publish-plugin/branch/master/graph/badge.svg) |
spiral/code-style |
![Codecov](https://codecov.io/gh/spiral/code-style/branch/master/graph/badge.svg) |
#LICENSE
MIT License (MIT). Please see LICENSE
for more information. Maintained
by Spiral Scout.