aboutsummaryrefslogtreecommitdiffstats
path: root/tooling/prettier
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2024-03-13 21:43:44 +0000
committerMohamed Bassem <me@mbassem.com>2024-03-14 16:40:45 +0000
commit04572a8e5081b1e4871e273cde9dbaaa44c52fe0 (patch)
tree8e993acb732a50d1306d4d6953df96c165c57f57 /tooling/prettier
parent2df08ed08c065e8b91bc8df0266bd4bcbb062be4 (diff)
downloadkarakeep-04572a8e5081b1e4871e273cde9dbaaa44c52fe0.tar.zst
structure: Create apps dir and copy tooling dir from t3-turbo repo
Diffstat (limited to 'tooling/prettier')
-rw-r--r--tooling/prettier/index.js36
-rw-r--r--tooling/prettier/package.json24
-rw-r--r--tooling/prettier/tsconfig.json8
3 files changed, 68 insertions, 0 deletions
diff --git a/tooling/prettier/index.js b/tooling/prettier/index.js
new file mode 100644
index 00000000..08618ae6
--- /dev/null
+++ b/tooling/prettier/index.js
@@ -0,0 +1,36 @@
+import { fileURLToPath } from "url";
+
+/** @typedef {import("prettier").Config} PrettierConfig */
+/** @typedef {import("prettier-plugin-tailwindcss").PluginOptions} TailwindConfig */
+/** @typedef {import("@ianvs/prettier-plugin-sort-imports").PluginConfig} SortImportsConfig */
+
+/** @type { PrettierConfig | SortImportsConfig | TailwindConfig } */
+const config = {
+ plugins: [
+ "@ianvs/prettier-plugin-sort-imports",
+ "prettier-plugin-tailwindcss",
+ ],
+ tailwindConfig: fileURLToPath(
+ new URL("../../tooling/tailwind/web.ts", import.meta.url),
+ ),
+ tailwindFunctions: ["cn", "cva"],
+ importOrder: [
+ "<TYPES>",
+ "^(react/(.*)$)|^(react$)|^(react-native(.*)$)",
+ "^(next/(.*)$)|^(next$)",
+ "^(expo(.*)$)|^(expo$)",
+ "<THIRD_PARTY_MODULES>",
+ "",
+ "<TYPES>^@hoarder",
+ "^@hoarder/(.*)$",
+ "",
+ "<TYPES>^[.|..|~]",
+ "^~/",
+ "^[../]",
+ "^[./]",
+ ],
+ importOrderParserPlugins: ["typescript", "jsx", "decorators-legacy"],
+ importOrderTypeScriptVersion: "4.4.0",
+};
+
+export default config;
diff --git a/tooling/prettier/package.json b/tooling/prettier/package.json
new file mode 100644
index 00000000..e16a183d
--- /dev/null
+++ b/tooling/prettier/package.json
@@ -0,0 +1,24 @@
+{
+ "name": "@hoarder/prettier-config",
+ "private": true,
+ "version": "0.1.0",
+ "type": "module",
+ "exports": {
+ ".": "./index.js"
+ },
+ "scripts": {
+ "clean": "rm -rf .turbo node_modules",
+ "format": "prettier --check . --ignore-path ../../.gitignore",
+ "typecheck": "tsc --noEmit"
+ },
+ "dependencies": {
+ "@ianvs/prettier-plugin-sort-imports": "^4.1.1",
+ "prettier": "^3.2.5",
+ "prettier-plugin-tailwindcss": "^0.5.11"
+ },
+ "devDependencies": {
+ "@hoarder/tsconfig": "workspace:^0.1.0",
+ "typescript": "^5.3.3"
+ },
+ "prettier": "@hoarder/prettier-config"
+}
diff --git a/tooling/prettier/tsconfig.json b/tooling/prettier/tsconfig.json
new file mode 100644
index 00000000..dcbd7d30
--- /dev/null
+++ b/tooling/prettier/tsconfig.json
@@ -0,0 +1,8 @@
+{
+ "extends": "@hoarder/tsconfig/base.json",
+ "compilerOptions": {
+ "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json"
+ },
+ "include": ["."],
+ "exclude": ["node_modules"]
+}