mapillary / mapillary-python-sdk

A Python 3 library built on the Mapillary API v4 to facilitate retrieving and working with Mapillary data.
MIT License
39 stars 15 forks source link

Rubix982 Structure #30

Closed Rubix982 closed 3 years ago

Rubix982 commented 3 years ago

Project Structure

Pull Request Type

🏆 Enhancements - requirement#1, models, exceptions, API ends points, DocStrings for documentation, skeleton functions

Purpose

The purpose is to,

Why?

Each of the commits contains a detailed explanation but in short,

  1. The Mapillary has skeleton wise implemented the required functions and introduced properly written DocStrings for documentation purposes
  2. The Exceptions file contains a base model to follow along if any exceptions occur, and to help users understand them
  3. The Credentials class for the 1st requirement of the function
  4. The API as an idea to test if it would be better if we took this approach

Feedback required over

What kind of feedback do you require from this PR, if any? For example,

Feedback required when

Whenever feasible

Mentions

References (OPTIONAL)

This is OPTIONAL.

Rubix982 commented 3 years ago

New Commits!

New commits reasoned as the following, as discussed in a meeting with @OmarMuhammedAli and with @cbeddow on the Discord chat. The commit itself should be self-explanatory, but for context, the complete commit says the following,

feat: Add basic API interfacing with APIv4 @ Mapillary

Description

This is meant to implement logically, as code, the API interface with which to access the APIv4 web interfaces. I thought the URLs themselves did not seem intuitive at first, so I made some wrapper functions around them to promote compatibility that is, if the URLs were to change tomorrow for some reason, we can simply fix that by adding editing a single line and breaking nothing in the codebase.

Reasoning

Changing the configurations here in the functions should be enough to accompany what the API endpoints are. Maybe even adding new functions or types of endpoints.

Lines Of Code

The lines of code may seem overwhelming, but they really are just basic implementations of some modules for the needed API.