Skip to content

Commit a694d8b

Browse files
committed
feat: optimize extension packaging with webpack
- Add webpack bundling to reduce extension size from 490 files (1.12MB) to 38 files (174KB) - Update .vscodeignore to exclude unnecessary development files - Configure webpack with TypeScript loader and production optimization - Update package.json scripts for webpack-based build process - Simplify CI pipeline to remove extension packaging step - Add webpack dependencies: ts-loader, webpack, webpack-cli Performance improvements: - 92% reduction in file count (490 → 38 files) - 85% reduction in package size (1.12MB → 174KB) - Better startup performance and loading times
1 parent 85ca70b commit a694d8b

File tree

5 files changed

+1493
-34
lines changed

5 files changed

+1493
-34
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -69,19 +69,8 @@ jobs:
6969
- name: Install dependencies
7070
run: npm ci
7171

72-
- name: Compile TypeScript
73-
run: npm run compile
74-
75-
- name: Package extension
76-
run: |
77-
npm install -g vsce
78-
vsce package
79-
80-
- name: Upload VSIX artifact
81-
uses: actions/upload-artifact@v4
82-
with:
83-
name: speechify-extension
84-
path: '*.vsix'
72+
- name: Build with webpack
73+
run: npm run package
8574

8675
security:
8776
runs-on: ubuntu-latest

.vscodeignore

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,67 @@
1+
# VS Code specific files
12
.vscode/**
23
.vscode-test/**
4+
5+
# Test files
36
test/**
7+
src/test/**
8+
out/test/**
9+
scripts/test-runner.js
10+
**/test/**
11+
**/*.test.js
12+
**/*.test.ts
13+
14+
# Development files
415
.gitignore
516
.yarnrc
617
vsc-extension-quickstart.md
718
**/jsconfig.json
819
**/*.map
920
**/.eslintrc.json
21+
.eslintrc.json
22+
tsconfig.json
23+
webpack.config.js
24+
25+
# Documentation and development files
26+
docs/**
27+
chat.md
28+
CONTRIBUTING.md
29+
DEVELOPMENT_PLAN.md
30+
MANUAL_PUBLISHING.md
31+
SECURITY.md
32+
ROADMAP.md
33+
TESTING.md
34+
MIGRATION_REPORT.md
35+
*.md
36+
!README.md
37+
38+
# Node.js dependencies (should not be included)
39+
node_modules/**
40+
41+
# Build artifacts - keep only bundled dist
42+
src/**
43+
out/**
44+
45+
# Keep only the bundled output
46+
!dist/extension.js
47+
48+
# Configuration examples
49+
test-config.json.example
50+
*.example
51+
52+
# Workspace files
53+
*.code-workspace
54+
55+
# Git files
56+
.git/**
57+
.github/**
58+
59+
# Package files
60+
*.vsix
61+
62+
# Scripts
63+
scripts/**
64+
65+
# Temporary files
66+
tmp/**
67+
temp/**

0 commit comments

Comments
 (0)