This is an upgraded project from Symfony 5 to Symfony 6 running on Docker. It includes the latest PHP 8.0 version and new features like email verification after registration. The original Symfony 5 project can be reached from my other repository: Cauldron Overflow
The project is updated to use PHP 8.0, Symfony 6 and Email Verification service is added while registration. Additionally, fully functional Admin pages are added to the project.
To update syntax these PHP Tools are used:
For Admin pages EasyAdminBundle is used.
To run this project, follow the steps below:
- Docker must be installed on your system.
Clone this repository to your local machine:
git clone https://github.com/Shanazar2020/upgradeToSymfony6.git
Navigate to 'laradock' folder inside the project directory and use Docker Compose to build and run the services:
cd your-symfony-project/laradock docker-compose up --build -d
This will start the necessary Docker containers including php, composer and symfony cli.
After services are started go into you app directory inside docker workspace:
docker-compose exec workspace bash
You can use the Symfony CLI tool to start the development server. After navigating to the project directory inside docker workspace and run:
symfony server:start
You will see the URL where your Symfony application is running, typically at http://127.0.0.1:8000
.
-
Registration: Register a new user on your website. During the registration process, the user should receive a verification email.
-
View Email in Mailer Service: You can view the verification email by accessing the Mailer service's web interface. Open a web browser and go to
http://127.0.0.1:1080
to view the received emails. -
Verification: In the received email, there should be a link to verify the email address. Click the link to complete the email verification process.
Verification Email in Mailer Service
- Admin Dashboard and Menu: You can access the admin dashboard and menu, modify what you see on there.
- Admin CRUD: You can access the admin CRUD pages and modify the data in the database, including uploading images.
- Different fields for different pages: viewing, editing, and creating pages have different fields.
The general functionality of the website is to post question and answers. Alongside the project includes user registration and authentications, admin pages and user verification process like email verification and 2-factor authentication.
This project is developed by following tutorials from Upgrading to Symfony 6.0. Special thanks to a great tutor Ryan Weaver.
And it is me:
This project is open-source and available under the MIT License.