An open API service indexing awesome lists of open source software.

https://github.com/qcri/apihub

serve and publish API
https://github.com/qcri/apihub

api fastapi

Last synced: 4 months ago
JSON representation

serve and publish API

Awesome Lists containing this project

README

          

.. raw:: html

.. raw:: html

|Contributors| |Forks| |Stargazers| |Issues| |MIT License| |LinkedIn|

.. raw:: html






Logo

APIHub


APIHub is a platform to dynamically serve API services on-fly. API service workers can be deployed when needed.


Explore the docs »




View Demo
·
Report Bug
·
Request Feature




Explore the docs »




View Demo
·
Report Bug
·
Request Feature

.. raw:: html



Table of Contents




  1. About The Project



  2. Getting Started


  3. Usage

  4. Roadmap

  5. Contributing

  6. License

  7. Contact

  8. Acknowledgements


.. |workflows| images:: https://github.com/yifan/apihub/actions/workflows/pytest-redis-postgres-workflow.yml/badge.svg

About The Project
=================

`[Product Name Screen
Shot][product-screenshot] `__

Features & TODOs
----------------

|check| Security

|check| authenticate

|check| admin, manager, user

|check| user management

|check| rate limiter

|check| register

|uncheck_| social login

|check| Subscription

|check| subscription

|check| application token

|check| daily usage record in redis

|uncheck| Async/sync API calls

|check| api worker reports input/output: describe

|check| generic worker deployment

|uncheck| auto scaler for api workers

Built With
----------

- `fastapi `__
- `SQLAlchemy `__
- `pydantic `__
- `tanbih-pipeline `__
- `psycopg2 `__
- `redis `__
- `poetry `__

.. raw:: html

Getting Started
===============

To get a local copy up and running follow these simple steps.

Prerequisites
-------------

This is an example of how to list things you need to use the software
and how to install them.

Installation
------------

1. Clone the repo

.. code:: sh

git clone https://github.com/yifan/apihub.git

2. Install python packages

.. code:: sh

poetry install

.. raw:: html

Usage
=====

Use this space to show useful examples of how a project can be used.
Additional screenshots, code examples and demos work well in this space.
You may also link to more resources.

*For more examples, please refer to
the*\ `Documentation `__

.. raw:: html

Roadmap
=======

See the `open issues `__ for a
list of proposed features (and known issues).

.. raw:: html

Contributing
============

Contributions are what make the open source community such an amazing
place to be learn, inspire, and create. Any contributions you make are
**greatly appreciated**.

1. Fork the Project
2. Create your Feature Branch
(``git checkout -b feature/AmazingFeature``)
3. Commit your Changes (``git commit -m 'Add some AmazingFeature'``)
4. Push to the Branch (``git push origin feature/AmazingFeature``)
5. Open a Pull Request

Testing
=======

1. Start postgres and redis

.. code:: sh

docker compose up

2. Setup environment variables in a local .env file

.. code:: sh

cat >.env <

License
=======

Distributed under the MIT License. See ``LICENSE`` for more information.

.. raw:: html

Contact
=======

Yifan Zhang - [@yifan2019](https://twitter.com/yifan2019) -
yzhang@hbku.edu.qa

Project Link: https://github.com/yifan/apihub

.. raw:: html

Acknowledgements
================

-
-
-

Copyright (C) 2021, Qatar Computing Research Institute, HBKU

.. raw:: html

.. raw:: html

.. |check| raw:: html

.. |check_| raw:: html

.. |uncheck| raw:: html

.. |uncheck_| raw:: html

.. |Contributors| image:: https://img.shields.io/github/contributors/yifan/apihub.svg?style=for-the-badge
:target: https://github.com/yifan/apihub/graphs/contributors
.. |Forks| image:: https://img.shields.io/github/forks/yifan/apihub.svg?style=for-the-badge
:target: https://github.com/yifan/apihub/network/members
.. |Stargazers| image:: https://img.shields.io/github/stars/yifan/apihub.svg?style=for-the-badge
:target: https://github.com/yifan/apihub/stargazers
.. |Issues| image:: https://img.shields.io/github/issues/yifan/apihub.svg?style=for-the-badge
:target: https://github.com/yifan/apihub/issues
.. |MIT License| image:: https://img.shields.io/github/license/yifan/apihub.svg?style=for-the-badge
:target: https://github.com/yifan/apihub/blob/master/LICENSE
.. |LinkedIn| image:: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
:target: https://linkedin.com/in/yifanzhang