@prnv/tuck 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json ADDED
@@ -0,0 +1,119 @@
1
+ {
2
+ "name": "@prnv/tuck",
3
+ "version": "1.0.0",
4
+ "description": "Modern dotfiles manager with a beautiful CLI",
5
+ "keywords": [
6
+ "dotfiles",
7
+ "cli",
8
+ "backup",
9
+ "configuration",
10
+ "git"
11
+ ],
12
+ "homepage": "https://github.com/Pranav-Karra-3301/tuck#readme",
13
+ "bugs": {
14
+ "url": "https://github.com/Pranav-Karra-3301/tuck/issues"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "git+https://github.com/Pranav-Karra-3301/tuck.git"
19
+ },
20
+ "license": "MIT",
21
+ "author": "Pranav Karra",
22
+ "type": "module",
23
+ "exports": {
24
+ ".": {
25
+ "import": "./dist/index.js",
26
+ "types": "./dist/index.d.ts"
27
+ }
28
+ },
29
+ "main": "dist/index.js",
30
+ "types": "dist/index.d.ts",
31
+ "bin": {
32
+ "tuck": "dist/index.js"
33
+ },
34
+ "files": [
35
+ "dist",
36
+ "templates"
37
+ ],
38
+ "scripts": {
39
+ "build": "tsup",
40
+ "dev": "tsup --watch",
41
+ "lint": "eslint src --ext .ts",
42
+ "lint:fix": "eslint src --ext .ts --fix",
43
+ "format": "prettier --write .",
44
+ "typecheck": "tsc --noEmit",
45
+ "test": "vitest run",
46
+ "test:watch": "vitest",
47
+ "test:coverage": "vitest run --coverage",
48
+ "prepare": "husky install",
49
+ "prepublishOnly": "pnpm build"
50
+ },
51
+ "dependencies": {
52
+ "@clack/prompts": "^0.7.0",
53
+ "boxen": "^7.1.1",
54
+ "chalk": "^5.3.0",
55
+ "commander": "^11.1.0",
56
+ "cosmiconfig": "^9.0.0",
57
+ "fs-extra": "^11.2.0",
58
+ "glob": "^10.3.10",
59
+ "ora": "^8.0.1",
60
+ "simple-git": "^3.22.0",
61
+ "zod": "^3.22.4"
62
+ },
63
+ "devDependencies": {
64
+ "@types/fs-extra": "^11.0.4",
65
+ "@types/node": "^20.11.0",
66
+ "@typescript-eslint/eslint-plugin": "^6.19.0",
67
+ "@typescript-eslint/parser": "^6.19.0",
68
+ "@vitest/coverage-v8": "^1.2.0",
69
+ "eslint": "^8.56.0",
70
+ "eslint-config-prettier": "^9.1.0",
71
+ "husky": "^8.0.3",
72
+ "lint-staged": "^15.2.0",
73
+ "memfs": "^4.6.0",
74
+ "prettier": "^3.2.4",
75
+ "@semantic-release/changelog": "^6.0.3",
76
+ "@semantic-release/git": "^10.0.1",
77
+ "semantic-release": "^23.0.0",
78
+ "tsup": "^8.0.1",
79
+ "typescript": "^5.3.3",
80
+ "vitest": "^1.2.0"
81
+ },
82
+ "engines": {
83
+ "node": ">=18"
84
+ },
85
+ "publishConfig": {
86
+ "access": "public"
87
+ },
88
+ "lint-staged": {
89
+ "*.ts": [
90
+ "eslint --fix",
91
+ "prettier --write"
92
+ ],
93
+ "*.{json,md,yml}": [
94
+ "prettier --write"
95
+ ]
96
+ },
97
+ "release": {
98
+ "branches": [
99
+ "main"
100
+ ],
101
+ "plugins": [
102
+ "@semantic-release/commit-analyzer",
103
+ "@semantic-release/release-notes-generator",
104
+ "@semantic-release/changelog",
105
+ "@semantic-release/npm",
106
+ "@semantic-release/github",
107
+ [
108
+ "@semantic-release/git",
109
+ {
110
+ "assets": [
111
+ "CHANGELOG.md",
112
+ "package.json"
113
+ ],
114
+ "message": "chore(release): ${nextRelease.version} [skip ci]"
115
+ }
116
+ ]
117
+ ]
118
+ }
119
+ }
@@ -0,0 +1,17 @@
1
+ # OS generated files
2
+ .DS_Store
3
+ .DS_Store?
4
+ ._*
5
+ .Spotlight-V100
6
+ .Trashes
7
+ ehthumbs.db
8
+ Thumbs.db
9
+
10
+ # Backup files
11
+ *.bak
12
+ *.backup
13
+ *~
14
+
15
+ # Secret files (add patterns for files you want to exclude)
16
+ # *.secret
17
+ # .env.local
@@ -0,0 +1,40 @@
1
+ # Dotfiles
2
+
3
+ Managed with [tuck](https://github.com/Pranav-Karra-3301/tuck) - Modern Dotfiles Manager
4
+
5
+ ## Quick Start
6
+
7
+ ```bash
8
+ # Restore dotfiles to a new machine
9
+ tuck init --from <this-repo-url>
10
+
11
+ # Or clone and restore manually
12
+ git clone <this-repo-url> ~/.tuck
13
+ tuck restore --all
14
+ ```
15
+
16
+ ## Commands
17
+
18
+ | Command | Description |
19
+ |---------|-------------|
20
+ | `tuck add <paths>` | Track new dotfiles |
21
+ | `tuck sync` | Sync changes to repository |
22
+ | `tuck push` | Push to remote |
23
+ | `tuck pull` | Pull from remote |
24
+ | `tuck restore` | Restore dotfiles to system |
25
+ | `tuck status` | Show tracking status |
26
+ | `tuck list` | List tracked files |
27
+
28
+ ## Structure
29
+
30
+ ```
31
+ .tuck/
32
+ ├── files/ # Tracked dotfiles organized by category
33
+ │ ├── shell/ # Shell configs (.zshrc, .bashrc, etc.)
34
+ │ ├── git/ # Git configs (.gitconfig, etc.)
35
+ │ ├── editors/ # Editor configs (nvim, vim, etc.)
36
+ │ ├── terminal/ # Terminal configs (tmux, alacritty, etc.)
37
+ │ └── misc/ # Other dotfiles
38
+ ├── .tuckmanifest.json # Tracks all managed files
39
+ └── .tuckrc.json # Tuck configuration
40
+ ```