VIBN Frontend for Coolify deployment

This commit is contained in:
2026-02-15 19:25:52 -08:00
commit 40bf8428cd
398 changed files with 76513 additions and 0 deletions

137
setup-e2e-test.sh Executable file
View File

@@ -0,0 +1,137 @@
#!/bin/bash
# Helper script to set up and run E2E test
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
CYAN='\033[0;36m'
NC='\033[0m'
echo ""
echo "=========================================="
echo " E2E TEST SETUP HELPER"
echo "=========================================="
echo ""
echo -e "${BLUE}Step 1: Check if server is running...${NC}"
if curl -s -o /dev/null -w "%{http_code}" http://localhost:3000 | grep -q "200\|404"; then
echo -e "${GREEN}✓ Server is running on http://localhost:3000${NC}"
else
echo -e "${YELLOW}⚠ Server not running. Starting it now...${NC}"
npm run dev &
sleep 5
fi
echo ""
echo -e "${BLUE}Step 2: Get your credentials${NC}"
echo ""
echo -e "${CYAN}Please follow these steps:${NC}"
echo ""
echo "1. Open your browser and go to:"
echo " ${BLUE}http://localhost:3000${NC}"
echo ""
echo "2. Sign in and create/open a project"
echo ""
echo "3. Go to AI Chat page"
echo ""
echo "4. Open DevTools (F12 or Cmd+Option+I)"
echo ""
echo "5. Go to Network tab"
echo ""
echo "6. Send any message (e.g., 'test')"
echo ""
echo "7. Find the request to '/api/ai/chat'"
echo ""
echo "8. Click it → Headers tab"
echo ""
echo "9. Copy the 'Authorization' header value"
echo " (It looks like: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6Ij...)"
echo ""
echo "10. Copy your project ID from the URL"
echo " (Format: /workspace/project/{PROJECT_ID}/v_ai_chat)"
echo ""
echo ""
echo -e "${YELLOW}Ready to input your credentials?${NC}"
read -p "Press Enter when ready..."
echo ""
# Get auth token
echo -e "${CYAN}Paste your Authorization header (including 'Bearer '):${NC}"
read -r AUTH_TOKEN
echo ""
# Get project ID
echo -e "${CYAN}Paste your Project ID:${NC}"
read -r PROJECT_ID
echo ""
# Validate inputs
if [ -z "$AUTH_TOKEN" ]; then
echo -e "${YELLOW}⚠ Auth token is empty. Exiting.${NC}"
exit 1
fi
if [ -z "$PROJECT_ID" ]; then
echo -e "${YELLOW}⚠ Project ID is empty. Exiting.${NC}"
exit 1
fi
# Save to temporary file for reuse
cat > .e2e-test-env << EOF
export AUTH_TOKEN='$AUTH_TOKEN'
export PROJECT_ID='$PROJECT_ID'
EOF
echo -e "${GREEN}✓ Credentials saved to .e2e-test-env${NC}"
echo ""
# Test connection
echo -e "${BLUE}Step 3: Testing connection...${NC}"
response=$(curl -s -X POST "http://localhost:3000/api/ai/chat" \
-H "Authorization: $AUTH_TOKEN" \
-H "Content-Type: application/json" \
-d "{\"projectId\":\"$PROJECT_ID\",\"message\":\"test\"}")
if echo "$response" | jq -e '.reply' > /dev/null 2>&1; then
echo -e "${GREEN}✓ Connection successful!${NC}"
reply=$(echo "$response" | jq -r '.reply' | head -c 100)
echo -e "${CYAN}AI Response:${NC} $reply..."
echo ""
elif echo "$response" | jq -e '.error' > /dev/null 2>&1; then
error=$(echo "$response" | jq -r '.error')
echo -e "${YELLOW}⚠ API Error: $error${NC}"
echo "Please check your credentials and try again."
exit 1
else
echo -e "${YELLOW}⚠ Unexpected response${NC}"
echo "$response"
exit 1
fi
echo ""
echo -e "${GREEN}=========================================="
echo " READY TO RUN E2E TEST"
echo "==========================================${NC}"
echo ""
echo "Credentials saved! You can now run:"
echo ""
echo -e "${CYAN} source .e2e-test-env${NC}"
echo -e "${CYAN} ./test-e2e-collector.sh${NC}"
echo ""
echo "Or simply:"
echo ""
echo -e "${CYAN} AUTH_TOKEN='$AUTH_TOKEN' PROJECT_ID='$PROJECT_ID' ./test-e2e-collector.sh${NC}"
echo ""
# Offer to run now
echo -e "${YELLOW}Run E2E test now? (y/n)${NC}"
read -r run_now
if [ "$run_now" = "y" ] || [ "$run_now" = "Y" ]; then
echo ""
export AUTH_TOKEN
export PROJECT_ID
./test-e2e-collector.sh
fi