blakeblackshear.frigate/web
Josh Hawkins 74ca009b0b
UI viewer role (#16978)
* db migration

* db model

* assign admin role on password reset

* add role to jwt and api responses

* don't restrict api access for admins yet

* use json response

* frontend auth context

* update auth form for profile endpoint

* add access denied page

* add protected routes

* auth hook

* dialogs

* user settings view

* restrict viewer access to settings

* restrict camera functions for viewer role

* add password dialog to account menu

* spacing tweak

* migrator default to admin

* escape quotes in migrator

* ui tweaks

* tweaks

* colors

* colors

* fix merge conflict

* fix icons

* add api layer enforcement

* ui tweaks

* fix error message

* debug

* clean up

* remove print

* guard apis for admin only

* fix tests

* fix review tests

* use correct error responses from api in toasts

* add role to account menu
2025-03-08 10:01:08 -06:00
..
.vscode
images
public
src UI viewer role (#16978) 2025-03-08 10:01:08 -06:00
themes
.eslintrc.cjs
.gitignore
.prettierrc
components.json Improve notifications (#16632) 2025-02-17 07:19:03 -07:00
index.html
login.html
package-lock.json Update web deps (#16983) 2025-03-06 10:50:37 -06:00
package.json Update web deps (#16983) 2025-03-06 10:50:37 -06:00
postcss.config.js
README.md
site.webmanifest
tailwind.config.js Timeline improvements (#16429) 2025-02-09 14:13:32 -07:00
tsconfig.json
tsconfig.node.json
vite.config.ts

This is the Frigate frontend which connects to and provides a User Interface to the Python backend.

Web Development

Installing Web Dependencies Via NPM

Within /web, run:

npm install

Running development frontend

Within /web, run:

PROXY_HOST=<ip_address:port> npm run dev

The Proxy Host can point to your existing Frigate instance. Otherwise defaults to localhost:5000 if running Frigate on the same machine.

Extensions

Install these IDE extensions for an improved development experience:

  • eslint