Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/epintos/dott-assignment
Dott Backend Assignment Implementation
https://github.com/epintos/dott-assignment
Last synced: 22 days ago
JSON representation
Dott Backend Assignment Implementation
- Host: GitHub
- URL: https://github.com/epintos/dott-assignment
- Owner: epintos
- Created: 2020-02-04T12:38:39.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T06:26:35.000Z (about 2 years ago)
- Last Synced: 2023-08-01T11:25:06.591Z (over 1 year ago)
- Language: TypeScript
- Size: 610 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Description
Esteban Pintos' solution for dott's interview assignment.
## Instructions
1 - Install packages by running:
```bash
npm install
```2 - Execute tests, build and execute:
```bash
npm run solve
```or if you want to skip the tests and build:
```bash
npm run start
```This will leave the Standand Input listening to the user's input. Copy and Paste your examples and press Enter. You can find an example [here](./input-example.txt).
Once you press enter, the results will be printed in your terminal and the process will finish.
## TODOs and Improvements
- Test the main [Solver](./src/classes/solver.class.ts).
- Review TypeScript code style. It's my first TypeScript project so there might other best practices to implement.
- Separate the [Solver](./src/classes/solver.class.ts) and the `Parser` in different classes to simplify testing and allow the Solver to use a different type of Parsers (eg. from a txt file).
- Improve calculations complexity by using the BFS algorithm.
- Handle parsing errors in the [parse](./src/classes/solver.class.ts#L30) function.