feat: custom IFC converter with C++ geometry injection
Release pipeline / Get version (push) Has been cancelled
Release pipeline / Get Chart Name (push) Has been cancelled
Release pipeline / tests (push) Has been cancelled
Release pipeline / builds (push) Has been cancelled
Release pipeline / builds-ghcr (push) Has been cancelled
Release pipeline / test-deployments (push) Has been cancelled
Release pipeline / deploy (push) Has been cancelled
Release pipeline / Helm chart oci (push) Has been cancelled
Release pipeline / npm (push) Has been cancelled
Release pipeline / snyk (push) Has been cancelled

- Add custom IFC converter using web-ifc C++ DLL for geometry extraction
- Add GeometryInjector.cs: patches Speckle objects with mesh geometry
- Add NativeIfcGeometry.cs: P/Invoke bindings to WebIfcDll
- Add CustomMeshConverterFactory.cs: custom Xbim mesh converter
- Configure fileimport-service dotnet IFC pipeline
- Add VPS deployment config (docker-compose-vps.yml)
- Add dev scripts: run_backend.bat, run_frontend.bat, start_dev.bat
- Update .gitignore: exclude scratch/IFC-toolkit, engine_web-ifc
- Memory optimization for Xbim (MemoryModel mode)
This commit is contained in:
2026-04-16 06:46:41 +07:00
parent 71c3f3b584
commit 6cd126af41
52 changed files with 1980 additions and 112 deletions
+38
View File
@@ -0,0 +1,38 @@
@echo off
echo ============================================
echo SPECKLE SERVER DEV STARTUP
echo ============================================
echo.
REM Set Node 22 first
set "NVM_PATH=C:\Users\huanld\AppData\Local\nvm\v22.19.0"
set "PATH=%NVM_PATH%;%PATH%"
echo [1/2] Checking node version...
node -v
echo.
REM First fix VPS - restart Keycloak via SSH
echo [VPS] Checking and restarting Keycloak on VPS...
ssh -o StrictHostKeyChecking=no -i "%USERPROFILE%\.ssh\id_rsa" root@100.64.0.3 "cd /root && docker compose -f docker-compose-vps.yml up -d keycloak valkey 2>&1"
echo.
echo [VPS] Waiting 15 seconds for Keycloak to start...
timeout /t 15 /nobreak
echo.
REM Start backend in new window
echo [2/3] Starting Backend Server (port 3000)...
start "Speckle Backend" cmd /k "set PATH=%NVM_PATH%;%PATH% && cd /d d:\speckle-server\packages\server && npx tsx --import ./esmLoader.js ./run.ts"
timeout /t 3 /nobreak
REM Start frontend in new window
echo [3/3] Starting Frontend (port 8081)...
start "Speckle Frontend" cmd /k "set PATH=%NVM_PATH%;%PATH% && cd /d d:\speckle-server\packages\frontend-2 && npx nuxi dev"
echo.
echo ============================================
echo Servers starting in separate windows!
echo Backend: http://127.0.0.1:3000
echo Frontend: http://127.0.0.1:8081
echo ============================================
pause