https://github.com/code-crash/parking-lot
This project is demonstration of Parking Lot.
https://github.com/code-crash/parking-lot
Last synced: 12 days ago
JSON representation
This project is demonstration of Parking Lot.
- Host: GitHub
- URL: https://github.com/code-crash/parking-lot
- Owner: Code-Crash
- Created: 2020-06-25T10:00:20.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-30T20:42:09.000Z (over 3 years ago)
- Last Synced: 2026-06-14T10:33:35.584Z (12 days ago)
- Language: JavaScript
- Size: 67.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Parking Lot Management [command line application]
To understand the detailed requirement, please read ```PROBLEM.md``` file.
## Prerequisites
* As this application don't have any lib dependency except for test cases, but you should already have Node version > 10.x installed on the system.
## How to setup?
1. ```npm run setup``` // This will installed the test dependencies, run the test cases, and process the sample.input.txt file
2. Note: If you face any error to run the ```./bin/setup.sh``` file, please change the file permission as executable using command ```chmod +x ./bin/setup.sh```, to check if it's executable or not run ```ls -l ./bin/setup.sh```
## How it works:
* To run the command reader, run follows command
```npm start```
* After the command reader started, enter ```help``` command to get the basic information of different commands or read ```PROBLEM.md```. Use a full screen terminal to see the proper output of ```help``` command as it will print the list of commands in the table format.
* You can also pass the list of command with the help of input file, to test it use exiting file and command.
```npm run file sample.input.txt```
## Features:
* Command Reader to read the command one by one or process the list of command through the input text file.
* Basic commands from ```PROBLEM.md```.
* Logger (hold the history/error/activity of user inputs and commands)
* Charges/Prices are configurable in single file, path: ```./config/index.js```
* Logger configurable to log on console through logger or not, path: ```./config/index.js```
* Allowed a specific type of vehicles based on your parking lot capacity. ```./config/index.js```
* Duplicate vehicles and bunch of other validations.
* Basic Test Suite is ready to cover tests of the basic functionalities of the parking lot.
## Note:
1. This application was build on MAC OS (Mojave), but it should run on any (linux/unix) system as long as ```Node>10.x``` is installed.
## TODO
* We can add server support
* More Test Cases for command line reader or file handler.
* More Functionality
* Add Database Support with Promises if anyone required.
* Make it online application to host on server with user management functionalities like login/sign-up/ticket receipt/etc.
* Add support to send logs to safe place like cloud or any db.