msgphp / symfony-demo-app
A Symfony demo application with basic user management, a REST/GraphQL API and OAuth/JWT authentication.
Installs: 662
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:project
Requires
- php: ^7.3
- api-platform/api-pack: ^1.2
- elasticsearch/elasticsearch: ^7.6
- hwi/oauth-bundle: ^1.1@dev
- lexik/jwt-authentication-bundle: ^2.6
- msgphp/eav-bundle: ^0.15
- msgphp/user-bundle: ^0.15
- msgphp/user-eav: ^0.15
- pascaldevink/shortuuid: ^2.2
- php-http/guzzle6-adapter: ^2.0
- php-http/httplug-bundle: ^1.17
- ramsey/uuid: ^3.9
- ramsey/uuid-doctrine: ^1.6
- sensio/framework-extra-bundle: ^5.5
- symfony/console: 5.0.*
- symfony/dependency-injection: 5.0.*
- symfony/dotenv: 5.0.*
- symfony/flex: ^1.6
- symfony/form: 5.0.*
- symfony/framework-bundle: 5.0.*
- symfony/mailer: 5.0.*
- symfony/messenger: 5.0.*
- symfony/monolog-bundle: ^3.4
- symfony/orm-pack: ^1.0
- symfony/security-bundle: 5.0.*
- symfony/translation: 5.0.*
- symfony/validator: 5.0.*
- webonyx/graphql-php: ^0.13
Requires (Dev)
Conflicts
README
msgphp/* repositories are not actively developed/supported anymore.
Use in production on your own risks.
If you want to do some hotfixes - please do PR directly in target repository instead of previous msgphp/msgphp monorepository
Symfony Demo Application
A Symfony demo application with basic user management, a REST/GraphQL API and OAuth/JWT authentication.
MsgPHP is a project that aims to provide reusable domain layers for your application. It has a low development time overhead and avoids being overly opinionated.
Enabled Bundles
Concern | Bundles |
---|---|
Domain | MsgPhpUserBundle , MsgPhpEavBundle |
ORM | DoctrineBundle |
Security | SecurityBundle , HWIOAuthBundle , LexikJWTAuthenticationBundle |
Web API | ApiPlatformBundle |
Features
- Register, Login, Forgot Password, My Profile
- One-Time-Login tokens
- Register invitations
- Primary e-mail and secondary e-mails
Try it Yourself
Using Symfony CLI:
composer create-project msgphp/symfony-demo-app cd symfony-demo-app # Database and Elasticsearch must be running # Change DATABASE_URL and ELASTICSEARCH_HOST in .env.local, if needed bin/console doctrine:database:create --if-not-exists bin/console doctrine:schema:update --force bin/console doctrine:fixtures:load -n bin/console projection:synchronize symfony server:start symfony open:local
Using Docker:
# assuming composer is not installed on the local machine git clone git@github.com:msgphp/symfony-demo-app.git cd symfony-demo-app cp .env.local.dist .env.local make build start install db-fixtures api-sync # open https://localhost:8443
Documentation
- Read the main documentation
- Get support on Symfony's Slack
#msgphp
channel or raise an issue
Contributing
See CONTRIBUTING.md
Screenshots
v1.x |
08-2018 |
---|---|
Blog Posts
- Domain-driven-design: Projections in practice with API Platform and Elasticsearch
- Adding user management to your Symfony application
- Domain-driven-design: Moving forward with API Platform and Elasticsearch
- Domain-driven-design: Writing domain layers. The fast way.
- Commanding a decoupled User entity
- Decoupling the User entity with a new Symfony User Bundle
- Building a new Symfony User Bundle