Metadata-Version: 2.1
Name: bigfastapi
Version: 0.6.1
Summary: Adding lots of functionality to FastAPI
Home-page: https://bigfa.st/
Author: BigFastAPI Team
Author-email: support@bigfa.st
License: UNKNOWN
Project-URL: Bug Reports, https://github.com/bigfastcode/bigfastapi/issues
Project-URL: Funding, https://bigfa.st/
Project-URL: Source, https://github.com/bigfastcode/bigfastapi
Keywords: fastapi,bigfastapi,auth
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: Jinja2
Requires-Dist: fastapi
Requires-Dist: wheel
Requires-Dist: uvicorn
Requires-Dist: aioredis
Requires-Dist: aiosmtplib
Requires-Dist: anyio
Requires-Dist: alembic
Requires-Dist: asgiref
Requires-Dist: async-timeout
Requires-Dist: blinker
Requires-Dist: certifi
Requires-Dist: cffi
Requires-Dist: charset-normalizer
Requires-Dist: click
Requires-Dist: dnspython
Requires-Dist: email-validator
Requires-Dist: fastapi-mail
Requires-Dist: fastapi-utils
Requires-Dist: greenlet
Requires-Dist: h11
Requires-Dist: idna
Requires-Dist: MarkupSafe
Requires-Dist: packaging
Requires-Dist: passlib
Requires-Dist: python-jose
Requires-Dist: pdfkit
Requires-Dist: pycparser
Requires-Dist: pydantic
Requires-Dist: fastapi-pagination
Requires-Dist: PyJWT
Requires-Dist: pyparsing
Requires-Dist: authlib
Requires-Dist: qrcode
Requires-Dist: python-decouple
Requires-Dist: python-dotenv
Requires-Dist: cryptography
Requires-Dist: python-jose[cryptography]
Requires-Dist: python-multipart
Requires-Dist: PyYAML
Requires-Dist: requests
Requires-Dist: rfc3986
Requires-Dist: six
Requires-Dist: sniffio
Requires-Dist: sortedcontainers
Requires-Dist: SQLAlchemy
Requires-Dist: starlette
Requires-Dist: typing-extensions
Requires-Dist: watchgod
Requires-Dist: websockets
Requires-Dist: validators
Requires-Dist: pytest
Requires-Dist: itsdangerous

# BigFastAPI

BigFastAPI is an extension of [FastAPI](https://github.com/tiangolo/fastapi) that adds a bunch of things that are commonly used in APIs.

---
**BigFastAPI Documentation**: <a href="https://bigfa.st/" target="_blank">https://bigfa.st/</a>,


**FastAPI Documentation**: <a href="https://fastapi.tiangolo.com" target="_blank">https://fastapi.tiangolo.com</a>

---

## Features

### Implemented
- Authentication (login, logout)
- Users
- Organizations
- Comments
- Blog
- FAQ
- Countries
- Pages
- Contact
- Files
- Notifications
- Image
- Wallet
- PDF Converter
- Credits
- Products


### In Progress
- Transactional Email sending + templates
- Plans
- Bank Accounts
- Subscriptions
- Settings


### Planned
- Currency Rates
- Marketing Emails
- Research bank format providers to build on
- Analytics
- ActivityLog


# How to use BigFastAPI
- Create a new python project
- Create a main.py file and set it up as described in the fastapi documentation
- install the latest version of bigfastapi by running `pip install bigfastapi`
- In your main.py, import FastAPI, CORSMiddleware and the create_database function (from bigfastapi.db.database.py). 
  You can look into the bigfastapi main.py to see everything you should import
- create a .env file and provide all the required environment variables.
  check check .env.sample file for a sample of what the env should contain
- Make sure you have a main that calls uvicorn in the bottom of your file
- You now have access to all the functions in bigfastapi. You can include any of them by importing (from bigfastapi.countries import app as countries) and then including a router app.include_router(countries, tags=["Countries"])
- Run the main.py file `python main.py` to start up your server. 
- learn more about how to use bigfastapi at <a href="https://bigfa.st/" target="_blank">https://bigfa.st/</a>


# How to contribute to BigFastAPI

1. Fork and clone the bigfastapi repository.
2. Create a virtual environment with `python3 -m venv env` or `python -m venv env`
3. Activate the virtual environment using `.\env\Scripts\Activate.ps1` (windows-powershell) 
    or `.\env\Scripts\activate.bat` (windows-command prompt) or `source /path/to/venv/bin/activate` (linux/mac)
4. run `pip install -r requirements.txt`
5. Create a .env file by copying the .env.sample file
6. Run `python main.py`. Check the code to understand how to use the library
7. **commands for building bigfastapi into a library**: `python setup.py sdist bdist_wheel`
8. You can install your local version of the library into another project run: `pip install <path to local bigfastapi>\dist\<name of whl file>`
9. **update on pypi** using `twine upload --repository-url https://upload.pypi.org/legacy/ dist/*` (first install twine using `pip install twine`)

# Documentation

When you run the sample code, visit http://127.0.0.1:7001/docs to view the documentation for all endpoints

## License

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

