Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/gita/bhagavad-gita-api

Bhagavad Gita API is an open-source API that lets anyone use the text from Srimad Bhagavad Gita in their own web or mobile application(s).
https://github.com/gita/bhagavad-gita-api

api bhagavad-gita bhagavad-gita-api bhagavadgita bhagavadgitaapi fastapi gita gita-api hacktoberfest-2023 hacktoberfest-accepted hindu hinduism krishna rest-api sanatandharma vedic

Last synced: 11 days ago
JSON representation

Bhagavad Gita API is an open-source API that lets anyone use the text from Srimad Bhagavad Gita in their own web or mobile application(s).

Awesome Lists containing this project

README

        



Logo

Bhagavad Gita API


Code for the BhagavadGita.io API, which is an app built for Gita readers by Gita readers.




GitHub issues
PyPI - Python Version

LICENSE

Stars
Docs
Stars

## Usage

The Bhagavad Gita API allows any developer to use content from Gita in their apps.
This API is built with FastAPI which is based on (and fully compatible with) the open standards for APIs: OpenAPI (previously known as Swagger) and JSON Schema.

Documentation for this API is availaible in two interactive formats:
- [Swagger UI](https://api.bhagavadgita.io/docs)
- [Redoc](https://api.bhagavadgita.io/redoc)

If you are interested in using this API for your application, please
register an account at
[RapidAPI](https://rapidapi.com/bhagavad-gita-bhagavad-gita-default/api/bhagavad-gita3)
where you'll get both the credentials as well as sample code in your language of
choice. The API is 100% FREE to use.

## Projects

Here is a list of interesting projects using this API.

- [BhagavadGita.io](https://bhagavadgita.io)
- [Android App](https://play.google.com/store/apps/details?id=com.hanuman.bhagavadgita)

Have you build something with this API ? Open a "Show and tell" discussion. The maintainers will feature your project on the README if they find it interesting.

## Self Hosting

The official API is free to use for all.
But If you wish you can self host anywhere you want.

If you want to deploy your own instance,You can deploy
the API server on your system or VPS.

- Using [`pipx`](https://pypa.github.io/pipx/installation/)
> **Note** If you dont have `pipx`, just `pip install pipx`

```shell
pipx run bhagavad-gita-api
```

- Or using [`docker`](https://www.docker.com/)

```shell
docker run -it -p 8081:8081 --env-file=.env bhagavadgita/bhagavad-gita-api
```

Now open http://localhost:8081/docs to see docs.
To stop the server press Ctrl + C on your keyboard.

By default an in-memory SQLite database is used.
But you configure to use any SQL database of your choice.
The official version uses PostgreSQL.

Looking to deploy on a cloud platform ?
We have detailed docs to deploy to the following platforms:

- [Heroku](https://github.com/gita/bhagavad-gita-api/wiki/Heroku)
- [Deta](https://github.com/gita/bhagavad-gita-api/wiki/Deta)
- [Digital Ocean](https://github.com/gita/bhagavad-gita-api/wiki/Digial-Ocean)

## Configuration

Here is the list of supported environment variables.

| Name | Description | Default |
| ------------------------- | ------------------------------------- | ----------- |
| `TESTER_API_KEY` | The API key for testing. | `None` |
| `SQLALCHEMY_DATABASE_URI` | The DSN for your database connection. | `sqlite://` (in memory SQLite db)|

If you want to configure your deployment even more,
then please take a look at module [`config.py`](bhagavad_gita_api/config.py).

To set the environment variables, you may simply use a `.env` file where you
specify the values in the format of `KEY=VALUE`.

## Development

Feel free to use the [issue tracker](https://github.com/gita/bhagavad-gita-api/issues)
for bugs and feature requests.

Looking to contribute code ? PRs are most welcome!
To get started with developing this API, please read the [contributing guide](.github/CONTRIBUTING.md).

## Community

Join the [Discord chat server](https://discord.gg/gX8dstApZX) and
hang out with others in the community.

You can also use [GitHub Discussions](https://github.com/gita/bhagavad-gita-api/discussions)
to ask questions or tell us about
projects you have built using this API.

## Contributors ✨

Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):



Anubhav Gupta

💻

Sanuj Sood

💻

Aahnik Daw

💻

Akshat Joshi

💻

Amritpal Singh

💻

Niku Singh

💻

sreevardhanreddi

💻 🚇

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors)
specification. Contributions of any kind welcome!