Skip to content

eshalkashif1/Trace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trace

Purpose

Trace was designed to help community safety through data visibility, especially for women and marginalized groups. Each report contributes to identifying unsafe areas, empowering individuals to make informed decisions.

Live Website

Access it here: https://trace-6vjy.onrender.com/

Run Locally

Make sure you have the following installed:

  • Node.js (v18 or newer)
  • npm (comes with Node)
  1. Clone this repository:
git clone https://github.com/eshalkashif1/Trace.git
  1. Navigate to the project directory:
cd Trace
  1. Install dependencies
npm install 
  1. Run the program with the command:
node server.js
  1. Go to: http://localhost:3000

Features

Reporting

  • Two ways to report: click anywhere on the map or use the floating Quick Report button (uses your current location).
  • Modern report modal: accessible dialog with an “✕” close button, date/time prefilled to now (editable), description with subtle accent styling
  • View Reporting: Interact with the map to view reported incident locations and real-time community data
  • Reports are anonymous

Safer routing

  • Route search: plan safe routes and open curated routes in Google Maps.
  • Color‑coded routes (best in blue, notable alt in orange) with tabs and hover tooltips.
  • Each route is scored: score = time (s)*ALPHA + risk*BETA where risk comes from nearby reports + Ottawa newss incidents.

Theming & UX polish

  • Light/Dark mode: applied to all pages, dialogues, and the interactive map when toggled.
  • Consistent navbar across all pages (Map, About, Resources) with active tab highlighting and theme toggle.

More

  • Live location tracking
  • Privacy-preserving location blurring
  • Resources and support links for impacted individuals

APIs Used

  • OpenStreetMap API: For displaying interactive maps
  • HTML5 Geolocation API: For detecting the user's live location

🔨 Languages/Technologies

  • Frontend: JavaScript, HTML5, CSS, Leaflet.js
  • Backend: Node.js, Express.js
  • Database: SQLite
  • Hosting: Render

Screenshots

Screenshot 2025-10-05 at 2 34 02 PM

[Click R2 Tab] -> Open in Google Maps
Screenshot 2025-10-05 at 2 34 49 PM


[Clicking 'Report using location'] Screenshot 2025-10-05 at 2 36 57 PM

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors