Skip to content

(Glitlab Mirror) REST API based core_engine for GNUKhata

License

Notifications You must be signed in to change notification settings

gnukhata/gkcore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GKCORE

The REST API server of GNUKhata

Development Setup

Docker

Linux/Mac

Requirements:

# Install dependencies
# On debian/Ubuntu distro's
sudo apt install libpq-dev build-essential python3-dev python3-pip

# after cloning this repo, cd to the folder
cd gkcore/

# create virtualenv
python3 -m venv gkenv

# activate the virtualenv
source gkenv/bin/activate

# install dependencies & initialize the application.
# make sure to follow the instructions above to run docker as non-root user
# otherwise you will get permission error
./gkcore_cli.py init

# starts the dev server
./gkcore_cli.py serve

gkcore can be accessed at http://localhost:6543

The API docs (swagger UI) can be accessed via http://localhost:6543/docs/ from your web browser

Windows 11

Requirements:

  • docker
  • wsl --install (run this command in the cmd prompt in an administrator mode)
  • Node.js 16.x.x
  • Microsoft Visual C++ Redistributable Download v14 or higher versions. Download all the packages present
  • python Add the path while installing
  • postgres 12.x
  • Git Download the standalone installer for required bit
  • python gkcore_cli.py init Run this command to initialize the DB
  • python gkcore_cli.py serve Run this command to initialize the dev server (localhost:6543)

Troubleshooting:

  • docker inspect gkcore-db-1 Run the command on cmd to check the IP address
  • docker ps Run this command on cmd to check the status of the containers

Environment Variables:

  • GKCORE_DB_URL: Provide a custom database URL

  • GKCORE_DISABLE_REGISTRATION: set to "yes" to disable registrations.

After Installation

  • When gkcore is installed on VPS, make sure to change the timezone to India with command timedatectl set-timezone Asia/Kolkata as organization logs pickup the default timezone.

Contributions

Please refer CONTRIBUTING.md

Public instances

API endpoint Info
https://api-dev.gnukhata.org Hosted by GNUKhata team. this api is based on devel branch

Useful Links

Credits

  • Razorpay IFSC: IFSC validation server is used as a docker service
  • pgadmin: Helps visualizing gnukhata's database locally
  • GST Portal: For providing HSN/SAC codes spreadsheet

About

(Glitlab Mirror) REST API based core_engine for GNUKhata

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages