Russian  English  All projects

Deploy project on Yii 2 Backend



Deploy the project to Yii 2 version 2.0.46 (advanced template) and make two scripts as well as CRUD.

Authorization script in the console-part. Accepts login and password - returns a token valid for 5 minutes, which must be used for the second script.
Script in the frontend-part (support GET, POST). It receives data in JSON format and saves it to the database returning the identifier, as well as the time and memory spent on processing and saving the object. The script should work exclusively with token authentication. Authentication must be based on a header in the request.
CRUD in the backend part. Displays all objects saved from the frontend part in JSON format with the ability to edit and delete objects. Adding objects from the backend part should be excluded. Browsing should generate a bulleted HTML list from a JSON object that supports expanding/collapsing individual elements. List items must include the name, object type, and value at the end of the object hierarchy.

Comments:

The second script must work on both GET and POST.
The description "json-formatted data" refers to any data in JSON format, including nested arrays in nested arrays or empty JSON. The script should not be bound to any particular JSON object, it should be able to process any data in JSON format.

The entire project and the progress of the tasks should be posted in the repository on GitHub, the first commit is the basic advanced template Yii 2. Be sure to describe the file README.md - how to launch the project and what it does in English, the translation is unacceptable (!). Also need to be added to the README. MD example of Nginx config for launching a project and implementing access to the site by login and password through Nginx.

You must also describe a minimum set of tests to ensure that your application is healthy. It is advisable to use PHPUnit or Codeception.

Before performing the test task, draw up a plan of work /modules to be implemented. Give an estimate of the time that will be spent on each of the items. Arrange each item as a separate commit. At the end of the task implementation, record how much time was actually spent and comment if necessary.

You should get a report like this:

Task Assessment Spent Comment
Setting up the environment 1 hour 40 minutes Found a good instruction
Installing the framework 20 minutes 30 minutes Forgot to install composer

03.10.2022 11:22



 Answers freelancers