Code Monkey home page Code Monkey logo

pet-shop-api's Introduction

Pet shop API

Table of content

  1. Project Overview
  2. Cloning and Running the Project
  3. Current Progress
  4. To Dos

Project Overview

Pet shop API is a project designed to test candidates experience in backend development. On this part of the test, I showcased my knowledge, skills, and detail-oriented Backend experience.

This application is a replica to the existing PetShop API made by Buckhill to test candidates.

This project was created using the following technologies and tools:

This project was scaffolded with Laravel. It sets up a standard directory structure, enabling you to begin development and build things quickly. Feel free to check Laravel full documentation

Cloning and Running the Project

Prerequisites

Quick note

If you are using windows you can download XAMPP + Composer and you are ready to go.

Cloning the Repository

  1. Open your terminal and run the following command to clone the project:
git clone https://github.com/Sami-21/pet-shop-api.git
  1. Enter project directory:
cd pet-shop-api
  1. Install dependencies:
composer install 
  1. Copy .env.example to .env
cp .env.example .env

fill database credentials in your .env file to link it with laravel application.

  1. Generate app key
php artisan key:generate
  1. Generate private and public keys for asymmetric encryption with lcobucci/jwt , the command below with generate a private key within yout root directory:
openssl genpkey -algorithm RSA -out private.key -pkeyopt rsa_keygen_bits:4096

Now for the public key:

openssl rsa -pubout -in private.key -out public.key

Et voila you have your keys ready , the next step is to create a folder called keys in storage directory move them to it.

mkdir storage/keys
mv private.key storage/keys/private.key
mv public.key storage/keys/public.key

❗️ Important info

Add those keys to your .gitignore file (you can exclude the public key) if it not there already.

7. Run your migrations and seeders :

php artisan migrate --seed


8. Finally run your project:

php artisan serve


9. You can generate Swagger docs by running :

php artisan l5-swagger:generate


10. You can also run tests :

php artisan test

Current Progress

  • Log in
  • Create user account
  • Logout
  • View user details
  • View user orders

Current Progress

  • User endpoints (excluding password-reset/change-password)
  • Brand endpoints
  • Category Endpoints
  • Product Endpoints

To Dos

  • User password reset / password change

License

MIT

pet-shop-api's People

Contributors

sami-21 avatar

Watchers

 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.