mirror of
https://github.com/kevinveenbirkenbach/coding-challenge-online-shop.git
synced 2024-11-01 09:03:10 +01:00
54 lines
2.2 KiB
Markdown
54 lines
2.2 KiB
Markdown
# coding-challenge-online-shop
|
||
Coding challenge for a online shop
|
||
## task
|
||
### requirements
|
||
1. Create a web application with PHP which works like a really small online shop. ✓
|
||
2. Create a database with at least 20 products✓ automatically✓ per script. ✓
|
||
3. Create a product listing which display all products from the database. ✓
|
||
<br> The following information are required:
|
||
- price net and gross ✓
|
||
- image ✓
|
||
- product name ✓
|
||
- color ✓
|
||
4. Add a “to the basket” button to each product in the listing. ✓
|
||
5. Make the product basket work and display all products which are in the basket as a list with
|
||
small images. ✓
|
||
6. Create a login and registration with e-mail address, password and a name. ✓
|
||
7. The login should be session based. ✓
|
||
8. Create a checkout which is shown when the user is logged in. ✓
|
||
9. The user should be able to choose between 2 payment methods. ✓
|
||
<br> Call them method1 ✓ and
|
||
method2 ✓.
|
||
10. Store the order at the database. ✓
|
||
11. Add a color filter to the product list.✓
|
||
<br> The user should be able to filter the listing with the existing colors. ✓
|
||
### specifications
|
||
- Please use PHP ✓, MySQL ✓ and HTML ✓. You can also use CSS, JavaScript, Bootstrap ✓ and jQuery.
|
||
- Save your code online at github. ✓
|
||
- Please use an autoloader and namespaces. ✓
|
||
- Don’t use a ready to go framework. Build the application from the scratch. ✓
|
||
- Use transactions if it makes sense. ✓
|
||
- Please cover your code with unit tests. ✓
|
||
### time frame
|
||
- one weekend ✓
|
||
## start
|
||
To run the program execute:
|
||
```bash
|
||
bash ./start.sh
|
||
```
|
||
### Attention
|
||
This is a demo program; Everytime when you restart the demo the database will be reset.
|
||
|
||
### requirements
|
||
The start.sh file needs docker and docker-compose.
|
||
|
||
### access
|
||
If you started the application you can access it with a browser on <a href="http://localhost:8100/">localhost:8100</a>.
|
||
|
||
## test
|
||
To run the tests execute:
|
||
```bash
|
||
bash ./test.sh
|
||
```
|
||
Tests just exist for the core, the entities and some other files. UnitTest you will find in the directory of the unit.
|