Giter Site home page Giter Site logo

claim_process's Introduction

Claim Process Assessment

Setup

curl -sSL https://install.python-poetry.org | python3 -
poetry install

Add a dependency

poetry add 'package_name'

Start server

cp .env.example .env
docker compose up -d --build
# Run the migrations
docker compose exec web alembic upgrade head

Notes

The following features have been implemented:

  • Used docker compose and dockerfile for one command standup the environment
  • Used SQLModel, Pydantic v2 for typing gallore end to end
  • Used Alembic to manage SQL migrations
  • Tried to setup async with asyncpg as well but SQLModel is still needs some work for better support
  • Tried to support the non-standard api names but SQLModel has an ongoing bug that prevents to use that feature in FastAPI. I have still created a stub class at this link with more details:
    # Unfortunately there is a bug currently in versions of SQLModel > 0.0.13 that prevents
  • Used postgres latest version for database
  • Used pre-commit-config.yaml for improved developer commit workflow
  • Used Poetry to manage prod and dev dependencies
  • Used a production ready dir structure for the project that is flexible and can be easily expanded
  • Used pydantic_settings package to support 12-factor app methodology for maintaining env vars

Sample endpoint that API will accept for POST /claims

for explanation on keys please go to above shared link:

curl -X 'POST' \
  'http://localhost:8000/api/v1/claims/' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "records": [
    {
      "allowed_fees": "$100.00 ",
      "member_coinsurance": "$0.00 ",
      "member_copay": "$0.00 ",
      "group_plan": "GRP-1000",
      "provider_fees": "$100.00 ",
      "provider_npi": "1497775530",
      "quadrant": "",
      "service_date": "3\/28\/18 0:00",
      "submitted_procedure": "D0180",
      "subscriber_id": "3730189502"
    }
  ]
}'

Makefile commands

Available make commands:

README.md                  Update dynamic blocks in README.md
fix                        Fix linting errors
fmt                        Format Python code
lint                       Lint Python code
requirements.txt           Generate requirements.txt from pyproject.toml
run                        Stand up the environment
test                       Run tests
venv                       Install dev requirements in virtual env from pyproject.toml

claim_process's People

Contributors

siddharthpant avatar

Watchers

 avatar  avatar

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.