:rocket: CLI tool for FastAPI. Generating new FastAPI projects & boilerplates made easy.

Overview

Project generator and manager for FastAPI.

Latest Commit
Package version


Source Code: View it on Github


Features 🚀

  • Creates customizable project boilerplate.

  • Creates customizable app boilerplate.

  • Handles the project structuring for you.

  • Optional Dockerfile generation.

  • Optional docker-compose generation for your project needs.

  • Optional pre-commit hook generation.

Installation 📌

  • Prerequisites
    • Python 3.6 +

Manage FastAPI can be installed by running

pip install manage-fastapi 

Getting started 🎈

Easiest way to start is using the defaults:

fastapi startproject [name]

But there is an interactive mode!

fastapi startproject [name] --interactive

Command line options 🧰

Manage FastAPI provides three different commands.

You can list them with

fastapi --help

The idea is to have a highly customizable CLI, but at the same time a simple interface for new users. You can see the available options for startproject running fastapi startproject --help:

The other commands are already available but the current implementation is too shallow. More details about startapp and run commands will be provided once they have more functionalities, at the moment you can run startapp by just:

fastapi startapp {name}

On the other hand, the run command expects you to have a startproject structure:

fastapi run

License

This project is licensed under the terms of the MIT license.

Comments
  • Manage FastAPI August-September 2020 Roadmap

    Manage FastAPI August-September 2020 Roadmap

    :hammer: Roadmap August-September 2020 :hammer:

    Goals

    • Adding more templates for databases and object relatioınal mappers.
    • Instead of creating database with async sql, now the database will be up to user

    Example:

    manage-fastapi startproject myproject
    

    The command we ran above will ask the user something like this to select a database.

    Select a database:
    [0] Postgresql, sqlite3, mysql
    [1] Tortoise ORM
    [2] Peewee
    [3] MongoDB, Couchbase
    

    Each selection will have unique database template.

    New Features

    runserver

    Also thinking about showmodels to show all models also this command will came with option for request method like

    showmodels --get showmodels --post

    enhancement help wanted 
    opened by ycd 12
  • ImportError: python-dotenv is not installed, run `pip install pydantic[dotenv]`

    ImportError: python-dotenv is not installed, run `pip install pydantic[dotenv]`

    Hey.

    I'm having an weird issue with manage-fastapi. I installed all the needed packages using poetry:

    pyprocject.toml file

    [tool.poetry]
    name = "ossah"
    version = "0.1.0"
    description = ""
    
    [tool.poetry.dependencies]
    python = "^3.7"
    fastapi = "^0.68.1"
    pydantic = {extras = ["dotenv"], version = "^1.8.2"}
    
    [tool.poetry.dev-dependencies]
    pytest = "^5.2"
    pytest-cov = "^2.10.1"
    
    [build-system]
    requires = ["poetry-core>=1.0.0"]
    build-backend = "poetry.core.masonry.api"
    

    After the command fastapi run I got this error message:

      module = importlib.import_module(module_str)
      File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
      File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
      File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
      File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
      File "<frozen importlib._bootstrap_external>", line 790, in exec_module
      File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
      File "./app/main.py", line 4, in <module>
        from app.core.config import settings
      File "./app/core/config.py", line 43, in <module>
        settings = Settings()
      File "pydantic/env_settings.py", line 37, in pydantic.env_settings.BaseSettings.__init__
      File "pydantic/env_settings.py", line 63, in pydantic.env_settings.BaseSettings._build_values
      File "pydantic/env_settings.py", line 154, in pydantic.env_settings.EnvSettingsSource.__call__
      File "pydantic/env_settings.py", line 227, in pydantic.env_settings.read_env_file
    ImportError: python-dotenv is not installed, run `pip install pydantic[dotenv]`
    
    
    opened by arkryonia 7
  • Error during startproject [ ModuleNotFoundError: No module named 'termios' ]

    Error during startproject [ ModuleNotFoundError: No module named 'termios' ]

    Hi all.

    So I'm trying to generate a project by using fastapi startproject core --interactive

    But this error below pops out of my terminal Traceback (most recent call last): File "c:\users\x\appdata\local\programs\python\python39\lib\runpy.py", line 197, in _run_module_as_main return _run_code(code, main_globals, None, File "c:\users\x\appdata\local\programs\python\python39\lib\runpy.py", line 87, in _run_code exec(code, run_globals) File "C:\Users\x\Documents\Development\Playground\test-fastapi\env\Scripts\fastapi.exe\__main__.py", line 4, in <module> File "c:\users\x\documents\development\playground\test-fastapi\env\lib\site-packages\manage_fastapi\main.py", line 11, in <module> from manage_fastapi.helpers import bullet, launch_cli, yes_no File "c:\users\x\documents\development\playground\test-fastapi\env\lib\site-packages\manage_fastapi\helpers.py", line 4, in <module> from bullet import Bullet, SlidePrompt, colors File "c:\users\x\documents\development\playground\test-fastapi\env\lib\site-packages\bullet\__init__.py", line 1, in <module> from .client import Bullet File "c:\users\x\documents\development\playground\test-fastapi\env\lib\site-packages\bullet\client.py", line 4, in <module> from . import utils File "c:\users\x\documents\development\playground\test-fastapi\env\lib\site-packages\bullet\utils.py", line 3, in <module> import tty, termios File "c:\users\x\appdata\local\programs\python\python39\lib\tty.py", line 5, in <module> from termios import * ModuleNotFoundError: No module named 'termios'

    And I'm running this on Windows 10 machine. I've read somewhere that termios is only unix and not windows. Is this true?

    opened by syfqpie 7
  • Bump typer from 0.3.2 to 0.4.0

    Bump typer from 0.3.2 to 0.4.0

    ⚠️ Dependabot is rebasing this PR ⚠️

    Rebasing might not happen immediately, so don't worry if this takes some time.

    Note: if you make any changes to this PR yourself, they will take precedence over the rebase.


    Bumps typer from 0.3.2 to 0.4.0.

    Release notes

    Sourced from typer's releases.

    0.4.0

    Features

    • ✨ Add support for Click 8 while keeping compatibility with Click 7. PR #317 by @​tiangolo.

    Internal

    Changelog

    Sourced from typer's changelog.

    0.4.0

    Features

    • ✨ Add support for Click 8 while keeping compatibility with Click 7. PR #317 by @​tiangolo.

    Internal

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 4
  • Support Windows and MacOS

    Support Windows and MacOS

    Closes #32

    Changes

    • Replace bullet by questionary.
    • Add windows-latest and macos-latest on the CI.
    • Remove interactive test. I was not able to make it work, and I'll not spend more time on it.
    opened by Kludex 4
  • Fastapi & Python 3.9

    Fastapi & Python 3.9

    Hi! Are there any discrepancies in the support for Python versions?

    image

    Interested in support v3.9 Do I understand correctly that the help text about Python versions is just incomplete?

    image

    Thankx

    opened by studio-salamander 3
  • Remove support of python 3.6

    Remove support of python 3.6

    As long as the FastAPI version has been bumped to 0.85.0 and it also drops the support to the python version 3.6 as mentionned here : https://fastapi.tiangolo.com/release-notes/ , shouldn't we drop the support within the package (This will make it also possible to make some updates on the packages such as Black, pydantic, ...

    opened by kaieslamiri 2
  • Bump pytest from 5.4.3 to 6.2.5

    Bump pytest from 5.4.3 to 6.2.5

    ⚠️ Dependabot is rebasing this PR ⚠️

    Rebasing might not happen immediately, so don't worry if this takes some time.

    Note: if you make any changes to this PR yourself, they will take precedence over the rebase.


    Bumps pytest from 5.4.3 to 6.2.5.

    Release notes

    Sourced from pytest's releases.

    6.2.5

    pytest 6.2.5 (2021-08-29)

    Trivial/Internal Changes

    • #8494: Python 3.10 is now supported.
    • #9040: Enable compatibility with pluggy 1.0 or later.

    6.2.4

    pytest 6.2.4 (2021-05-04)

    Bug Fixes

    • #8539: Fixed assertion rewriting on Python 3.10.

    6.2.3

    pytest 6.2.3 (2021-04-03)

    Bug Fixes

    • #8414: pytest used to create directories under /tmp with world-readable permissions. This means that any user in the system was able to read information written by tests in temporary directories (such as those created by the tmp_path/tmpdir fixture). Now the directories are created with private permissions.

      pytest used silenty use a pre-existing /tmp/pytest-of-<username> directory, even if owned by another user. This means another user could pre-create such a directory and gain control of another user's temporary directory. Now such a condition results in an error.

    6.2.2

    pytest 6.2.2 (2021-01-25)

    Bug Fixes

    • #8152: Fixed "(<Skipped instance>)" being shown as a skip reason in the verbose test summary line when the reason is empty.
    • #8249: Fix the faulthandler plugin for occasions when running with twisted.logger and using pytest --capture=no.

    6.2.1

    pytest 6.2.1 (2020-12-15)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • Bump typer from 0.6.1 to 0.7.0

    Bump typer from 0.6.1 to 0.7.0

    Bumps typer from 0.6.1 to 0.7.0.

    Release notes

    Sourced from typer's releases.

    0.7.0

    Features

    Fixes

    Docs

    • 📝 Add note about how subcommands with function names using underscores are converted to dashes. PR #403 by @​targhs.
    • 📝 Fix typo in docs at docs/tutorial/commands/help.md. PR #466 by @​fepegar.
    • ✏ Fix link in docs to datetime.strptime(). PR #464 by @​Kobu.
    • ✏ Update first-steps.md, clarify distinction between parameter and argument. PR #176 by @​mccarthysean.
    • ✏ Fix broken plac link. PR #275 by @​mgielda.

    Internal

    Changelog

    Sourced from typer's changelog.

    0.7.0

    Features

    Fixes

    Docs

    • 📝 Add note about how subcommands with function names using underscores are converted to dashes. PR #403 by @​targhs.
    • 📝 Fix typo in docs at docs/tutorial/commands/help.md. PR #466 by @​fepegar.
    • ✏ Fix link in docs to datetime.strptime(). PR #464 by @​Kobu.
    • ✏ Update first-steps.md, clarify distinction between parameter and argument. PR #176 by @​mccarthysean.
    • ✏ Fix broken plac link. PR #275 by @​mgielda.

    Internal

    Commits
    • 6c5698f 🔖 Release version 0.7.0
    • aaf3cdd 📝 Update release notes
    • 24d3c39 📝 Update release notes
    • c1ddf1d ✅ Add extra tests just for coverage because monkeypatching with strange impor...
    • 5e46deb 📝 Update release notes
    • 8999df2 📝 Update release notes
    • 36e4080 ✨ Make typer.run() not add completion scripts by default, it only makes sen...
    • bd7dd4c 📝 Update release notes
    • a6f28a7 ✨ Add support for Python 3.11, tests in CI and official marker (#487)
    • 2b0aa71 📝 Update release notes
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump pytest-cov from 3.0.0 to 4.0.0

    Bump pytest-cov from 3.0.0 to 4.0.0

    Bumps pytest-cov from 3.0.0 to 4.0.0.

    Changelog

    Sourced from pytest-cov's changelog.

    4.0.0 (2022-09-28)

    Note that this release drops support for multiprocessing.

    • --cov-fail-under no longer causes pytest --collect-only to fail Contributed by Zac Hatfield-Dodds in [#511](https://github.com/pytest-dev/pytest-cov/issues/511) <https://github.com/pytest-dev/pytest-cov/pull/511>_.

    • Dropped support for multiprocessing (mostly because issue 82408 <https://github.com/python/cpython/issues/82408>_). This feature was mostly working but very broken in certain scenarios and made the test suite very flaky and slow.

      There is builtin multiprocessing support in coverage and you can migrate to that. All you need is this in your .coveragerc::

      [run] concurrency = multiprocessing parallel = true sigterm = true

    • Fixed deprecation in setup.py by trying to import setuptools before distutils. Contributed by Ben Greiner in [#545](https://github.com/pytest-dev/pytest-cov/issues/545) <https://github.com/pytest-dev/pytest-cov/pull/545>_.

    • Removed undesirable new lines that were displayed while reporting was disabled. Contributed by Delgan in [#540](https://github.com/pytest-dev/pytest-cov/issues/540) <https://github.com/pytest-dev/pytest-cov/pull/540>_.

    • Documentation fixes. Contributed by Andre Brisco in [#543](https://github.com/pytest-dev/pytest-cov/issues/543) <https://github.com/pytest-dev/pytest-cov/pull/543>_ and Colin O'Dell in [#525](https://github.com/pytest-dev/pytest-cov/issues/525) <https://github.com/pytest-dev/pytest-cov/pull/525>_.

    • Added support for LCOV output format via --cov-report=lcov. Only works with coverage 6.3+. Contributed by Christian Fetzer in [#536](https://github.com/pytest-dev/pytest-cov/issues/536) <https://github.com/pytest-dev/pytest-cov/issues/536>_.

    • Modernized pytest hook implementation. Contributed by Bruno Oliveira in [#549](https://github.com/pytest-dev/pytest-cov/issues/549) <https://github.com/pytest-dev/pytest-cov/pull/549>_ and Ronny Pfannschmidt in [#550](https://github.com/pytest-dev/pytest-cov/issues/550) <https://github.com/pytest-dev/pytest-cov/pull/550>_.

    Commits
    • 28db055 Bump version: 3.0.0 → 4.0.0
    • 57e9354 Really update the changelog.
    • 56b810b Update chagelog.
    • f7fced5 Add support for LCOV output
    • 1211d31 Fix flake8 error
    • b077753 Use modern approach to specify hook options
    • 00713b3 removed incorrect docs on data_file.
    • b3dda36 Improve workflow with a collecting status check. (#548)
    • 218419f Prevent undesirable new lines to be displayed when report is disabled
    • 60b73ec migrate build command from distutils to setuptools
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump flake8 from 4.0.1 to 5.0.3

    Bump flake8 from 4.0.1 to 5.0.3

    Bumps flake8 from 4.0.1 to 5.0.3.

    Commits
    • ff6569b Release 5.0.3
    • e76b59a Merge pull request #1648 from PyCQA/invalid-syntax-partial-parse
    • 25e8ff1 ignore config files that partially parse as flake8 configs
    • 70c0b3d Release 5.0.2
    • 5e69ba9 Merge pull request #1642 from PyCQA/no-home
    • 8b51ee4 skip skipping home if home does not exist
    • 446b18d Merge pull request #1641 from PyCQA/entry-points-not-pickleable
    • b70d7a2 work around un-pickleabiliy of EntryPoint in 3.8.0
    • 91a7fa9 fix order of release notes
    • 405cfe0 Release 5.0.1
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Error when startproject: value is not a valid email address (type=value_error.email)

    Error when startproject: value is not a valid email address (type=value_error.email)

    version==1.1.1 (caas_app) C:\E\proj>fastapi startproject test_fastapi Traceback (most recent call last): File "C:\D\miniconda3\envs\caas_app\lib\runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\D\miniconda3\envs\caas_app\lib\runpy.py", line 87, in run_code exec(code, run_globals) File "C:\D\miniconda3\envs\caas_app\Scripts\fastapi.exe_main.py", line 7, in File "C:\D\miniconda3\envs\caas_app\lib\site-packages\typer\main.py", line 214, in call return get_command(self)(*args, **kwargs) File "C:\D\miniconda3\envs\caas_app\lib\site-packages\click\core.py", line 1130, in call return self.main(*args, **kwargs) File "C:\D\miniconda3\envs\caas_app\lib\site-packages\click\core.py", line 1055, in main rv = self.invoke(ctx) File "C:\D\miniconda3\envs\caas_app\lib\site-packages\click\core.py", line 1657, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "C:\D\miniconda3\envs\caas_app\lib\site-packages\click\core.py", line 1404, in invoke return ctx.invoke(self.callback, **ctx.params) File "C:\D\miniconda3\envs\caas_app\lib\site-packages\click\core.py", line 760, in invoke return __callback(*args, **kwargs) File "C:\D\miniconda3\envs\caas_app\lib\site-packages\typer\main.py", line 532, in wrapper return callback(**use_params) # type: ignore File "C:\D\miniconda3\envs\caas_app\lib\site-packages\manage_fastapi\main.py", line 43, in startproject context = ProjectContext( File "pydantic\main.py", line 342, in pydantic.main.BaseModel.init pydantic.error_wrappers.ValidationError: 1 validation error for ProjectContext email value is not a valid email address (type=value_error.email)

    opened by yuhengShii 0
  • get-poetry will be removed within the upcoming versions

    get-poetry will be removed within the upcoming versions

    I think it would be convenient to update the Dockerfile and replace the get-poetry.py url with this one

    curl -sSL https://install.python-poetry.org | python3 -
    

    as it will be deprecated as discussed here : https://python-poetry.org/docs/

    opened by kaieslamiri 3
  • feat: add examples

    feat: add examples

    Add examples folder and a project that demonstrates how to get started with templates.

    Resolves: #31

    A review would be appreciated @Kludex, this is nearly the first Python code that i wrote in the last 7-8 months 😬

    opened by ycd 3
Releases(1.1.1)
京东图片点击验证码识别

京东图片验证码识别 本项目是@yqchilde 大佬的 JDMemberCloseAccount 识别图形验证码(#45)思路验证,若你也有思路可以提交Issue和PR也可以在 @yqchilde 的 TG群 找到我 声明 本脚本只是为了学习研究使用 本脚本除了采集处理验证码图片没有其他任何功能,也

AntonVanke 37 Dec 22, 2022
Lightning FastAPI

Lightning FastAPI Lightning FastAPI framework, provides boiler plates for FastAPI based on Django Framework Explaination / | │ manage.py │ README.

Rajesh Joshi 1 Oct 15, 2021
A simple Blogging Backend app created with Fast API

This is a simple blogging app backend built with FastAPI. This project is created to simulate a real CRUD blogging system. It is built to be used by s

Owusu Kelvin Clark 13 Mar 24, 2022
A dynamic FastAPI router that automatically creates CRUD routes for your models

⚡ Create CRUD routes with lighting speed ⚡ A dynamic FastAPI router that automatically creates CRUD routes for your models

Adam Watkins 950 Jan 08, 2023
Cache-house - Caching tool for python, working with Redis single instance and Redis cluster mode

Caching tool for python, working with Redis single instance and Redis cluster mo

Tural 14 Jan 06, 2022
Ready-to-use and customizable users management for FastAPI

FastAPI Users Ready-to-use and customizable users management for FastAPI Documentation: https://fastapi-users.github.io/fastapi-users/ Source Code: ht

FastAPI Users 2.3k Dec 30, 2022
Cookiecutter API for creating Custom Skills for Azure Search using Python and Docker

cookiecutter-spacy-fastapi Python cookiecutter API for quick deployments of spaCy models with FastAPI Azure Search The API interface is compatible wit

Microsoft 379 Jan 03, 2023
Redis-based rate-limiting for FastAPI

Redis-based rate-limiting for FastAPI

Glib 6 Nov 14, 2022
FastAPI CRUD template using Deta Base

Deta Base FastAPI CRUD FastAPI CRUD template using Deta Base Setup Install the requirements for the CRUD: pip3 install -r requirements.txt Add your D

Sebastian Ponce 2 Dec 15, 2021
Instrument your FastAPI app

Prometheus FastAPI Instrumentator A configurable and modular Prometheus Instrumentator for your FastAPI. Install prometheus-fastapi-instrumentator fro

Tim Schwenke 441 Jan 05, 2023
FastAPI pagination

FastAPI Pagination Installation # Basic version pip install fastapi-pagination # All available integrations pip install fastapi-pagination[all] Avail

Yurii Karabas 561 Jan 07, 2023
Opinionated set of utilities on top of FastAPI

FastAPI Contrib Opinionated set of utilities on top of FastAPI Free software: MIT license Documentation: https://fastapi-contrib.readthedocs.io. Featu

identix.one 543 Jan 05, 2023
Browse JSON API in a HTML interface.

Falcon API Browse This project provides a middleware for Falcon Web Framework that will render the response in an HTML form for documentation purpose.

Abhilash Raj 4 Mar 16, 2022
FastAPI native extension, easy and simple JWT auth

fastapi-jwt FastAPI native extension, easy and simple JWT auth

Konstantin Chernyshev 19 Dec 12, 2022
api versioning for fastapi web applications

fastapi-versioning api versioning for fastapi web applications Installation pip install fastapi-versioning Examples from fastapi import FastAPI from f

Dean Way 472 Jan 02, 2023
Generate Class & Decorators for your FastAPI project ✨🚀

Classes and Decorators to use FastAPI with class based routing. In particular this allows you to construct an instance of a class and have methods of that instance be route handlers for FastAPI & Pyt

Yasser Tahiri 34 Oct 27, 2022
FastAPI Skeleton App to serve machine learning models production-ready.

FastAPI Model Server Skeleton Serving machine learning models production-ready, fast, easy and secure powered by the great FastAPI by Sebastián Ramíre

268 Jan 01, 2023
Socket.IO integration for Flask applications.

Flask-SocketIO Socket.IO integration for Flask applications. Installation You can install this package as usual with pip: pip install flask-socketio

Miguel Grinberg 4.9k Jan 03, 2023
Twitter API monitor with fastAPI + MongoDB

Twitter API monitor with fastAPI + MongoDB You need to have a file .env with the following variables: DB_URL="mongodb+srv://mongodb_path" DB_URL2=

Leonardo Ferreira 3 Apr 08, 2022
A rate limiter for Starlette and FastAPI

SlowApi A rate limiting library for Starlette and FastAPI adapted from flask-limiter. Note: this is alpha quality code still, the API may change, and

Laurent Savaete 562 Jan 01, 2023