Giter Club home page Giter Club logo

pim-s_nce's Introduction

PIM-S'NCE

This is a PHP development exercise which purpose is to implement a basic PIM system, required to accomplish the tech interview for S'NCE candidates.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

You must have an Apache/MySQL/PHP software platform pre-installed on your system This version has been developed on XAMPP.

Installing

A step by step series of examples that tell you how to get a development env running

  • Install the last version of Symfony following the steps described in the official website

  • Install the last version of Composer as described in the official website

  • Start your Apache/MySQL/PHP platform to activate the local instance of the http and database servers

  • Clone this project into a folder under ..\htdocs

  • Change the file "app/config/parameters.yml" with all the reference of your mySQL instance

  • Open the Apache file and add the node related to the local folder where the project has been cloned on the localhost:80 port as the example below:

    <VirtualHost *:80> > This first-listed virtual host is also the default for *:80 > ServerName www.example.com > ServerAlias example.com > DocumentRoot "/www/domain"

  • Browse the project folder using the terminal

  • Run command: composer install to install dependencies

  • Run command: php bin/console doctrine:database:create

  • Run command: php bin/console doctrine:migrations:migrate

  • Open your browser and digit: localhost:80

===========

Specifiche S'NCE:

===========

  1. Pagina "Crea Prodotto" La pagina risponde alla rotta /product/create Come amministratore del sito voglio poter inserire una nuova tipologia di prodotto all'interno di un catalogo.
  • Voglio definirne il nome
  • Voglio poter caricare un'immagine
  • Voglio poter inserire una descrizione
  • Voglio poter aggiungere uno o più tag (almeno uno è obbligatorio) al prodotto
  1. Pagina "Listato Prodotti" La pagina di listato risponde alla rotta /product/list Come amministratore del sito voglio vedere il catalogo di tutti i prodotti da me inseriti in una lista, dove vedo il nome e un'anteprima dell'immagine ridotta, i prodotti sono ordinati per data di creazione. Vedo la data di creazione accanto a ciascun prodotto. Voglio inoltre poter filtrare per ricerca LIKE sul nome dei tag associati.

  2. Pagina "Edit Prodotto" La pagina di modifica risponde alla rotta /product/{product}/edit Come amministratore del sito cliccando sul link di una riga della lista o sull'immagine, voglio andare al form di modifica delle proprietà del prodotto.

Richieste implementative:

=========================

  • Il progetto deve essere realizzato utilizzando Symfony4
  • Doctrine 2 deve essere utilizzato per la gestione del Database
  • Usa i Bundle/Package/Component in maniera significativa
  • Puoi usare qualsiasi bundle o package per gestire l'upload delle immagini col framework scelto
  • Correda il repository di un README.md in inglese che aiuti nella configurazione del progetto
  • Non serve che tu implementi un meccanismo di autenticazione per l'area amministrativa
  • Utilizza i Repository di Doctrine 2

Il lavoro valutato per:

=====================

  • Completezza rispetto alle specifiche
  • Organizzazione e struttura del progetto
  • Organizzazione e struttura del codice
  • Eleganza delle soluzioni adottate

Modalità di rilascio:

=====================

  • Il progetto deve essere rilasciato su repository pubblico github

pim-s_nce's People

Contributors

valsed avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.