Skip to content

adr1ja/a-thousand-cuts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ”ͺ A Thousand Cuts

An interactive data visualization project investigating whether the world's scattered modern conflicts are the component parts of a decentralized, unspoken global war.


Project Overview

A declared world war is an event. It has a beginning, an end, and clear lines on a map. But a global conflict might also be a process. It might not be a single, catastrophic wound, but thousands of smaller injuries, happening all at once, all over the world. This project is named A Thousand Cuts to explore that idea.

We see the individual reports every day: a drone strike in Yemen, a border skirmish in Kashmir, a protest turned violent in Myanmar. Each is a local tragedy. But taken together, do they reveal a larger, interconnected pattern of global instability? Through a series of five interactive visualizations, this project invites you not to predict a world war, but to investigate whether we are already living through one.


πŸš€ Running the Project Locally

This project requires two local servers to run at the same time: a Python/Flask server for the data API and a web server for the HTML/CSS/JavaScript files. The recommended setup uses VS Code's Live Server extension.

Prerequisites

  • Python 3.x
  • Visual Studio Code (VS Code) with the Live Server extension installed.
  • Required Python libraries. Install them using pip:
pip install flask flask_cors pandas scikit-learn nltk

Execution Steps

You will need one terminal window and VS Code.

1. Start the Data Server

In your terminal, navigate to the python directory and run the Flask server. This server provides all the data to the visualizations.

# Navigate to the correct folder
cd path/to/your/project/assignment_05/python

# Run the server
python server.py

This will start the data API on http://127.0.0.1:5000. Keep this terminal running in the background.

2. Start the Web Page Server

  • In your second terminal, navigate to the template directory-
  • Run the server on port 8000 (python -m http.server 8000)
  • Open the entire assignment_05 project folder in Visual Studio Code.
  • In the VS Code file explorer, navigate to the template folder.
  • Right-click on the index.html file.
  • Select "Open with Live Server".

Your browser will automatically open a new tab with a URL like http://127.0.0.1:5500, and the project will load.


πŸ”§ Technology Stack

Backend & Data Processing

  • Python
  • Flask – For the data API.
  • Pandas – For data manipulation.
  • SQLite – For the database.
  • Scikit-learn & NLTK – For text analysis and topic modeling.

Frontend & Visualization

  • HTML5
  • CSS3
  • JavaScript (ES6+)
  • D3.js v7 – For all interactive data visualizations.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published