diff --git a/webapp/index.html b/webapp/index.html index c80d13d..f074ce2 100644 --- a/webapp/index.html +++ b/webapp/index.html @@ -6,6 +6,9 @@ + + + @@ -14,16 +17,6 @@
+ There's no independent research proving that ALPRs can reduce crime. Headlines and supporting studies claiming otherwise are often produced by the companies selling ALPRs and the police agencies buying them. +
+ ++ For example, Flock Safety claims that 10% of Reported Crime in the U.S. Is Solved Using Flock Technology. The study that Flock cites was conducted by two Flock employees and “given legitimacy with the 'oversight' of two academic researchers whose names are also on the paper” according to a report by 404 Media. Flock Safety is using the veneer of an academic study as part of its sales pitch. +
+ ++ What research does exist regarding the ability of ALPRs to reduce crime is inconclusive at best: +
+ ++ See Dragnet (Policing) on Wikipedia. +
++ A study of ALPRs in Piedmont, CA, found that less than 0.3% of ALPR hits might translate into a useful investigative lead. Most license plates recorded were not on a hot list, yet police still logged information on people's movements throughout the day. +
++ Flock Safety provides Transparency Portals to their police customers, which allow the public to see the data collected by ALPRs. From these portals, we can see that the vast majority of license plates scanned are not on a hot list (vehicles suspected of being involved in crimes). For example: +
+ + ++ ALPR misread errors have led to dangerous police encounters, including pulling guns on innocent drivers. Here are just a few examples: +
++ ALPRs are more likely to surveil communities with a higher density of Black and brown people, reinforcing systemic racism in policing. +
++ The Electronic Frontier Foundation reviewed the use of ALPRs by the Oakland Police Department and found that ALPR cameras were more likely to scan license plates in communities with a higher density of Black and brown people than in communities with a higher density of white people. +
+ +A report by The Associated Press shows that after 9/11, the NYPD used ALPRs to monitor Muslims visiting mosques.
+ +A study of Flock Safety’s impact in Oak Park, IL found:
++ Police agencies frequently share ALPR data with ICE, putting undocumented people at risk, even in states where this is legally prohibited: +
+ ++ There are many documented cases where police have knowingly used ALPRs to commit crimes and put people in danger. These examples illustrate that it can be difficult to put meaningful restrictions in place that prevent ALPRs from being used for nefarious purposes. It's often only after harm is done that an officer is caught and punished, if at all. +
+++ + + + + + diff --git a/webapp/src/main.ts b/webapp/src/main.ts index 76aa551..bc024da 100644 --- a/webapp/src/main.ts +++ b/webapp/src/main.ts @@ -3,6 +3,7 @@ import './assets/main.css' import { createApp } from 'vue' import App from './App.vue' import router from './router' +import { createHead } from '@unhead/vue' import 'vuetify/styles' import { createVuetify } from 'vuetify' @@ -19,7 +20,7 @@ const vuetify = createVuetify({ }) const app = createApp(App) - +app.use(createHead()) app.use(router) app.use(vuetify) diff --git a/webapp/src/router/index.ts b/webapp/src/router/index.ts index 7631ccf..7c835f2 100644 --- a/webapp/src/router/index.ts +++ b/webapp/src/router/index.ts @@ -1,6 +1,7 @@ import { createRouter, createWebHistory } from 'vue-router' import Landing from '../views/Landing.vue' import Map from '../views/Map.vue' +import { useHead } from '@unhead/vue' const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), @@ -17,12 +18,18 @@ const router = createRouter({ { path: '/', name: 'home', - component: Landing + component: Landing, + meta: { + title: 'Find Nearby ALPRs | DeFlock' + } }, { path: '/map', name: 'map', - component: Map + component: Map, + meta: { + title: 'ALPR Map | DeFlock' + } }, { path: '/about', @@ -30,58 +37,102 @@ const router = createRouter({ // route level code-splitting // this generates a separate chunk (About.[hash].js) for this route // which is lazy-loaded when the route is visited. - component: () => import('../views/AboutView.vue') + component: () => import('../views/AboutView.vue'), + meta: { + title: 'About | DeFlock' + } }, { path: '/what-is-an-alpr', name: 'what-is-an-alpr', - component: () => import('../views/WhatIsAnALPRView.vue') + component: () => import('../views/WhatIsAnALPRView.vue'), + meta: { + title: 'What is an ALPR | DeFlock' + } }, { path: '/report', name: 'report', - component: () => import('../views/ReportView.vue') + component: () => import('../views/ReportView.vue'), + meta: { + title: 'Report an ALPR | DeFlock' + } }, { path: '/operators', name: 'operators', - component: () => import('../views/OperatorsView.vue') + component: () => import('../views/OperatorsView.vue'), + meta: { + title: 'Operators | DeFlock' + } }, { path: '/contact', name: 'contact', - component: () => import('../views/ContactView.vue') + component: () => import('../views/ContactView.vue'), + meta: { + title: 'Contact | DeFlock' + } }, { path: '/roadmap', name: 'roadmap', - component: () => import('../views/RoadmapView.vue') + component: () => import('../views/RoadmapView.vue'), + meta: { + title: 'Roadmap | DeFlock' + } }, { path: '/legal', name: 'legal', - component: () => import('../views/LegalView.vue') + component: () => import('../views/LegalView.vue'), + meta: { + title: 'Legal | DeFlock' + } }, { path: '/qr', name: 'qr-landing', - component: () => import('../views/QRLandingView.vue') + component: () => import('../views/QRLandingView.vue'), + meta: { + title: 'You Found an ALPR | DeFlock' + } }, { path: '/donate', name: 'donate', - component: () => import('../views/Donate.vue') + component: () => import('../views/Donate.vue'), + meta: { + title: 'Donate | DeFlock' + } + }, + { + path: '/dangers', + name: 'dangers', + component: () => import('../views/Dangers.vue'), + meta: { + title: 'ALPR Dangers | DeFlock' + } }, { path: '/:pathMatch(.*)*', name: 'not-found', - component: () => import('../views/404.vue') + component: () => import('../views/404.vue'), + meta: { + title: 'Not Found | DeFlock' + } } ] }) // backward compatibility with old url scheme router.beforeEach((to, from, next) => { + if (to.meta.title) { + useHead({ + title: to.meta.title + }) + } + if (to.path === '/' && to.hash) { next({ path: '/map', hash: to.hash }) } else { diff --git a/webapp/src/views/Dangers.vue b/webapp/src/views/Dangers.vue new file mode 100644 index 0000000..774e34b --- /dev/null +++ b/webapp/src/views/Dangers.vue @@ -0,0 +1,64 @@ + ++
+ ALPRs promise safety but deliver risks to privacy and civil rights. +
++ Thousands of police departments, homeowners associations, and businesses across the country deploy automated license plate readers (ALPRs) with the expectation that these surveillance tools can reduce crime. +
++ In reality, ALPRs pose a real threat to the civil rights, liberties, and safety of the communities of people under surveillance. +
++
Automated License Plate Readers (ALPRs) are monitoring your every move. Learn more about how they work and how you can protect your privacy.
+ ALPRs are a threat to your privacy and civil liberties. They can be used to track your movements, profile you, and even stalk you. Learn more about the dangers of ALPRs and how you can protect yourself. +
+ +
We regularly scrape Flock's site for cities/counties that have Flock ALPRs. Here is our current list of jurisdictions we've scraped that have ALPRs. Not every Flock operator has opted in to sharing their usage with Flock, so this list is not exhaustive.
@@ -125,4 +125,8 @@ code {
border-radius: 0.25rem;
font-weight: bold;
}
+
+.info-section {
+ background: var(--df-page-background-color);
+}
diff --git a/webapp/src/views/QRLandingView.vue b/webapp/src/views/QRLandingView.vue
index 7ba65c9..4defa9f 100644
--- a/webapp/src/views/QRLandingView.vue
+++ b/webapp/src/views/QRLandingView.vue
@@ -5,7 +5,7 @@
+
Automated License Plate Readers (ALPRs) are monitoring your every move. Learn more about how they work and how you can protect your privacy.
You're Being Tracked by an ALPR!
+ ALPRs are a threat to your privacy and civil liberties. They can be used to track your movements, profile you, and even stalk you. Learn more about the dangers of ALPRs and how you can protect yourself. +
+ +
For a detailed explanation of how ALPRs are a threat to privacy, see this ACLU article as well as this EFF article on ALPRs.
- ALPRs can invade your privacy and violate civil liberties in several key ways: +
+ ALPRs invade your privacy and violate your civil liberties. Here's how:
-Your daily movements are tracked and logged, often indefinitely. This creates a detailed record of your daily activities. This information can be used to infer personal details about your life.
- -ALPR data is often shared with other agencies, including federal law enforcement. This can lead to the creation of a massive database of innocent people's movements.
- -The knowledge that you are being watched can have a chilling effect on your freedom of speech and association. People may avoid attending protests or political events for fear of being tracked.
- -Law enforcement officers or other individuals with access could misuse this data, for example, tracking ex-partners, political rivals, or targeting specific communities without oversight.
- -