Skip to main content

A simple tool designed to automatically generate usable types, functions, and other useful server-side code from a list of [FastAPI](https://fastapi.tiangolo.com/) application to a given framework.

Project description

fast2app package

Maintenance License: MIT coverage

FastAPI Nuxtjs

Description

A simple tool designed to automatically generate usable types, functions, and other useful server-side code from a list of FastAPI application to a given framework.

This is particularly helpful when working with FasttAPI backends applications and wanting to generate types and functions for the frontend.

Currently supported frameworks

Installation

#  Install fast2app
pip install fast2app

Requirements

This package is currently compatible with python 3.11 and above.

It requires that you have the quicktype CLI utility installed.

#  Install quicktype
npm install -g quicktype

Usage and examples

This package is used as a CLI tool.

# Nuxt3
# You must ammend your nuxt.config.ts file and environement variables in order to use the new generated files. See documentations below.

fast2nuxt --fast-api-app path/to/fastapi/app.py::app_name --export-path path/to/nuxt/app/root/folder -composables

For specific instructions, please see :

Helpdesk

Go here to report an issue

Current Features

Core

  • Command line interface with fast2app
  • Export FastAPI pydantic model as typescript interfaces in nuxt, including Enums
  • Export FastApi as Nuxt API Server
  • Export FastApi as Nuxt Composables

Tests

  • Base Tests
  • Utils Tests
  • Export Tests
  • CLI Tests
  • Integration tests :
    • Nuxt :
      • Api Server
      • Composables
  • Coverage as artifacts
  • Junit reports

Roadmap

Future releases

  • Create e more robust documentation in a website
  • make it compatible with older python versions
  • Refactor package to more easily add support for more frameworks.
  • Refactor testing in order to use the same parameters and edge cases for all frameworks.
  • Add python framework support.

Ambitions

  • Add support for more frameworks (React, Vue, Angular, etc.) with contributions from the community.

Contributing

I've launched into this project as a side task of a bigger endeavor.

Considerig the growing popularity of FastAPI, I think that this tool could be a great addition to the ecosystem and I have decided to make it open source.

I'm new to open source and am open to any ideas, contribution or constructive feedback.

Go here to contact me

Retrieve the repository

cd existing_repo
git remote add origin https://git.mydh.io/shared/fast2app.git
git branch -M main
git pull origin main

License

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fast2app-1.2.2.tar.gz (27.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fast2app-1.2.2-py3-none-any.whl (46.5 kB view details)

Uploaded Python 3

File details

Details for the file fast2app-1.2.2.tar.gz.

File metadata

  • Download URL: fast2app-1.2.2.tar.gz
  • Upload date:
  • Size: 27.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.0 CPython/3.11.9 Linux/5.10.0-31-amd64

File hashes

Hashes for fast2app-1.2.2.tar.gz
Algorithm Hash digest
SHA256 31e24ea23bbf5c75f46703d08176dbf31e62421072a4d600e3018138262b508c
MD5 bf813e5ef0ec3249dff244bf75e86b90
BLAKE2b-256 e5330ebcdfc533f9ca9d4b1148a3059353519b40f00f7f51b125c3097763bdc6

See more details on using hashes here.

File details

Details for the file fast2app-1.2.2-py3-none-any.whl.

File metadata

  • Download URL: fast2app-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 46.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.0 CPython/3.11.9 Linux/5.10.0-31-amd64

File hashes

Hashes for fast2app-1.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4711c180711827520c5623936ee6c0ea4f27d840dfbc5dde34c59f8a0e946450
MD5 1d545e9ae1cfd406aa4d2951cf929750
BLAKE2b-256 90d19d8b324fe947adb27ca00d5c7b95b6b6fea2e4a918d63dc9e1071b3189ff

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page