# GreatAPI - Full-stack FastAPI Framework
![GreatAPI](https://raw.githubusercontent.com/sahajrajmalla/greatapi/master/greatapi/admin/static/greatapi_readme.svg)
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.
[![Linter](https://github.com/sahajrajmalla/greatapi/actions/workflows/linter.yml/badge.svg)](https://github.com/sahajrajmalla/greatapi/actions/workflows/linter.yml)
![PyPI - Downloads](https://img.shields.io/pypi/dm/greatapi?color=green&style=for-the-badge)
![PyPI](https://img.shields.io/pypi/v/greatapi?style=for-the-badge)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/greatapi?style=for-the-badge)
## Documentation
Explore our comprehensive documentation to get started with GreatAPI: [Documentation](https://greatapi.readthedocs.io/en/latest/)
## Source Code
Find the source code on GitHub: [GitHub Repository](https://github.com/sahajrajmalla/greatapi)
## PyPI Package
Install GreatAPI using PyPI: [PyPI Package](https://pypi.org/project/greatapi/)
## Contributors
Major contributors to GreatAPI:
- [@thebrowl](https://github.com/thebrowl) -> Admin Panel Design
- [@lamdiv](https://github.com/lamdiv) -> Admin Panel Development with Jinja2
- [@Avi777](https://github.com/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`:
```bash
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:
```bash
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:
```bash
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:
```bash
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:
```bash
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.
Raw data
{
"_id": null,
"home_page": "https://github.com/sahajrajmalla/greatapi",
"name": "greatapi",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6.1",
"maintainer_email": "",
"keywords": "",
"author": "Sahaj Raj Malla",
"author_email": "mallasahajraj@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/4b/ee/6f95520e508d15d430f3c76a6fad64e0a219f4824a7573167a4b4683ccdd/greatapi-1.0.0.tar.gz",
"platform": null,
"description": "# GreatAPI - Full-stack FastAPI Framework\n\n![GreatAPI](https://raw.githubusercontent.com/sahajrajmalla/greatapi/master/greatapi/admin/static/greatapi_readme.svg)\n\nGreatAPI 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.\n\n[![Linter](https://github.com/sahajrajmalla/greatapi/actions/workflows/linter.yml/badge.svg)](https://github.com/sahajrajmalla/greatapi/actions/workflows/linter.yml)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/greatapi?color=green&style=for-the-badge)\n![PyPI](https://img.shields.io/pypi/v/greatapi?style=for-the-badge)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/greatapi?style=for-the-badge)\n\n## Documentation\nExplore our comprehensive documentation to get started with GreatAPI: [Documentation](https://greatapi.readthedocs.io/en/latest/)\n\n## Source Code\nFind the source code on GitHub: [GitHub Repository](https://github.com/sahajrajmalla/greatapi)\n\n## PyPI Package\nInstall GreatAPI using PyPI: [PyPI Package](https://pypi.org/project/greatapi/)\n\n## Contributors\nMajor contributors to GreatAPI:\n\n- [@thebrowl](https://github.com/thebrowl) -> Admin Panel Design\n- [@lamdiv](https://github.com/lamdiv) -> Admin Panel Development with Jinja2\n- [@Avi777](https://github.com/Avi777) -> Consultant\n\n## Requirements\n\nBefore we dive into the tutorial, make sure you have the following requirements in place:\n\n- Python 3.6 or higher installed on your system.\n- Familiarity with Python programming language concepts.\n\nGreatAPI is built upon the foundation of the following robust libraries:\n\n- FastAPI: A modern, fast, web framework for building APIs with Python.\n- uvicorn: ASGI server that runs FastAPI applications.\n- typer: A command-line interface library for building CLI applications.\n- jinja2: A templating engine for Python.\n- SQLAlchemy: A powerful Object-Relational Mapping (ORM) library for Python.\n\n## Installation\n\nTo install GreatAPI and its dependencies, use `pip`:\n\n```bash\npip install greatapi\n\n```\n\n## Getting Started\n\n### Step 1: Start a New Project\n\nTo begin working with GreatAPI, let's create a new project. Open your terminal and execute the following command:\n\n```bash\ngreatapi startproject myproject\n\n```\n\nThis will create a new directory named \"myproject\" with the basic structure to get you started.\n\n myproject/\n\n \u251c\u2500\u2500__init__.py\n\n \u251c\u2500\u2500settings.py\n\n main.py\n\n### Step 2: Create a New App\n\nAn app in GreatAPI is a modular unit that encapsulates specific functionality of your project. To create a new app, run the following command:\n\n```bash\ngreatapi startapp myapp\n\n```\n\nThis will generate a new directory named \"myapp\" containing the necessary files and folders for your app.\n\n myapp/\n\n \u251c\u2500\u2500__init__.py\n\n \u251c\u2500\u2500models.py\n\n \u251c\u2500\u2500repository.py\n\n \u251c\u2500\u2500router.py\n\n \u251c\u2500\u2500schemas.py\n\n### Step 3: Run the Server\n\nNow, it's time to run the development server. Execute the following command:\n\n```bash\ngreatapi runserver\n\n```\n### Step 4: Creating a Superuser\n\nAfter running the server, let's create a superuser to manage the administration of your project. Execute the following command:\n\n```bash\ngreatapi createsuperuser\n\n```\n\nFollow the prompts to create the superuser account and again run the server.\n\n\n\nThe 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.\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "GreatAPI framework, Full stack FastAPI framework.",
"version": "1.0.0",
"project_urls": {
"Homepage": "https://github.com/sahajrajmalla/greatapi"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "90c0af26253e2e465fa716430a1598d99529633ec8b74145bd6ae990bbebd106",
"md5": "c4f024c02d68f981777dd613cbe216e4",
"sha256": "b5d1476ef8050aa105a38e88dd7c3bb49de2a34fd3c3a30cc6bf210ce0f40e96"
},
"downloads": -1,
"filename": "greatapi-1.0.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "c4f024c02d68f981777dd613cbe216e4",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.6.1",
"size": 65741,
"upload_time": "2023-08-03T01:42:06",
"upload_time_iso_8601": "2023-08-03T01:42:06.588611Z",
"url": "https://files.pythonhosted.org/packages/90/c0/af26253e2e465fa716430a1598d99529633ec8b74145bd6ae990bbebd106/greatapi-1.0.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4bee6f95520e508d15d430f3c76a6fad64e0a219f4824a7573167a4b4683ccdd",
"md5": "505a6afcea048839a28e3766ce4c3978",
"sha256": "4bf949a577fb6aedf7aeff6c384bf5699213d47ccdc6f65480cbd9c46c9c7d5b"
},
"downloads": -1,
"filename": "greatapi-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "505a6afcea048839a28e3766ce4c3978",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.1",
"size": 46306,
"upload_time": "2023-08-03T01:42:08",
"upload_time_iso_8601": "2023-08-03T01:42:08.386093Z",
"url": "https://files.pythonhosted.org/packages/4b/ee/6f95520e508d15d430f3c76a6fad64e0a219f4824a7573167a4b4683ccdd/greatapi-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-03 01:42:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "sahajrajmalla",
"github_project": "greatapi",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "greatapi"
}