Project: Native Deployment of White-Label Speckle Server (No Docker) - 10/05/2025 06:00 EDT

Job ID: 39394448

Budget: €250 – €750 EUR

Objective
Seeking a skilled DevOps or Linux infrastructure specialist with strong frontend/backend development experience to deploy and fully customize a production-ready, self-hosted Speckle Server on a clean Ubuntu 22.04 VPS (Namecheap).

Deployment must be native (i.e., no Docker), fully white-labeled, secure, and optimized for production use.

Speckle Resources
- Speckle Server GitHub: https://github.com/specklesystems/speckle-server
- Power BI Connector GitHub: https://github.com/specklesystems/speckle-powerbi

Required Skills
- Native Linux system administration (Ubuntu 22.04)
- Node.js (via NVM)
- Yarn workspaces & monorepo architecture
- PM2 process management or systemd units
- PostgreSQL and Redis
- Git-based CI/CD workflows
- Vue.js / Nuxt.js (frontend SSR builds)
- NGINX reverse proxy and SSL config (Let's Encrypt or manual cert)
- Linux shell scripting
- Object/blob storage configuration (e.g., local FS or S3-compatible)
- Email service configuration (SMTP)

Project Scope & Tasks

1. Native Speckle Server Installation
Install all core components:
- API (server)
- Frontend (frontend)
- Object storage service (blob_storage)
- No Docker or containers allowed — manual, native install only
- Use NVM for Node.js version control
- Use Yarn with workspace support

2. Environment Configuration

Set up required .env files for:
- Server
- Frontend
- Blob storage
- Redis and PostgreSQL
- Email (SMTP)
- Ensure correct API endpoints and secure configurations

3. Email Functionality
- Enable and test:
- Email-based sign-up
- Email confirmation links
- Password reset workflows

4. Reverse Proxy + SSL
- Configure NGINX as reverse proxy to expose API and frontend over HTTPS
- Set up SSL (via Let’s Encrypt or custom certificate)
- Apply standard hardening: HTTPS-only, security headers, rate limiting

5. Branding Removal
Completely remove Speckle branding from:
- Web app preloaders and UI
- Embedded viewer interface
- Power BI connector visualizations
- Deliver a fully white-labeled experience

6. Power BI Connector
- Install and configure the official Speckle Power BI connector
- (If Required) Customize to eliminate all branding and default assets
- Ensure clean embedding experience in Power BI dashboards

7. 3D Model Upload & Embedding Test
- Test functionality using models from free public sources (e.g., Sketchfab, Thingiverse, TurboSquid)
- Confirm smooth upload, processing, and display in both:
- Embedded viewers
- Power BI embeds

8. System Hardening & Security
- Configure UFW firewall and secure SSH
- Ensure Redis and PostgreSQL are bound to localhost or firewalled
- Keep system packages up to date with unattended-upgrades
- Apply secure NGINX configuration (TLS, headers, etc.)
- Ensure processes do not run as root

9. Testing & Final Acceptance
- Validate full stack: login, signup, email, upload, viewing, embedding
- Final test: embedded 3D model in Power BI on external site — no branding
- Health checks on /health endpoints for each component
- Admin account creation

Other Requirements
- Daily progress updates are mandatory

Preference will be given to applicants who have:
- Previously deployed Speckle Server natively (non-Docker)
- Experience customizing Speckle or similar 3D/IFC-based systems
- Must follow secure deployment practices and maintain clean, modular setup

In order to filter our bots and people who did not read the full project description please include the secret word "comprendo" else you will be ignored.
Related categories: Linux Nginx Amazon Web Services Node.js Ubuntu