Skip to content

⭕ It is a github & gitlab API wrapper packaged into one server, contains minimal API interactions which were implemented to get only the required information from the respective github & gitlab APIs

License

Notifications You must be signed in to change notification settings

sharma-kunal/open-source-api-wrapper

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Open issues Forks Stars Maintained Made with Python Open Source Love Built with Love Follow Me Telegram

📒 Index

🔰 About

It is a github & gitlab API Wrapper packaged into one server, It was built in Python3 & Flask, It contains minimal API interactions which were implemented to get only the required information from the respective github & gitlab APIs, I built this project under alice-sieve organization.

⚡ Usage

To use this project.

🔌 Installation

  • Install dependencies & export environment variables.
$ sudo -H pip3 install -r requirements.txt

📦 Commands

  • Start project using
$ cd src
$ python3 server.py

📁 File Structure

  • Add a file structure here with the basic details about files, below is an example.
.
├── LICENSE
├── logo
│   └── api.png
├── Procfile
├── README.md
├── requirements.txt
└── src
    ├── GithubToken.py
    ├── GithubWrapper.py
    ├── GitlabToken.py
    ├── GitlabWrapper.py
    └── server.py                   

2 directories, 10 files

❗ Guideline

  • Code Style

black

In order to maintain the code style consistency across entire project I use a code formatter. I kindly suggest you to do the same whenever you push commits to this project.

The python code formatter I chose is called Black. It is a great tool and it can be installed quickly by running

sudo -H pip3 install black

or

python3.6 -m pip install black

It requires Python 3.6.0+ to run.

  • Usage
black {source_file_or_directory}

For more details and available options, please check their psf/black.

isort

I also use isort, it is a Python utility / library to sort imports alphabetically, and automatically separated into sections. It provides a command line utility which can be installed using.

sudo -H pip3 install isort 
  • Usage
isort {source_file}.py

For more details and available options, please check their timothycrosley/isort.

  • Close Issues

Close issues using keywords: how to ?

📄 Resources

📷 Gallery

Endpoints

  • GET organizations/ group members
 GET /github/orgs/:org/members
 GET /gitlab/groups/:id/members
  • GET organizations repos/ group projects
 GET /github/orgs/:org/repos
 GET /gitlab/groups/:id/projects
  • GET repos commits / projects commits
 GET /github/repos/:owner/:repo/commits
 GET /gitlab/projects/:id/repository/commits
  • GET repo issues / projects issues
 GET /github/repos/:owner/:repo/issues
 GET /gitlab/projects/:id/issues
  • GET organization issues / groups issues
 GET /github/orgs/:org/issues
 GET /gitlab/groups/:id/issues
  • GET repo issues comments/ project issue comments
 GET /github/repos/:owner/:repo/issues/comments
 GET /gitlab/projects/:id/issues/:issue_iid/notes
  • GET repo pull requests / project merge requests
 GET /github/repos/:owner/:repo/pulls
 GET /gitlab/projects/:id/merge_requests

🌟 Credit/Acknowledgment

Contributors

🔒 License

License

About

⭕ It is a github & gitlab API wrapper packaged into one server, contains minimal API interactions which were implemented to get only the required information from the respective github & gitlab APIs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%