Git Product home page Git Product logo

gita / bhagavad-gita-api Goto Github PK

View Code? Open in Web Editor NEW
180.0 8.0 33.0 15.71 MB

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).

Home Page: https://rapidapi.com/bhagavad-gita-bhagavad-gita-default/api/bhagavad-gita3

License: MIT License

Python 98.38% Dockerfile 0.28% Makefile 0.90% Shell 0.42% Ruby 0.02%
bhagavad-gita bhagavad-gita-api krishna bhagavadgita bhagavadgitaapi gita gita-api hinduism hindu sanatandharma

bhagavad-gita-api's Introduction

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:

If you are interested in using this API for your application, please register an account at RapidAPI 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.

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

    Note If you dont have pipx, just pip install pipx

    pipx run bhagavad-gita-api
  • Or using docker

    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:

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.

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 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.

Community

Join the Discord chat server and hang out with others in the community.

You can also use GitHub Discussions to ask questions or tell us about projects you have built using this API.

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


Anubhav Gupta

๐Ÿ’ป

Sanuj Sood

๐Ÿ’ป

Aahnik Daw

๐Ÿ’ป

Akshat Joshi

๐Ÿ’ป

Amritpal Singh

๐Ÿ’ป

Niku Singh

๐Ÿ’ป

sreevardhanreddi

๐Ÿ’ป ๐Ÿš‡

This project follows the all-contributors specification. Contributions of any kind welcome!

bhagavad-gita-api's People

Contributors

aahnik avatar akshatj2209 avatar allcontributors[bot] avatar amritpal2001 avatar ayushsoni1010 avatar gupta-anubhav12 avatar imgbotapp avatar kingshukbansal avatar niku-singh avatar samanyougarg avatar santhoshs20 avatar sanujsood avatar soni-muskan1234 avatar sreevardhanreddi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bhagavad-gita-api's Issues

Documentation fix

What would you like to share?

There are quite a few grammatical errors and typos in the README file which should be corrected at the earliest. Ex: Gita should be preceded by the article 'the' i.e. 'The Gita' which sounds complete and correct.

I would be glad to fix these errors, if I am assigned to this issue.

Misc Todo

Once PR #3 is merged, I will start working on these

Too slow scripts to add references

The scripts to add references is very unoptimised and slow because in each iteration it opens a new query for finding the ID of related tuple,
a much faster way is to have a Get All query once and then make a dict out of it and using in memory data to find IDs instead of making new query to server on each pass,

This need to be optimised for future users and contributors
Thanks
Hare Krishna

[BUG] Missing line at Bhagavad Gita Shloka 1.20

๐Ÿ™ Actual behavior

In this issue, it seems that the third line is missing in the Sanskrit version of the shloka. But it is completed in Romanized text.

Missing line
image

Complete shloka from holy-bhagavad-gita.org
image

๐Ÿ™‚ Expected behavior

It should include the third line in the Sanskrit version of Shloka.

๐Ÿ”ข Steps to Reproduce the Problem

  1. Go https://bhagavadgita.io/
  2. Navigate to chapter 1 verse 20.
  3. You can see the third line is missing in the Sanskrit version of the Verse.

[BUG] Instagram Cron Job is failing

๐Ÿ™ Actual behavior

So our instagram accont was taken down because of voilation of their policies, using a 3rd party library to post images and stuff
so this made our social media cron job to get deactivated,

๐Ÿ™‚ Expected behavior

We need to disable instagram post request and then reactivate the cron job that we are hosting on cron-jobs.org

we need to comment this line

instagram_response = bot.post_on_instagram()

and modify the below if statement to remove instagram condition

if twitter_response == 200 :
                return Response(
                    status_code=201,
                    content="Verse of the day has been posted on Instagram and twitter",
                )

๐Ÿ”ข Steps to Reproduce the Problem

No response

Add Sanskrit Recitations

Adding Sanskrit recitations from a reliable source to backend, making the field for that and deciding a cdn service for audio files,
as of now we can add the audio files along with JSON stored in https://github.com/gita/gita repo and it would work

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.