Contributors: Ethan Bayer, Jason Lin, Justin Pham, Diane Shan, and Heng Tan
JDJHE - An application for searching, querying, and analyzing NY parking violation data.
- Node.JS
- Python 3.6+
- Application code
git clone https://github.com/ucr-cs180-fall21/cs180project-021-jdjhe.git
- The following instructions will assume being in the code directory (i.e., via
cd cs180project-021-jdjhe
)
- NY Parking Violations Dataset
- Open a new terminal and go into the backend directory.
cd backend
- Make the following directories:
datasets
(for the raw data), andparsed_data
(for intermediate data that is easier to analyze)mkdir datasets && mkdir parsed_data
- Go into the
datasets
directory and move the downloaded dataset (archive.zip
) into this directory.cd datasets
mv ~/Downloads/archive.zip .
(Could be different based on where the dataset was downloaded)
- Unzip the dataset. You should have
parking-violations-issued-fiscal-year-XXX.csv
in the current directory.unzip archive.zip
- Run the data preparser. This will put JSON files in the
parsed_data
directory we created earlier.python3 ../functions/main.py
- Go back to the base backend directory.
cd ..
(from thedatasets
directory)
- Install the necessary packages needed to run the backend.
npm install
- Start the backend.
npm run
- Open a new terminal and go into the frontend directory from the project base.
cd frontend
- Install the necessary packages needed to run the frontend.
npm install
- Start the frontend. If your browser doesn't automatically open, you can access the frontend at
http://localhost:3000
.npm run
- HTML/CSS
- Javascript (with some Typescript)
- Python
- Node.JS
- Express.JS
- Python
- React
- React Bootstrap
- React Router
- CanvasJS
-
Two main folders:
backend
: all code for backend found heredatasets
: contains the three csv files downloaded from the datasetparsed_data
: contains JSON files that are used for analysis.functions
: contains functions used for parsing and searchingroutes
: contains backend server logic, such as routes for insert, update, delete, and analyticsnode_modules
: dependencies needed to run the backend
frontend
: all code for frontend found herepublic
: contains static files, such as index.html, icons, and picturessrc
: contains all the react code for the applicationcomponents
: contains all the different components used in the project (data table, charts, graphs, toolbar)- All exported out to be used in the pages
imgs
: contains all the images used by the React componentspages
: contains source code for each different page in the project
node_modules
: dependencies needed to run the frontend
-
6 sprint folders documenting each sprint
- Artifact
- Demo
We implemented automated testing and continuous integration using the Jest framework. The tests can be found here. Our tests run on every push/pull request to master/develop.