GreatAPI - Full-stack FastAPI Framework
GreatAPI is a full-stack FastAPI framework designed to simplify and accelerate web application development. It leverages the power of FastAPI and integrates various essential tools to provide a seamless development experience.
Documentation
Explore our comprehensive documentation to get started with GreatAPI: Documentation
Source Code
Find the source code on GitHub: GitHub Repository
PyPI Package
Install GreatAPI using PyPI: PyPI Package
Contributors
Major contributors to GreatAPI:
- @thebrowl -> Admin Panel Design
- @lamdiv -> Admin Panel Development with Jinja2
- @Avi777 -> Consultant
Requirements
Before we dive into the tutorial, make sure you have the following requirements in place:
- Python 3.6 or higher installed on your system.
- Familiarity with Python programming language concepts.
GreatAPI is built upon the foundation of the following robust libraries:
- FastAPI: A modern, fast, web framework for building APIs with Python.
- uvicorn: ASGI server that runs FastAPI applications.
- typer: A command-line interface library for building CLI applications.
- jinja2: A templating engine for Python.
- SQLAlchemy: A powerful Object-Relational Mapping (ORM) library for Python.
Installation
To install GreatAPI and its dependencies, use pip:
pip install greatapi
Getting Started
Step 1: Start a New Project
To begin working with GreatAPI, let's create a new project. Open your terminal and execute the following command:
greatapi startproject myproject
This will create a new directory named "myproject" with the basic structure to get you started.
myproject/
├──__init__.py
├──settings.py
main.py
Step 2: Create a New App
An app in GreatAPI is a modular unit that encapsulates specific functionality of your project. To create a new app, run the following command:
greatapi startapp myapp
This will generate a new directory named "myapp" containing the necessary files and folders for your app.
myapp/
├──__init__.py
├──models.py
├──repository.py
├──router.py
├──schemas.py
Step 3: Run the Server
Now, it's time to run the development server. Execute the following command:
greatapi runserver
Step 4: Creating a Superuser
After running the server, let's create a superuser to manage the administration of your project. Execute the following command:
greatapi createsuperuser
Follow the prompts to create the superuser account and again run the server.
The server will start, and you can access your application at http://localhost:8000/. Additionally, GreatAPI provides a beautifully designed built-in Admin Panel accessible at http://localhost:8000/admin.
Release files for greatapi 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| greatapi-1.0.0.tar.gz | 46.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| greatapi-1.0.0-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 112.0 kB
Release files / greatapi-1.0.0.tar.gz
| Download URL | greatapi-1.0.0.tar.gz |
|---|---|
| Size | 46.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4bf949a577fb6aedf7aeff6c384bf5699213d47ccdc6f65480cbd9c46c9c7d5b
|
|
BLAKE2b-256 checksum How to use checksums |
4bee6f95520e508d15d430f3c76a6fad64e0a219f4824a7573167a4b4683ccdd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.17
|
Release files / greatapi-1.0.0-py2.py3-none-any.whl
| Download URL | greatapi-1.0.0-py2.py3-none-any.whl |
|---|---|
| Size | 65.7 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
b5d1476ef8050aa105a38e88dd7c3bb49de2a34fd3c3a30cc6bf210ce0f40e96
|
|
BLAKE2b-256 checksum How to use checksums |
90c0af26253e2e465fa716430a1598d99529633ec8b74145bd6ae990bbebd106
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.17
|