From 744844e49f6d22b9007d9f42e4bcaf0023d83285 Mon Sep 17 00:00:00 2001 From: Robera Negussie <47657043+roberanegussie@users.noreply.github.com> Date: Sat, 29 Jul 2023 16:07:37 +0300 Subject: [PATCH 01/12] Interest Coverage Ratio --- DOCUMENTATION.md | 5 +++++ ENDPOINTS.md | 25 ++++++++++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 0542f4d..0d04642 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -71,3 +71,8 @@ The initial price of the product or service. | | | | - `interest_rate` (float): The annual interest rate on the savings. | | | | - `goal_amount ` (float): The desired savings goal amount. | |-----------------------------|----------------------------------------|----------------------------------------------------------------------| +| POST /interest_coverage_ratio | Calculate interest coverage ratio | - `revenue` (float): The amount of income generated through business operations. | +| | | - `cost_of_goods_services` (float): Total amount of costs spent on goods and services.| +| | | - `operating_expenses` (int): The amount of operating expenses. | +| | | - `interest_expense` (int): The cost incurred by an entity for borrowed funds. | +|-------------------------------|----------------------------------------|---------------------------------------------------------| diff --git a/ENDPOINTS.md b/ENDPOINTS.md index 9a3aeac..a547816 100644 --- a/ENDPOINTS.md +++ b/ENDPOINTS.md @@ -2305,4 +2305,27 @@ Sample Output "months_required": 18, "total_contributions": 3600, "interest_earned": 315.27777777777777 - }``` + } +``` + +**POST** `/interest_coverage_ratio` + +- Request body : `{ + "revenue": 150000, + "cost_of_goods_services": 50000, + "operating_expenses": 40000 + "interest_expense": 16000 +}` +- Sample output + +```py +{ + "Tag": "Interest Coverage Ratio" + "Revenue": 150000, + "Cost of Goods and Services": 50000, + "Operating Expenses": 40000, + "Interest Expenses": 16000, + "Earnings Before Interest and Taxes": 60000, + "Interest Coverage Ratio": "3.75%", +} +``` From c314502a06b9c128b70b851802ad20c2b366476a Mon Sep 17 00:00:00 2001 From: Robera Negussie <47657043+roberanegussie@users.noreply.github.com> Date: Sat, 29 Jul 2023 16:07:53 +0300 Subject: [PATCH 02/12] Interest Coverage Ratio --- helpers/functions.py | 8 ++++++++ main.py | 16 +++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/helpers/functions.py b/helpers/functions.py index acad33d..43f7eff 100644 --- a/helpers/functions.py +++ b/helpers/functions.py @@ -2068,3 +2068,11 @@ def calculate_modified_internal_rate_of_return(ending_cash_flow: float, number_of_periods: int): mirr = ((ending_cash_flow / initial_cash_flow) ** (1 / number_of_periods)) - 1 return mirr*100 + +# Function to Calculate Interest Coverage Ratio + +def interest_coverage_ratio(revenue:float, cost_of_goods_services:float, operating_expenses:float, +interest_expense:float): + EBIT = revenue - cost_of_goods_services - operating_expenses + ratio = EBIT / interest_expense + return ratio \ No newline at end of file diff --git a/main.py b/main.py index 6382da1..ea08687 100644 --- a/main.py +++ b/main.py @@ -135,12 +135,13 @@ from tasks.cash_conversion_cycle import cash_conversion_cycle_task from tasks.financialAssestRatio import financial_assest_ratio from tasks.PolicyPremium import calculate_policy_premium -from validators.request_validators import SimpleInterestRateRequest, calculatePension, compoundInterest, futureSip, paybackPeriod, capmRequest, DebtServiceCoverageRatio, futureValueOfAnnuity, futureValueOfAnnuityDue, ProfitPercentage, LossPercentage, DefensiveIntervalRatio, CashConversionCycle, RateofReturn, financialAssestRatio, PriceElasticity, PolicyPremium, AveragePaymentPeriod, ModifiedInternalRateOfReturn +from validators.request_validators import SimpleInterestRateRequest, calculatePension, compoundInterest, futureSip, paybackPeriod, capmRequest, DebtServiceCoverageRatio, futureValueOfAnnuity, futureValueOfAnnuityDue, ProfitPercentage, LossPercentage, DefensiveIntervalRatio, CashConversionCycle, RateofReturn, financialAssestRatio, PriceElasticity, PolicyPremium, AveragePaymentPeriod, ModifiedInternalRateOfReturn, SavingGoal, InterestCoverageRatio from tasks.financialAssestRatio import financial_assest_ratio from tasks.PriceElasticity import calculate_price_elasticity from tasks.average_payment_period import average_payment_period_task from tasks.Saving_Goal import saving_goal from tasks.modified_internal_rate_of_return import calculate_modified_internal_rate_of_return_task +from tasks.interest_coverage_ratio import interest_coverage_ratio_task # Creating the app app = FastAPI( @@ -274,6 +275,8 @@ def index(): "/loss_percent": "Calculates the loss percentage", "/average_payment_period": "Calculate Average Payment Period a metric that allows a business to see how long it takes on average to pay its vendors.", "/modified_internal_rate_of_return": "Calculate modified internal rate of return", + "/interest_coverage_ratio": "Calculates interest coverage ratio", + }, } @@ -1996,3 +1999,14 @@ def saving_goal(request: SavingGoal): request.monthly_contributions , request.interest_rate, request.goal_amount ) + +# Endpoint to calculate Interest Coverage Ratio + +@app.post( + "/interest_coverage_ratio", + tags=["interest_coverage_ratio"], + description="Calculates interest coverage ratio", +) +def interest_coverage_ratio(request: InterestCoverageRatio): + return interest_coverage_ratio_task(request.revenue, request.cost_of_goods_services, + request.operating_expenses, request.interest_expense) From e529496e622cd90bc465f7291ea4dd14658bb041 Mon Sep 17 00:00:00 2001 From: Robera Negussie <47657043+roberanegussie@users.noreply.github.com> Date: Sat, 29 Jul 2023 16:08:46 +0300 Subject: [PATCH 03/12] Interest Coverage Ratio --- tasks/interest_coverage_ratio.py | 21 +++++++++++++++++++++ validators/request_validators.py | 6 ++++++ 2 files changed, 27 insertions(+) create mode 100644 tasks/interest_coverage_ratio.py diff --git a/tasks/interest_coverage_ratio.py b/tasks/interest_coverage_ratio.py new file mode 100644 index 0000000..f75abdd --- /dev/null +++ b/tasks/interest_coverage_ratio.py @@ -0,0 +1,21 @@ + +from helpers import functions +from fastapi import HTTPException, status + + +def interest_coverage_ratio_task(revenue:float, cost_of_goods_services:float, operating_expenses:float, interest_expense:float): + try: + EBIT = revenue - cost_of_goods_services - operating_expenses + ratio = functions.interest_coverage_ratio(revenue, cost_of_goods_services, operating_expenses, interest_expense) + return{ + "Tag": "Interest Coverage Ratio", + "Revenue": revenue, + "Cost of Goods and Services": cost_of_goods_services, + "Operating Expenses": operating_expenses, + "Interest Expenses": interest_expense, + "Earnings Before Interest and Taxes": EBIT, + "Interest Coverage Ratio": f"{ratio}%", + } + + except: + return HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR) diff --git a/validators/request_validators.py b/validators/request_validators.py index b58f3c4..9e371b8 100644 --- a/validators/request_validators.py +++ b/validators/request_validators.py @@ -659,3 +659,9 @@ class ModifiedInternalRateOfReturn(BaseModel): ending_cash_flow: float initial_cash_flow: float number_of_periods: int + +class InterestCoverageRatio(BaseModel): + revenue:float + cost_of_goods_services:float + operating_expenses:float + interest_expense:float From fb8123a9ceb6e69fdb381e2cf59fdd1addda59f4 Mon Sep 17 00:00:00 2001 From: Divyanshi Date: Wed, 2 Aug 2023 00:01:54 +0530 Subject: [PATCH 04/12] Added links --- Readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Readme.md b/Readme.md index 61a96be..5f672f5 100644 --- a/Readme.md +++ b/Readme.md @@ -42,8 +42,8 @@ Welcome to FinTech API, our powerful API is designed to simplify your life by of ## 💻 Tech Stack - ![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge&logo=python&logoColor=ffdd54) - ![FastAPI](https://img.shields.io/badge/FastAPI-005571?style=for-the-badge&logo=fastapi) + [![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge&logo=python&logoColor=ffdd54)](https://www.python.org/doc/) + [![FastAPI](https://img.shields.io/badge/FastAPI-005571?style=for-the-badge&logo=fastapi)](https://fastapi.tiangolo.com/) ## ✨ How to use it? From 7ac80e9d18e59d7b7056da8e00d4135ef3e0b278 Mon Sep 17 00:00:00 2001 From: Shraddha Singh Date: Fri, 4 Aug 2023 19:08:00 +0530 Subject: [PATCH 05/12] Tax Bracket calculator --- DOCUMENTATION.md | 3 ++ ENDPOINTS.md | 15 ++++++++++ helpers/functions.py | 31 ++++++++++++++++++++- main.py | 13 ++++++++- tasks/tax_bracket_calculator.py | 48 ++++++++++++++++++++++++++++++++ validators/request_validators.py | 4 +++ 6 files changed, 112 insertions(+), 2 deletions(-) create mode 100644 tasks/tax_bracket_calculator.py diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 0d04642..18bf9ad 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -76,3 +76,6 @@ The initial price of the product or service. | | | | - `operating_expenses` (int): The amount of operating expenses. | | | | - `interest_expense` (int): The cost incurred by an entity for borrowed funds. | |-------------------------------|----------------------------------------|---------------------------------------------------------| +| POST /tax_bracket_calculator | Calculate Tax Bracket Calculator | - `income` (float): The total income earned by the individual. | +| | | - `filing_status` (String): The tax filing status of the individual.| +|-------------------------------|----------------------------------------|---------------------------------------------------------| \ No newline at end of file diff --git a/ENDPOINTS.md b/ENDPOINTS.md index a547816..652dfde 100644 --- a/ENDPOINTS.md +++ b/ENDPOINTS.md @@ -2329,3 +2329,18 @@ Sample Output "Interest Coverage Ratio": "3.75%", } ``` +**POST** `/tax_bracket_calculator` + +- Request body : `{ + "income": 50000, + "filing_status": single, +}` +- Sample output + +```py +{ + "Tag": "Tax Bracket Calculator" + "applicable_tax_bracket": 12.00%, + "tax_liability": 6000.00, +} +``` diff --git a/helpers/functions.py b/helpers/functions.py index 43f7eff..f5604dc 100644 --- a/helpers/functions.py +++ b/helpers/functions.py @@ -2075,4 +2075,33 @@ def interest_coverage_ratio(revenue:float, cost_of_goods_services:float, operati interest_expense:float): EBIT = revenue - cost_of_goods_services - operating_expenses ratio = EBIT / interest_expense - return ratio \ No newline at end of file + return ratio + +# Function to Calculate Tax Bracket Calculator + +def tax_bracket_calculator(income:float, filing_status:str): + tax_brackets = { + 'single': {0: 0.10, 9875: 0.12, 40125: 0.22, 85525: 0.24, 163300: 0.32, 207350: 0.35, 518400: 0.37}, + 'married_joint': {0: 0.10, 19750: 0.12, 80250: 0.22, 171050: 0.24, 326600: 0.32, 414700: 0.35, 622050: 0.37}, + 'head_of_household': {0: 0.10, 14100: 0.12, 53700: 0.22, 85500: 0.24, 163300: 0.32, 207350: 0.35, 518400: 0.37} + } + + if filing_status not in tax_brackets: + raise ValueError("Invalid filing status.") + + applicable_brackets = tax_brackets[filing_status] + tax_liability = 0 + remaining_income = income + + for bracket, tax_rate in applicable_brackets.items(): + if remaining_income <= bracket: + tax_liability += remaining_income * tax_rate + break + else: + taxable_income_in_bracket = bracket - max(0, income - remaining_income) + tax_liability += taxable_income_in_bracket * tax_rate + remaining_income -= taxable_income_in_bracket + + tax_ratio = tax_liability / income + + return {"Tax Ratio": "{:.2%}".format(tax_ratio)} \ No newline at end of file diff --git a/main.py b/main.py index ea08687..13a6dff 100644 --- a/main.py +++ b/main.py @@ -135,13 +135,14 @@ from tasks.cash_conversion_cycle import cash_conversion_cycle_task from tasks.financialAssestRatio import financial_assest_ratio from tasks.PolicyPremium import calculate_policy_premium -from validators.request_validators import SimpleInterestRateRequest, calculatePension, compoundInterest, futureSip, paybackPeriod, capmRequest, DebtServiceCoverageRatio, futureValueOfAnnuity, futureValueOfAnnuityDue, ProfitPercentage, LossPercentage, DefensiveIntervalRatio, CashConversionCycle, RateofReturn, financialAssestRatio, PriceElasticity, PolicyPremium, AveragePaymentPeriod, ModifiedInternalRateOfReturn, SavingGoal, InterestCoverageRatio +from validators.request_validators import SimpleInterestRateRequest, calculatePension, compoundInterest, futureSip, paybackPeriod, capmRequest, DebtServiceCoverageRatio, futureValueOfAnnuity, futureValueOfAnnuityDue, ProfitPercentage, LossPercentage, DefensiveIntervalRatio, CashConversionCycle, RateofReturn, financialAssestRatio, PriceElasticity, PolicyPremium, AveragePaymentPeriod, ModifiedInternalRateOfReturn, SavingGoal, InterestCoverageRatio, TaxBracketCalculator from tasks.financialAssestRatio import financial_assest_ratio from tasks.PriceElasticity import calculate_price_elasticity from tasks.average_payment_period import average_payment_period_task from tasks.Saving_Goal import saving_goal from tasks.modified_internal_rate_of_return import calculate_modified_internal_rate_of_return_task from tasks.interest_coverage_ratio import interest_coverage_ratio_task +from tasks.tax_bracket_calculator import tax_bracket_calculator # Creating the app app = FastAPI( @@ -2010,3 +2011,13 @@ def saving_goal(request: SavingGoal): def interest_coverage_ratio(request: InterestCoverageRatio): return interest_coverage_ratio_task(request.revenue, request.cost_of_goods_services, request.operating_expenses, request.interest_expense) + +# Endpoint to calculate Tax Bracket Calculator + +@app.post( + "/tax_bracket_calculator", + tags=["tax_bracket_calculator"], + description="Calculates Tax Bracket Calculator", +) +def tax_bracket_calculator(request: TaxBracketCalculator): + return interest_coverage_ratio_task(request.income, request.filing_status) \ No newline at end of file diff --git a/tasks/tax_bracket_calculator.py b/tasks/tax_bracket_calculator.py new file mode 100644 index 0000000..328c7ea --- /dev/null +++ b/tasks/tax_bracket_calculator.py @@ -0,0 +1,48 @@ +from helpers import functions +from fastapi import HTTPException, status + +def tax_bracket_calculator(income: float, filing_status: str,): + try: + """ + Calculate the applicable tax bracket and tax liability based on a user's income and tax filing status (United States, 2021 tax brackets for single filers). + + Parameters: + income (float): The user's total income. + filing_status (str): The user's tax filing status ('single', 'married_joint', 'married_separate', 'head_of_household'). + + Returns: + dict: A dictionary containing the applicable tax bracket and tax liability. + - 'Tax Bracket': The user's applicable tax bracket as a percentage. + - 'Tax Liability': The calculated tax liability amount. + """ + # Tax brackets and their corresponding tax rates (United States, 2021 tax brackets for single filers) + tax_brackets = { + 0: 0.10, + 9875: 0.12, + 40125: 0.22, + 85525: 0.24, + 163300: 0.32, + 207350: 0.35, + 518400: 0.37, + } + + # Find the applicable tax bracket and calculate the tax liability + tax_liability = 0 + remaining_income = income + + for bracket, tax_rate in tax_brackets.items(): + if remaining_income <= bracket: + tax_liability += remaining_income * tax_rate + break + else: + taxable_income_in_bracket = bracket - max(0, income - remaining_income) + tax_liability += taxable_income_in_bracket * tax_rate + remaining_income -= taxable_income_in_bracket + + return { + "Tag": "Accrued Interest", + 'Tax Bracket': "{:.2%}".format(tax_rate), + 'Tax Liability': tax_liability, + } + except: + return HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR) \ No newline at end of file diff --git a/validators/request_validators.py b/validators/request_validators.py index 9e371b8..b96b356 100644 --- a/validators/request_validators.py +++ b/validators/request_validators.py @@ -665,3 +665,7 @@ class InterestCoverageRatio(BaseModel): cost_of_goods_services:float operating_expenses:float interest_expense:float + +class TaxBracketCalculator(BaseModel): + income:float + filing_status:str From e88136dc26796a76778823d8c26498477fb66446 Mon Sep 17 00:00:00 2001 From: Robera Negussie <47657043+roberanegussie@users.noreply.github.com> Date: Fri, 4 Aug 2023 18:55:25 +0300 Subject: [PATCH 06/12] margin_of_safety --- DOCUMENTATION.md | 3 +++ ENDPOINTS.md | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 0d04642..0caff69 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -76,3 +76,6 @@ The initial price of the product or service. | | | | - `operating_expenses` (int): The amount of operating expenses. | | | | - `interest_expense` (int): The cost incurred by an entity for borrowed funds. | |-------------------------------|----------------------------------------|---------------------------------------------------------| +| POST /margin_of_safety | Calculate margin of safety | - `current_sales` (float): The amount of current sales. | +| | | - `break_even_point` (float): The break_even_point amount. | +|--------------------------- ---|----------------------------------------|---------------------------------------------------------| \ No newline at end of file diff --git a/ENDPOINTS.md b/ENDPOINTS.md index a547816..d16e6fa 100644 --- a/ENDPOINTS.md +++ b/ENDPOINTS.md @@ -2329,3 +2329,19 @@ Sample Output "Interest Coverage Ratio": "3.75%", } ``` +**POST** `/margin_of_safety` + +- Request body : `{ + "current_sales": 50000, + "break_even_point": 46000 +}` +- Sample output + +```py +{ + "Tag": "Margin Of Safety", + "Current Sales": 50000, + "Break Even Point": 46000, + "Margin Of Safety": 8%, +} +``` From 781bdc30c6cc9e9e26cc06795f01e9e32b7361b7 Mon Sep 17 00:00:00 2001 From: Robera Negussie <47657043+roberanegussie@users.noreply.github.com> Date: Fri, 4 Aug 2023 18:55:44 +0300 Subject: [PATCH 07/12] margin_of_safety --- helpers/functions.py | 8 +++++++- main.py | 15 ++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/helpers/functions.py b/helpers/functions.py index 43f7eff..f01e700 100644 --- a/helpers/functions.py +++ b/helpers/functions.py @@ -2075,4 +2075,10 @@ def interest_coverage_ratio(revenue:float, cost_of_goods_services:float, operati interest_expense:float): EBIT = revenue - cost_of_goods_services - operating_expenses ratio = EBIT / interest_expense - return ratio \ No newline at end of file + return ratio + +# Function to Calculate Margin of Safety + +def margin_of_safety(current_sales:float, break_even_point: float): + margin = ((current_sales - break_even_point) / current_sales) * 100 + return margin \ No newline at end of file diff --git a/main.py b/main.py index ea08687..6925756 100644 --- a/main.py +++ b/main.py @@ -135,13 +135,15 @@ from tasks.cash_conversion_cycle import cash_conversion_cycle_task from tasks.financialAssestRatio import financial_assest_ratio from tasks.PolicyPremium import calculate_policy_premium -from validators.request_validators import SimpleInterestRateRequest, calculatePension, compoundInterest, futureSip, paybackPeriod, capmRequest, DebtServiceCoverageRatio, futureValueOfAnnuity, futureValueOfAnnuityDue, ProfitPercentage, LossPercentage, DefensiveIntervalRatio, CashConversionCycle, RateofReturn, financialAssestRatio, PriceElasticity, PolicyPremium, AveragePaymentPeriod, ModifiedInternalRateOfReturn, SavingGoal, InterestCoverageRatio +from validators.request_validators import SimpleInterestRateRequest, calculatePension, compoundInterest, futureSip, paybackPeriod, capmRequest, DebtServiceCoverageRatio, futureValueOfAnnuity, futureValueOfAnnuityDue, ProfitPercentage, LossPercentage, DefensiveIntervalRatio, CashConversionCycle, RateofReturn, financialAssestRatio, PriceElasticity, PolicyPremium, AveragePaymentPeriod, ModifiedInternalRateOfReturn, SavingGoal, InterestCoverageRatio, MarginOfSafety from tasks.financialAssestRatio import financial_assest_ratio from tasks.PriceElasticity import calculate_price_elasticity from tasks.average_payment_period import average_payment_period_task from tasks.Saving_Goal import saving_goal from tasks.modified_internal_rate_of_return import calculate_modified_internal_rate_of_return_task from tasks.interest_coverage_ratio import interest_coverage_ratio_task +from tasks.margin_of_safety import margin_of_safety_task + # Creating the app app = FastAPI( @@ -276,6 +278,7 @@ def index(): "/average_payment_period": "Calculate Average Payment Period a metric that allows a business to see how long it takes on average to pay its vendors.", "/modified_internal_rate_of_return": "Calculate modified internal rate of return", "/interest_coverage_ratio": "Calculates interest coverage ratio", + "/margin_of_safety": "Calculates margin of safety", }, } @@ -2010,3 +2013,13 @@ def saving_goal(request: SavingGoal): def interest_coverage_ratio(request: InterestCoverageRatio): return interest_coverage_ratio_task(request.revenue, request.cost_of_goods_services, request.operating_expenses, request.interest_expense) + +# Endpoint to calculate Margin of Safety + +@app.post( + "/margin_of_safety", + tags=["margin_of_safety"], + description="Calculates margin of safety", +) +def margin_of_safety(request: MarginOfSafety): + return margin_of_safety_task(request.current_sales, request.break_even_point) From ba5c9702e3447b9ef3873bb57543ef708d9628dc Mon Sep 17 00:00:00 2001 From: Robera Negussie <47657043+roberanegussie@users.noreply.github.com> Date: Fri, 4 Aug 2023 18:55:55 +0300 Subject: [PATCH 08/12] margin_of_safety --- tasks/margin_of_safety.py | 16 ++++++++++++++++ validators/request_validators.py | 4 ++++ 2 files changed, 20 insertions(+) create mode 100644 tasks/margin_of_safety.py diff --git a/tasks/margin_of_safety.py b/tasks/margin_of_safety.py new file mode 100644 index 0000000..b2f5ee1 --- /dev/null +++ b/tasks/margin_of_safety.py @@ -0,0 +1,16 @@ + +from helpers import functions +from fastapi import HTTPException, status + + +def margin_of_safety_task(current_sales:float, break_even_point: float): + try: + margin = functions.margin_of_safety (current_sales, break_even_point) + return{ + "Tag": "Margin Of Safety", + "Current Sales": current_sales, + "Break Even Point": break_even_point, + "Margin Of Safety": f"{margin}%", + } + except: + return HTTPException(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR) diff --git a/validators/request_validators.py b/validators/request_validators.py index 9e371b8..92ac671 100644 --- a/validators/request_validators.py +++ b/validators/request_validators.py @@ -665,3 +665,7 @@ class InterestCoverageRatio(BaseModel): cost_of_goods_services:float operating_expenses:float interest_expense:float + +class MarginOfSafety(BaseModel): + current_sales:float + break_even_point: float From 5612456cafdf457b1d811ec31fc46c74e74d420a Mon Sep 17 00:00:00 2001 From: VIVEK SATI Date: Sun, 6 Aug 2023 05:33:56 +0530 Subject: [PATCH 09/12] feat: Update docker-compose.yml --- docker-compose.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 119b5cb..9ad6eec 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,3 @@ -version: "3" services: api: build: . From ef59cfe3a514cc7f4865f6a23cb9ce11fb5d800e Mon Sep 17 00:00:00 2001 From: VIVEK SATI Date: Tue, 8 Aug 2023 01:50:28 +0530 Subject: [PATCH 10/12] fix: Update Readme.md --- Readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Readme.md b/Readme.md index 5f672f5..0a13159 100644 --- a/Readme.md +++ b/Readme.md @@ -75,8 +75,8 @@ Join our growing community of developers who have already discovered the power o This project is a part of these Open Source Programs -- [Diversion 2K33](https://diversion.tech/) -- [GSSoC 2K33](https://gssoc.girlscript.tech/) +- [Diversion 2K23](https://diversion.tech/) +- [GSSoC 2K23](https://gssoc.girlscript.tech/) ## ✨ Thank You for Your Contribution! From 2908219a02ed5eacc0eb4efa50a3b9d07c9cddc6 Mon Sep 17 00:00:00 2001 From: VIVEK SATI Date: Tue, 8 Aug 2023 02:20:12 +0530 Subject: [PATCH 11/12] fix: Improved Folder Structure section --- CONTRIBUTING.md | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c6e9ae8..cf12e35 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -24,16 +24,25 @@ fintect-api │ └───📂tasks │ │ { Python functions for different tasks } -│ +| +└───📂tests +│ | { Python functions for different tests } +| └───📂validators │ │ { Pydantic Models for different validations } +📄.dockerfile 📄.gitignore +📄CODE_OF_CONDUCT.md 📄CONTRIBUTING.md +📄docker-compose.yml +📄Dockerfile +📄DOCUMENTATION.md +📄ENDPOINTS.md +📄LICENSE.md 📄main.py 📄README.md 📄requirements.txt -📄test_main.py ``` From 2120fb37d8b39aaae4cbc10daedea69e33c7d8e6 Mon Sep 17 00:00:00 2001 From: VIVEK SATI Date: Tue, 8 Aug 2023 22:40:19 +0530 Subject: [PATCH 12/12] Update CONTRIBUTING.md --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index cf12e35..de475f7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -114,7 +114,7 @@ Briefly explaining, this project is an API providing endpoints that makes your f + Here you can see, we are calling a function `simple_interest_rate()` that is defined inside `./helpers/functions.py`. + This function is responsible for making some calculations based on the parameter passed and returns the required value. -+ So, to add an endpoint, raise an issue regarding adding an endpoint. Once you are assigned, go through the [project setup ]() and set up the project on the local machine. ++ So, to add an endpoint, raise an issue regarding adding an endpoint. Once you are assigned, go through the [project setup ](https://github.com/Clueless-Community/fintech-api/blob/main/CONTRIBUTING.md#project-setup) and set up the project on the local machine. + Then create a function in `./helpers/functions.py`, passing the required parameters and returning the output as shown below ```python