Client side atproto account migrator in your web browser, along with services for backups and adversarial migrations.
pdsmoover.com
pds
atproto
migrations
moo
cow
1{
2 "$schema": "https://unpkg.com/oxlint/configuration_schema.json",
3 "plugins": ["unicorn", "typescript", "oxc"],
4 "jsPlugins": ["@e18e/eslint-plugin", "eslint-plugin-regexp"],
5 "categories": {
6 "correctness": "error",
7 "suspicious": "warn",
8 "perf": "warn"
9 },
10 "rules": {
11 "no-console": "warn",
12 "no-await-in-loop": "off",
13 "unicorn/no-array-sort": "off",
14 "no-restricted-globals": "error",
15 "typescript/consistent-type-imports": "error",
16 "e18e/prefer-array-from-map": "error",
17 "e18e/prefer-timer-args": "error",
18 "e18e/prefer-date-now": "error",
19 "e18e/prefer-regex-test": "error",
20 "e18e/prefer-array-some": "error",
21 // RegExp - Possible Errors (most critical)
22 "regexp/no-contradiction-with-assertion": "error",
23 "regexp/no-dupe-disjunctions": "error",
24 "regexp/no-empty-alternative": "error",
25 "regexp/no-empty-capturing-group": "error",
26 "regexp/no-empty-character-class": "error",
27 "regexp/no-empty-group": "error",
28 "regexp/no-empty-lookarounds-assertion": "error",
29 "regexp/no-escape-backspace": "error",
30 "regexp/no-invalid-regexp": "error",
31 "regexp/no-lazy-ends": "error",
32 "regexp/no-misleading-capturing-group": "error",
33 "regexp/no-misleading-unicode-character": "error",
34 "regexp/no-missing-g-flag": "error",
35 "regexp/no-optional-assertion": "error",
36 "regexp/no-potentially-useless-backreference": "error",
37 "regexp/no-super-linear-backtracking": "error",
38 "regexp/no-useless-assertions": "error",
39 "regexp/no-useless-backreference": "error",
40 "regexp/no-useless-dollar-replacements": "error",
41 "regexp/strict": "error",
42 // RegExp - Best Practices
43 "regexp/confusing-quantifier": "warn",
44 "regexp/control-character-escape": "error",
45 "regexp/negation": "error",
46 "regexp/no-dupe-characters-character-class": "error",
47 "regexp/no-empty-string-literal": "error",
48 "regexp/no-extra-lookaround-assertions": "error",
49 "regexp/no-invisible-character": "error",
50 "regexp/no-legacy-features": "error",
51 "regexp/no-non-standard-flag": "error",
52 "regexp/no-obscure-range": "error",
53 "regexp/no-octal": "error",
54 "regexp/no-standalone-backslash": "error",
55 "regexp/no-trivially-nested-assertion": "error",
56 "regexp/no-trivially-nested-quantifier": "error",
57 "regexp/no-unused-capturing-group": "warn",
58 "regexp/no-useless-character-class": "error",
59 "regexp/no-useless-flag": "error",
60 "regexp/no-useless-lazy": "error",
61 "regexp/no-useless-quantifier": "error",
62 "regexp/no-useless-range": "error",
63 "regexp/no-useless-set-operand": "error",
64 "regexp/no-useless-string-literal": "error",
65 "regexp/no-useless-two-nums-quantifier": "error",
66 "regexp/no-zero-quantifier": "error",
67 "regexp/optimal-lookaround-quantifier": "warn",
68 "regexp/optimal-quantifier-concatenation": "error",
69 "regexp/prefer-predefined-assertion": "error",
70 "regexp/prefer-range": "error",
71 "regexp/prefer-set-operation": "error",
72 "regexp/simplify-set-operations": "error",
73 "regexp/use-ignore-case": "error",
74 // RegExp - Stylistic Issues (less critical, focused on consistency)
75 "regexp/match-any": "warn",
76 "regexp/no-useless-escape": "warn",
77 "regexp/no-useless-non-capturing-group": "warn",
78 "regexp/prefer-character-class": "warn",
79 "regexp/prefer-d": "warn",
80 "regexp/prefer-plus-quantifier": "warn",
81 "regexp/prefer-question-quantifier": "warn",
82 "regexp/prefer-star-quantifier": "warn",
83 "regexp/prefer-unicode-codepoint-escapes": "warn",
84 "regexp/prefer-w": "warn",
85 "regexp/sort-flags": "warn"
86 },
87 "overrides": [
88 {
89 "files": [
90 "server/**/*",
91 "cli/**/*",
92 "scripts/**/*",
93 "modules/**/*",
94 "app/components/OgImage/*"
95 ],
96 "rules": {
97 "no-console": "off"
98 }
99 }
100 ],
101 "ignorePatterns": [
102 ".output/**",
103 ".data/**",
104 ".nuxt/**",
105 ".nitro/**",
106 ".cache/**",
107 "dist/**",
108 "node_modules/**",
109 "coverage/**",
110 "playwright-report/**",
111 "test-results/**"
112 ]
113}