semvec/pypi-packages huggingface dataset:
routerfy 1.0.0b1
O Routerfy tem uma sintaxe similar ao FastAPI. Feito para ser leve e de fácil uso para serviços AWS Serverless.
License: MIT
Requires Python: >=3.7

[![License](https://img.shields.io/npm/l/tasker-man.svg)](https://github.pactual.net/bruno-s-junqueira/routerfy/blob/main/LICENSE)

Routerfy is an easy, fast and modern framework for building AWS Serverless applications with python 3.7+ using FastAPI for development and a lighter lambda layer on AWS Lambda execution.

---

**Documentation**: <a href="https://routerfy.github.io/" target="_blank">Docs</a>

**Source Code**: <a href="https://github.com/routerfy/routerfy/">GitHub</a>

---

Key features are:

* **Light**: Routerfy's lambda layer it's extremely light since it does not need any additional library to redirect routes.
* **Fast to test**: Increase the speed to test new features by about 500%.
* **Fast to build templates**: Building AWS templates never been that easy. Routerfy create all AWS templates with necessary properties but still customizable.
* **Familiar Syntax**: Routerfy use same syntax of FastAPI for routes creation turning the experience of migration a lot easier.
* **Body Validation**: Routerfy have an own route body validation like pydantic but lighter using no dependencies.


## Requirements

Python 3.7+

For development serving, Routerfy uses the amazing ones:

* [FastAPI](https://fastapi.tiangolo.com/) for route management.
* [Uvicorn](https://www.uvicorn.org/) for ASGI server.


## Installation

**For development:**
```bash
pip install routerfy[dev]
```
**For AWS Lambda layer:**
```bash
pip install routerfy
```

## Getting Started

To create your first Routerfy project you only need to use `create` command. Open CMD in the folder you want to create your project and insert:
```bash
routerfy create MyAwesomeRouterfyProject
```

If everything go well the project folder created will look like this: 

```md
.
├─ routes/
│  ├─ hello_world/
│  │  ├─ app.py
│  │  ├─ route.py
└─ routerfy.config.yaml
```

### Example

Our first example file is the `route.py` inside the lambda folder `hello_world`. All lambda folders must have a `route.py`. this way routerfy can identify routers and make the magic happens.

```python
from routerfy import APIRouter, Response

router = APIRouter(prefix="/hello")

@router.get("/")
def hello_world_get_request():
    return "Hello World!"
```

As you can see, the syntax is very similar to FastAPI.

### Testing application

To test application you only need to use the `dev` command on your project terminal:
```bash
routerfy dev
```

The server will start and you will have your routerfy application served locally!
topsis-chirag-102103278 1.0.4
A Python package to find TOPSIS for MCDM (Multi-Criteria Decision Analysis Method)
License: MIT
Keywords: TOPSIS,MCDM

# Topsis
TOPSIS( Technique for order for preference by similarity to Ideal solution ) for MCDM (Multiple criteria decision making) in Python compiled by Chirag Gupta, 102103278, TIET, Patiala. 

## Installation
Use the package manager pip to install.
```
pip install topsis_chirag_102103278
```

## Usage
Enter csv filename followed by .csv extentsion, then enter the weights vector with vector values separated by commas, followed by the impacts vector with comma separated signs (+,-) and enter the output file name followed by .csv extension.

```topsis_chirag_102103278 [InputDataFile as .csv] [Weights as a string] [Impacts as a string] [ResultFileName as .csv]```

### Example
```topsis_chirag_102103278 sample.csv "1,1,1,1" "-,+,+,+" output.csv```

### Sample Input
| Fund  | P1    | P2	| P3	| P4	| P5	|
| :---: | :---: | :---: | :---: | :---: | :---: |
| M1	| 0.72	| 0.52	| 7	    | 56	| 16.06 |
| M2	| 0.83	| 0.69	| 3.7	| 37	| 10.56 |
| M3	| 0.81	| 0.66	| 4	    | 30.4	| 8.97  | 
| M4	| 0.77	| 0.59	| 3.6	| 44.1	| 12.27 |
| M5	| 0.82	| 0.67	| 7	    | 34.6	| 10.77 |
| M6	| 0.72	| 0.52	| 3	    | 58.5	| 15.69 |
| M7	| 0.85	| 0.72	| 4.2	| 50.5	| 14.07 |
| M8	| 0.64	| 0.41	| 3	    | 38.5	| 10.64 |

### Sample Output
| Fund  | P1    | P2	| P3	| P4	| P5	|     TOPSIS Score   | Rank  |
| :---: | :---: | :---: | :---: | :---: | :---: |        :---:       | :---: |
| M1	| 0.72	| 0.52	| 7	    | 56	| 16.06 | 0.6339125495800909 |   1   |
| M2	| 0.83	| 0.69	| 3.7	| 37	| 10.56 | 0.3751667010618832 |   6   |
| M3	| 0.81	| 0.66	| 4	    | 30.4	| 8.97  | 0.4268895365063883 |   3   |
| M4	| 0.77	| 0.59	| 3.6	| 44.1	| 12.27 | 0.3631574031053784 |   8   |
| M5	| 0.82	| 0.67	| 7	    | 34.6	| 10.77 | 0.6320591213396627 |   2   |
| M6	| 0.72	| 0.52	| 3	    | 58.5	| 15.69 | 0.3687064767204701 |	 7   |
| M7	| 0.85	| 0.72	| 4.2	| 50.5	| 14.07 | 0.3862956874804864 |	 5   |
| M8	| 0.64	| 0.41	| 3	    | 38.5	| 10.64 | 0.4069761888395339 |   4   |

## Please Note That
- The first column and first row are removed by the library before processing, in attempt to remove indices and headers. So the csv MUST follow the format as shown in sample.csv shown in the Example section.
- The input data file MUST contain three or more columns.
- The second to last columns of the data file MUST contain NUMERIC values.
- The number of weights, impacts and columns (second to last) MUST be SAME.
- Impacts MUST either be '+' or '-'.
- Impacts and Weights MUST be separated by , (comma).

## License

Â© 2024 Chirag Gupta

This repository is licensed under MIT License. See LICENSE for details.