habitica/website/client
Phillip Thelen 12773d539e
Add interface to block ip-addresses or clients due to abuse (#15484)
* Read IP blocks from database

* begin building general blocking solution

* add new frontend files

* Add UI for managing blockers

* correctly reset local data after creating blocker

* Tweak wording

* Add UI for managing blockers

* restructure admin pages

* improve test coverage

* Improve blocker UI

* add blocker to block emails from registration

* lint fix

* fix

* lint fixes

* fix import

* add new permission for managing blockers

* improve permission check

* fix managing permissions from admin

* improve navbar display for non fullAccess admin

* update block error strings

* lint fix

* add option to errorHandler to skip logging

* validate blocker value during input

* improve blocker form display

* chore(subproj): reconcile habitica-images

* fix(scripts): use same Mongo version for dev/test

* fix(whitespace): eof

* documentation improvements

* remove nconf import

* remove old test

---------

Co-authored-by: Kalista Payne <kalista@habitica.com>
Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-08-06 15:08:07 -05:00
..
public/static refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00
scripts Remove Storybook files and packages (#15040) 2023-12-13 20:18:13 +01:00
src Add interface to block ip-addresses or clients due to abuse (#15484) 2025-08-06 15:08:07 -05:00
tests/unit refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00
.browserslistrc old client structure 2019-10-01 11:44:38 +02:00
.eslintrc.js refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00
index.html refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00
package-lock.json refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00
package.json refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00
postcss.config.js misc, fix client tests 2019-10-15 15:32:53 +02:00
README.md Remove Storybook files and packages (#15040) 2023-12-13 20:18:13 +01:00
vite.config.mjs Fix deploying static files to S3 (#15450) 2025-06-12 10:24:24 -05:00
vitest.config.js refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00

Habitica Client

Project setup

npm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Run your unit tests

npm run test:unit

Lints and fixes files

npm run lint

Customize configuration

See Configuration Reference.

Vue Structure

Currently pages and components are mixed in /src/components this is not a good way to find the files easy.

Thats why each changed / upcoming page / component should be put in either /src/components or in the /src/pages directory.

Inside Pages, each page can have a subfolder which contains sub-components only needed for that page - otherwise it has to be added to the normal components folder.

At the end of all the changes - the components should only contain components needed between all pages