Skip to content

Commit 64013ce

Browse files
Merge pull request #3 from devshift-stack/claude/analyze-and-optimize-wsYBQ
Claude/analyze and optimize ws ybq
2 parents b1d4240 + 49d9d86 commit 64013ce

45 files changed

Lines changed: 8201 additions & 4 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.dockerignore

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
node_modules
2+
dist
3+
data
4+
*.log
5+
.env
6+
.git
7+
.gitignore
8+
README.md
9+
docs
10+
tests
11+
*.md

.env.example

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Server
2+
PORT=3000
3+
NODE_ENV=development
4+
5+
# Database
6+
SQLITE_PATH=./data/app.sqlite
7+
8+
# Queue (optional - uses in-memory fallback if not set)
9+
REDIS_URL=redis://localhost:6379
10+
QUEUE_ENABLED=false
11+
12+
# Integrations (all stubs - do not enable without explicit approval)
13+
WHATSAPP_ENABLED=false
14+
WHATSAPP_API_URL=
15+
WHATSAPP_API_TOKEN=
16+
17+
VOICE_ENABLED=false
18+
VOICE_PROVIDER=
19+
VOICE_API_KEY=
20+
21+
GOOGLE_ENABLED=false
22+
GOOGLE_CLIENT_ID=
23+
GOOGLE_CLIENT_SECRET=
24+
25+
ICLOUD_ENABLED=false
26+
ICLOUD_APPLE_ID=
27+
ICLOUD_APP_PASSWORD=
28+
29+
PINECONE_ENABLED=false
30+
PINECONE_API_KEY=
31+
PINECONE_ENVIRONMENT=
32+
PINECONE_INDEX=
33+
34+
# Supervisor
35+
STOP_SCORE_THRESHOLD=40
36+
MAX_PARALLEL_AGENTS=4

.gitignore

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,34 @@
1-
__pycache__/
2-
*.log
1+
# Dependencies
2+
node_modules/
3+
4+
# Build output
5+
dist/
6+
7+
# Data
8+
data/
9+
10+
# Environment
311
.env
4-
*.pyc
12+
.env.local
13+
.env.*.local
14+
15+
# Logs
16+
*.log
17+
npm-debug.log*
18+
19+
# IDE
520
.idea/
621
.vscode/
7-
secrets.json
22+
*.swp
23+
*.swo
24+
25+
# OS
26+
.DS_Store
27+
Thumbs.db
28+
29+
# Test coverage
30+
coverage/
31+
32+
# Temporary files
33+
*.tmp
34+
*.temp

Dockerfile

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Build stage
2+
FROM node:20-alpine AS builder
3+
4+
WORKDIR /app
5+
6+
# Copy package files
7+
COPY package*.json ./
8+
COPY tsconfig.json ./
9+
10+
# Install dependencies
11+
RUN npm ci
12+
13+
# Copy source
14+
COPY src ./src
15+
16+
# Build
17+
RUN npm run build
18+
19+
# Production stage
20+
FROM node:20-alpine
21+
22+
WORKDIR /app
23+
24+
# Copy package files and install production dependencies
25+
COPY package*.json ./
26+
RUN npm ci --omit=dev
27+
28+
# Copy built files
29+
COPY --from=builder /app/dist ./dist
30+
31+
# Create data directory
32+
RUN mkdir -p /app/data
33+
34+
# Set environment
35+
ENV NODE_ENV=production
36+
ENV PORT=3000
37+
38+
EXPOSE 3000
39+
40+
CMD ["node", "dist/index.js"]

docker-compose.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
version: "3.8"
2+
3+
services:
4+
app:
5+
build:
6+
context: .
7+
dockerfile: Dockerfile
8+
ports:
9+
- "3000:3000"
10+
environment:
11+
- NODE_ENV=development
12+
- PORT=3000
13+
- SQLITE_PATH=/app/data/app.sqlite
14+
- REDIS_URL=redis://redis:6379
15+
- QUEUE_ENABLED=false
16+
volumes:
17+
- ./data:/app/data
18+
depends_on:
19+
- redis
20+
restart: unless-stopped
21+
22+
redis:
23+
image: redis:7-alpine
24+
ports:
25+
- "6379:6379"
26+
volumes:
27+
- redis_data:/data
28+
command: redis-server --appendonly yes
29+
restart: unless-stopped
30+
31+
volumes:
32+
redis_data:

0 commit comments

Comments
 (0)