Skip to main content

Rupantaran converts Nepali-specific measurements into SI or metric units.

Project description

Rupantaran

PyPI
TestPyPI
License: MIT codecov

Rupantaran is a Python package that converts various Nepali-specific measurements into SI units or commonly used metric units. You can read the docs here.


📌 Supported Measurement Categories

This package covers a range of traditional Nepalese measurement units, including:

  • Land: khetmuri, bigha, kattha, dhur, ropani, aana, paisa, dam , square meter
  • Volume: mutthi, mana, pathi, dabba
  • Length: angul, dharnugrah, dhanurmushti, vitastaa, haath, kosh, yojan
  • Weight: lal, tola, chatak, pau, dharni, sher, kg, g, lb, oz

The package ensures accurate conversions by cross-referencing multiple resources. Please create an issue if you find any discrepancies in conversion maps.


📚 Conversion References

  1. Wikipedia - Nepalese Units of Measurement
  2. Mero Kalam - Land Measurement
  3. Ministry of Land Reform Conversion Tool
  4. Rotaract - Unit Conversion PDF
  5. 1990 JICA Conversion Table

Environment Setup Guide for Rupantaran

This document provides a step-by-step guide to setting up the development and production environments for the rupantaran package.

📌 Development Environment

This environment is used for publishing the package to TestPyPI, PyPI's testing server. This is facilated with GitHub Actions workflow. The TestPyPI link for rupantaran is here.

Expand for more details for the development environment
Note: The GitHub Actions workflow is configured to run automatically when a new tag is pushed to the repository. This ensures that the package is always built and uploaded to TestPyPI when a new version is released.

# Always create a tag after the version_id is updated in the setup.py file.
# Create a new tag
git tag v0.2.2
# Push the tag to the repository
git push origin v0.2.2

✅ Steps to Set Up the Development Environment:

  1. Activate the development environment:

    conda activate env-rupantaran-dev
    
  2. Install required dependencies for building and uploading the package:

    pip install build twine
    
  3. Build the package and install it in editable mode:

    python -m build
    pip install -e .
    
    • This generates the dist/ directory containing .tar.gz and .whl files.
  4. Upload the package to TestPyPI:

    twine upload --repository testpypi dist/*
    
    • You will need an API Key for authentication.
  5. Install the package from TestPyPI to verify deployment:

    pip install --index-url https://test.pypi.org/simple/ rupantaran
    
  6. Run tests on the installed package:

    pytest --pyargs rupantaran
    

📌 Production Environment

This environment is used for publishing the final package to PyPI.This is facilated with GitHub Actions workflow. The PyPI link for rupantaran is here.

Expand for more details for the production environment
Note: The Github Action workflow is configured to push the package to PyPI when a PR is merged into the main branch.

✅ Steps to Set Up the Production Environment:

  1. Activate the production environment:

    conda activate env-rupantaran-prod
    
  2. Upload the final version to PyPI:

    twine upload dist/*
    
    • This makes the package available on the official PyPI repository.

Documentation

  1. Navigate to directory
    cd rupantaran/docs
    
  2. Generate the docs
    make html
    
  3. Serve the docs in localhost
    sphinx-autobuild . _build 
    

🛠 Additional Notes

  • Always test the package in the staging environment before publishing to production.
  • If needed, remove the dist/ directory before rebuilding the package:
    rm -rf dist/
    
  • If you face authentication issues, regenerate the API token from TestPyPI or PyPI and update your ~/.pypirc file. This is not relevant here, because we are using GitHub Actions to upload the package to TestPyPI and PyPI.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rupantaran-0.2.7.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rupantaran-0.2.7-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file rupantaran-0.2.7.tar.gz.

File metadata

  • Download URL: rupantaran-0.2.7.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for rupantaran-0.2.7.tar.gz
Algorithm Hash digest
SHA256 0ffdd107cee770495614ca00fc2942e324e7b6d2fb7607fba1922981e1cbebd2
MD5 7971f4db347eadbf862b508fb4afd350
BLAKE2b-256 d6570008bd21982d8ed6ee8b9ea6a8e0280ed8e05771edb51708b9e88ff90573

See more details on using hashes here.

File details

Details for the file rupantaran-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: rupantaran-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for rupantaran-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8a4e87ead54c9f02d8d0f50e51d8c18377219d0e1d1a73c7d530c4c60374aff8
MD5 f0a459b406c95013799f7e19178a13b3
BLAKE2b-256 6444bc0b2f3b33ed48c6840049a52bf1576d3c115ee4c203d904e5713d14eb15

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page