Skip to content

This is project to learn how to build portfolio with PHP, without framework.

Notifications You must be signed in to change notification settings

romainbourre/php_portfolio_subject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP - Portfolio learning project


This project goal is to develop a personal portfolio in order to learn PHP without any frameworks and with minimal packages.

Summary

Your project must respect the following requirements:

  • php >= 7.4
  • composer >= 2.0.7

You should not modify any of the following files and folders:

data/data.sql
public/
src/
tests/
.gitignore
composer.json
composer.lock
Makefile
phpunit-watcher.yml
README.md

You must only edit public/index.php file and write your code in the src/ directory (it is your freedom space).

You must respect a Code Review part.

To make your code review, I will use the commands below, so your project must work with this different Makefile commands :

Install

To install the various required packages, you must use :

make install

Tests

To run all your tests :

make tests

To start tests watcher (which will run your tests every time you save a file in the src/ or tests/ directories) during development, you can use:

make tests-watch

Run

To start your local application server, you must use:

make run

To directly install and run application:

make install-run

To directly install, test and run application:

make tests-run

To launch a code review, I will type this command:

make code-review

This command will test and launch your application without development package.

So, this command must work without any fail.

To make this part, your should develop three web pages:

  • Presentation web page: to present yourself, with your description.
  • Experience and training web page: to explain your professional experiences and formations with dates.
  • Portfolio web page: to present your projects and realisations.

All data must come from a MySql database.

Packages

You have limited package to build this part:

  • twig/twig ^3.0
  • slim/psr7 ^1.2

You don't have to use those packages but you must not add any production packages. If you need packages, you only can add them as development packages (composer install --dev <package>).

Warning: if your application uses development packages to run, then they will not be available during code review!

Database

Your database must be a MySql database. It must be exposed on localhost:3308 with user root and password root.

I provide a dataset with file data/data.sql. You can edit this file and change data.

Design

On this step, the design doesn't matter. Just use Bootstrap CDN.

About

This is project to learn how to build portfolio with PHP, without framework.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published