4 "description": "An isomorphic UI for lemmy",
5 "repository": "https://github.com/LemmyNet/lemmy-ui",
7 "author": "Dessalines <tyhou13@gmx.com>",
9 "prebuild:dev": "yarn clean && node generate_translations.js",
10 "build:dev": "webpack --mode=development",
11 "prebuild:prod": "yarn clean && node generate_translations.js",
12 "build:prod": "webpack --mode=production",
13 "clean": "yarn run rimraf dist",
15 "lint": "node generate_translations.js && tsc --noEmit && eslint --report-unused-disable-directives --ext .js,.ts,.tsx \"src/**\" && prettier --check \"src/**/*.{ts,tsx,js,css,scss}\"",
16 "prepare": "husky install",
17 "start": "yarn build:dev --watch"
32 "@babel/plugin-proposal-decorators": "^7.21.0",
33 "@babel/plugin-transform-runtime": "^7.21.4",
34 "@babel/plugin-transform-typescript": "^7.21.3",
35 "@babel/preset-env": "7.21.5",
36 "@babel/preset-typescript": "^7.21.5",
37 "@babel/runtime": "^7.21.5",
38 "@emoji-mart/data": "^1.1.0",
40 "babel-loader": "^9.1.2",
41 "babel-plugin-inferno": "^6.6.0",
42 "bootstrap": "^5.2.3",
43 "check-password-strength": "^2.0.7",
44 "classnames": "^2.3.1",
45 "clean-webpack-plugin": "^4.0.0",
46 "copy-webpack-plugin": "^11.0.0",
47 "cross-fetch": "^3.1.5",
48 "css-loader": "^6.7.3",
49 "emoji-mart": "^5.4.0",
50 "emoji-short-name": "^2.0.0",
52 "html-to-text": "^9.0.5",
53 "i18next": "^22.4.15",
55 "inferno-create-element": "^8.1.1",
56 "inferno-helmet": "^5.2.1",
57 "inferno-hydrate": "^8.1.1",
58 "inferno-i18next-dess": "0.0.2",
59 "inferno-router": "^8.1.1",
60 "inferno-server": "^8.1.1",
61 "isomorphic-cookie": "^1.2.4",
62 "jwt-decode": "^3.1.2",
63 "lemmy-js-client": "0.17.2-rc.17",
64 "markdown-it": "^13.0.1",
65 "markdown-it-container": "^3.0.0",
66 "markdown-it-emoji": "^2.0.2",
67 "markdown-it-footnote": "^3.0.3",
68 "markdown-it-html5-embed": "^1.0.0",
69 "markdown-it-sub": "^1.0.0",
70 "markdown-it-sup": "^1.0.0",
71 "mini-css-extract-plugin": "^2.7.5",
73 "register-service-worker": "^1.7.2",
74 "run-node-webpack-plugin": "^1.3.0",
76 "sanitize-html": "^2.10.0",
78 "sass-loader": "^13.2.2",
79 "serialize-javascript": "^6.0.1",
82 "toastify-js": "^1.12.0",
83 "tributejs": "^5.1.3",
85 "webpack-cli": "^5.1.1",
86 "webpack-node-externals": "^3.0.0",
87 "websocket-ts": "^1.1.1"
90 "@babel/core": "^7.21.8",
91 "@types/autosize": "^4.0.0",
92 "@types/bootstrap": "^5.2.6",
93 "@types/express": "^4.17.17",
94 "@types/html-to-text": "^9.0.0",
95 "@types/markdown-it": "^12.2.3",
96 "@types/markdown-it-container": "^2.0.5",
97 "@types/node": "^20.1.2",
98 "@types/sanitize-html": "^2.9.0",
99 "@types/serialize-javascript": "^5.0.1",
100 "@types/toastify-js": "^1.11.1",
101 "@typescript-eslint/eslint-plugin": "^5.59.5",
102 "@typescript-eslint/parser": "^5.59.5",
103 "bootswatch": "^5.2.3",
105 "eslint-plugin-inferno": "^7.32.2",
106 "eslint-plugin-prettier": "^4.2.1",
108 "import-sort-style-module": "^6.0.0",
109 "lint-staged": "^13.2.2",
110 "prettier": "^2.8.8",
111 "prettier-plugin-import-sort": "^0.0.7",
112 "prettier-plugin-organize-imports": "^3.2.2",
113 "prettier-plugin-packagejson": "^2.4.3",
115 "service-worker-webpack": "^1.0.0",
116 "sortpack": "^2.3.4",
117 "style-loader": "^3.3.2",
119 "typescript": "^5.0.4",
120 "webpack-dev-server": "4.15.0"
125 "engineStrict": true,
127 ".js, .jsx, .ts, .tsx": {
129 "parser": "typescript"