Skip to content

Commit 5d4fe83

Browse files
committed
Merge remote-tracking branch 'refs/remotes/origin/main'
2 parents 3aa51ec + 3431ff6 commit 5d4fe83

2 files changed

Lines changed: 40 additions & 502 deletions

File tree

README.md

Lines changed: 40 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,89 +1,72 @@
1-
# Project of Data Visualization (COM-480)
1+
# Special Operations (COM-480 project)
22

33
| Student's name | SCIPER |
44
| -------------- | ------ |
55
| Eliota Braha | 346212 |
66
| Botond Kovacs | 341415 |
77
| Sankalp Gambhir | 354377 |
88

9-
[Milestone 1](./milestone1)[Milestone 2](./milestone2)[Milestone 3](#milestone-3)
9+
[Milestone 1](./milestone1)[Milestone 2](./milestone2)[Milestone 3](./milestone-3)
1010

11-
[Webpage (WIP)](https://com-480-data-visualization.github.io/special-operations/)
11+
[Webpage](https://com-480-data-visualization.github.io/special-operations/)
1212

13-
## Docker setup
13+
## Prerequisites
1414

15-
Use Docker Compose to run both the frontend and the Python project environment:
15+
You can run the project either locally or through Docker Compose.
1616

17-
```bash
18-
docker compose up --build
19-
```
17+
Recommended local environment:
2018

21-
Services:
19+
- Node.js compatible with the project dependencies
20+
- `pip` and `venv`
2221

23-
- `web`: Vite dev server on `http://localhost:5173`
24-
- `notebook`: JupyterLab on `http://localhost:8888`
22+
## Local setup
2523

26-
Useful commands:
24+
Install frontend dependencies:
2725

2826
```bash
29-
# Start only the frontend
30-
docker compose up --build web
31-
32-
# Start only JupyterLab / Python environment
33-
docker compose up --build notebook
34-
35-
# Run the preprocessing script inside Docker
36-
docker compose run --rm notebook python milestone2/preprocess.py
37-
38-
# Rebuild treemap data inside Docker
39-
docker compose run --rm notebook python scripts/build_treemap_data.py
27+
npm install
4028
```
4129

42-
## Milestone 1 (20th March, 5pm)
43-
44-
**10% of the final grade**
45-
46-
This is a preliminary milestone to let you set up goals for your final project and assess the feasibility of your ideas.
47-
Please, fill the following sections about your project.
48-
49-
*(max. 2000 characters per section)*
50-
51-
### Dataset
52-
53-
> Find a dataset (or multiple) that you will explore. Assess the quality of the data it contains and how much preprocessing / data-cleaning it will require before tackling visualization. We recommend using a standard dataset as this course is not about scraping nor data processing.
54-
>
55-
> Hint: some good pointers for finding quality publicly available datasets ([Google dataset search](https://datasetsearch.research.google.com/), [Kaggle](https://www.kaggle.com/datasets), [OpenSwissData](https://opendata.swiss/en/), [SNAP](https://snap.stanford.edu/data/) and [FiveThirtyEight](https://data.fivethirtyeight.com/)).
30+
Create and populate the Python virtual environment:
5631

57-
### Problematic
58-
59-
> Frame the general topic of your visualization and the main axis that you want to develop.
60-
> - What am I trying to show with my visualization?
61-
> - Think of an overview for the project, your motivation, and the target audience.
32+
```bash
33+
source ./load_venv.sh
34+
```
6235

63-
### Exploratory Data Analysis
36+
Start the frontend dev server:
6437

65-
> Pre-processing of the data set you chose
66-
> - Show some basic statistics and get insights about the data
38+
```bash
39+
npm run dev
40+
```
6741

68-
### Related work
42+
The app is then available at `http://localhost:5173`.
6943

44+
If you want the notebook environment locally as well:
7045

71-
> - What others have already done with the data?
72-
> - Why is your approach original?
73-
> - What source of inspiration do you take? Visualizations that you found on other websites or magazines (might be unrelated to your data).
74-
> - In case you are using a dataset that you have already explored in another context (ML or ADA course, semester project...), you are required to share the report of that work to outline the differences with the submission for this class.
46+
```bash
47+
source .venv/bin/activate
48+
jupyter lab
49+
```
7550

76-
## Milestone 2 (17th April, 5pm)
51+
JupyterLab will start on `http://localhost:8888` by default.
7752

78-
**10% of the final grade**
53+
## Docker setup
7954

55+
Run both the frontend and the Python/Jupyter environment:
8056

81-
## Milestone 3 (29th May, 5pm)
57+
```bash
58+
docker compose up --build
59+
```
8260

83-
**80% of the final grade**
61+
## Repository layout
8462

63+
- `src/`: frontend application code
64+
- `public/`: generated JSON assets consumed by the frontend
65+
- `scripts/`: data-fetching and data-building utilities
66+
- `data/`: raw and intermediate data files
67+
- `milestone1/`, `milestone2/`, `milestone3/`: milestone-specific notebooks, scripts, and deliverables
8568

86-
## Late policy
69+
## Notes
8770

88-
- < 24h: 80% of the grade for the milestone
89-
- < 48h: 70% of the grade for the milestone
71+
- The frontend reads relative asset paths, so local dev, local preview, and static deployment use the same checked-in data files.
72+
- Derived JSON should be regenerated only when upstream data or preprocessing logic changes.

0 commit comments

Comments
 (0)