-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathTaskfile.yml
More file actions
88 lines (78 loc) · 2.86 KB
/
Taskfile.yml
File metadata and controls
88 lines (78 loc) · 2.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
version: '3'
vars:
PROJECT_NAME: deft
VERSION: 0.3.0
tasks:
default:
desc: List all available tasks
cmds:
- task --list
silent: true
validate:
desc: Validate all markdown files
cmds:
- echo "Validating markdown files..."
- find . -name "*.md" -not -path "./backup/*" -not -path "./.git/*" | xargs -I {} sh -c 'echo "✓ {}"'
- echo "✓ All markdown files validated"
lint:
desc: Lint markdown files (requires markdownlint-cli)
cmds:
- |
if command -v markdownlint >/dev/null 2>&1; then
markdownlint '**/*.md' --ignore backup --ignore node_modules
else
echo "⚠ markdownlint not installed. Install with: npm install -g markdownlint-cli"
exit 0
fi
check:
desc: Run all pre-commit checks
deps:
- validate
cmds:
- echo "✓ All checks passed"
build:
desc: Package framework for distribution
cmds:
- mkdir -p dist
- tar -czf dist/deft-{{.VERSION}}.tar.gz --exclude=backup --exclude=dist --exclude=.git --exclude=node_modules .
- echo "✓ Created dist/deft-{{.VERSION}}.tar.gz"
clean:
desc: Clean generated artifacts
cmds:
- rm -rf dist/
- echo "✓ Cleaned artifacts"
install:
desc: Install deft CLI to /usr/local/bin
cmds:
- |
if [ -w /usr/local/bin ]; then
ln -sf "$(pwd)/deft.sh" /usr/local/bin/deft
echo "✓ Installed deft to /usr/local/bin/deft"
else
echo "⚠ Need sudo access to install to /usr/local/bin"
sudo ln -sf "$(pwd)/deft.sh" /usr/local/bin/deft
echo "✓ Installed deft to /usr/local/bin/deft"
fi
uninstall:
desc: Uninstall deft CLI from /usr/local/bin
cmds:
- |
if [ -L /usr/local/bin/deft ]; then
rm /usr/local/bin/deft
echo "✓ Uninstalled deft from /usr/local/bin"
else
echo "deft not installed in /usr/local/bin"
fi
stats:
desc: Show framework statistics
cmds:
- |
echo "Deft Framework v{{.VERSION}} Statistics:"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo "Core files: $(find core -name '*.md' | wc -l | tr -d ' ')"
echo "Languages: $(find languages -name '*.md' | wc -l | tr -d ' ')"
echo "Interfaces: $(find interfaces -name '*.md' | wc -l | tr -d ' ')"
echo "Tools: $(find tools -name '*.md' | wc -l | tr -d ' ')"
echo "Templates: $(find templates -name '*.md' | wc -l | tr -d ' ')"
echo "Total files: $(find . -name '*.md' -not -path './backup/*' -not -path './.git/*' | wc -l | tr -d ' ')"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"