Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/annaigjegourel/oc-p5-creez-votre-premier-blog-en-php
Blog made from scratch using PHP, OOP, MVC (Study project)
https://github.com/annaigjegourel/oc-p5-creez-votre-premier-blog-en-php
composer mvc oop php twig
Last synced: about 2 months ago
JSON representation
Blog made from scratch using PHP, OOP, MVC (Study project)
- Host: GitHub
- URL: https://github.com/annaigjegourel/oc-p5-creez-votre-premier-blog-en-php
- Owner: AnnaigJegourel
- License: mit
- Created: 2022-06-27T06:37:50.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-08T08:36:46.000Z (about 1 year ago)
- Last Synced: 2024-04-09T10:54:00.308Z (9 months ago)
- Topics: composer, mvc, oop, php, twig
- Language: PHP
- Homepage:
- Size: 8.7 MB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# OC-P5-Créez votre premier blog en PHP
Training program "Back-end Developer: PHP/Symfony" (OpenClassrooms)
Project 5: Blog made from scratch, using PHP, OO paradigm & model-view-controller pattern.
✅ Validated on November 9, 2022
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/67632e5883c04645a5864846ade98bab)](https://www.codacy.com/gh/AnnaigJegourel/OC-P5-Creez-votre-premier-blog-en-PHP/dashboard?utm_source=github.com&utm_medium=referral&utm_content=AnnaigJegourel/OC-P5-Creez-votre-premier-blog-en-PHP&utm_campaign=Badge_Grade)## Configuration / Technologies
xamppserver
10.4.21-MariaDB
PHP 8.1.6
Composer 2.3.0## Installation
1. Clone the repository
2. Upload & install xamppserver: [https://www.wampserver.com/en/download-wampserver-64bits/](https://www.apachefriends.org)
3. Launch xamppserver, configure your php version to 8.1.6
4. Go to localhost/phpmyadmin/
5. Create a new database & name it "p5-blog"
6. Import the database using db.sql (file at the root of this project)
7. Launch a terminal at the root of the project & run the command "composer intall"Your project is ready!
## Contexte / Mise en situation
Vous avez besoin de visibilité pour pouvoir convaincre vos futurs employeurs/clients en un seul regard.
Vous êtes développeuse PHP, il est donc temps de montrer vos talents au travers d’un blog à vos couleurs.### Description
Vous allez développer votre blog professionnel, qui se décomposera en deux grands groupes de pages :
👥 les pages utiles à tous les visiteurs ;
👤 les pages permettant d’administrer votre blog.Voici la liste des pages qui devront être accessibles depuis votre site web :
📄 la page d'accueil ;
📄 la page listant l’ensemble des blog posts ;
📄 la page affichant un blog post ;
📄 la page permettant d’ajouter un blog post ;
📄 la page permettant de modifier un blog post ;
📑 les pages permettant de modifier/supprimer un blog post ;
📑 les pages de connexion/enregistrement des utilisateurs.### Contraintes
➡️ Nous n’utiliserons pas WordPress : tout sera développé par vos soins.
➡️ Il est autorisé d’utiliser un thème Bootstrap ainsi. qu'une ou plusieurs librairies externes,
à condition qu’elles soient intégrées grâce à Composer.
➡️ Votre blog doit être navigable aisément sur un mobile (téléphone mobile, phablette, tablette…).
➡️ Vous développerez une partie administration qui devra être accessible uniquement aux utilisateurs inscrits et validés,
et vous veillerez à sa sécurité. Les autres utilisateurs pourront uniquement commenter les articles (avec validation avant publication).
➡️ Vous vous assurerez qu’il n’y a pas de failles de sécurité
(XSS, CSRF, SQL Injection, session hijacking, upload possible de script PHP…).
➡️ Votre projet doit être poussé et disponible sur GitHub. Il est conseillé de travailler avec des pull requests.
➡️ Il faut que vos commits soient en anglais.
➡️ Vous devrez créer l’ensemble des issues (tickets) correspondant aux tâches que vous aurez à effectuer.
➡️ Votre projet devra être suivi via SymfonyInsight, ou Codacy pour la qualité du code.
➡️ Vous veillerez à obtenir une médaille d'argent au minimum (pour SymfonyInsight).
➡️ En complément, le respect des PSR est recommandé afin de proposer un code compréhensible et facilement évolutif.
➡️ Ce qui doit prévaloir doit être les délais.