Skip to content

Backend Development

Daniel Loredo Meléndez edited this page Jun 16, 2021 · 5 revisions

Development Tools

For development, we are using Laravel, a PHP framework that enables us to work with MySQL relational databases. In order to serve MySQL, you'll need Composer (dependency manager), Xampp (PHP development environment), and MyPhpAdmin (see the database tables)

Database

The Database contains three different tables with different attributes:

  • Links:
    • URL
    • shortURL
    • title
    • private boolean
    • imageURL
    • count
    • tag_id (used to retrieve the Tags according to each Link)
  • User:
    • email
    • type
  • Tags:
    • link_id (used to retrieve the user that corresponds to the tags)
    • tags: @home / candidates / contests / covid / docs / drones / electronics / github / larcOpen / mechanics / presentation / programming / robocup / sideProjects / social / sponsors / vsss / youtube / workshop

API

The API created with Laravel serves as a communication schema between the database and the client through API calls. The API calls include requests to GET | POST | DELETE | UPDATE data in each table. The responses are in JSON format. Furthermore, the Links can be retrieved one by one, or all at the same time, applying sorting and filtering in GET requests. The API documentation can be seen in the following: Postman Documentation

Endpoints and Routing

The endpoints that correspond to the requests of each table are the following:

Clone this wiki locally