9f3e7f82e742b64dff6be38752c68f2fc9fd4cd9
The original setup guide covered connecting Altium directly to the
portal SQL server. That works but has three drawbacks under RU
conditions: ~60-second Altium startup over VPN, daily VPN dependency,
single point of failure at Mark Harris's hosting.
New section 11 documents the self-hosted alternative we just built and
verified end-to-end:
- Two independent mirrors:
- homework/altium-library: Gitea pull-mirror of issus/altium-library
with LFS (SchLib + PcbLib + STEP, ~6 GB)
- homework/celestial-mirror-db: MSSQL 2022 Express in Docker on
192.168.9.147, populated weekly by a pymssql-based sync job with
best-effort + row-count/schema fingerprint skip logic
- Results: Altium startup <1s (100x faster), VPN only needed once a
week for the sync runner, full control over the dataset
- Full deployment sequence (Gitea migrate API → docker compose up →
first manual full-sync → client DbLib rewrite)
- ConnectionString rewrite details (altium_reader user, LAN IP,
Encrypt=Optional/TrustServerCertificate=Yes for self-signed cert)
- MPN-to-view lookup strategies (Shift+C in Altium; dynamic SQL that
scans all 168 tables)
- Troubleshooting specific to the mirror stack
claude-skills
Custom skills for Claude.ai (claude.ai → Settings → Skills).
Skills
| Skill | Description |
|---|---|
| bulletproof | 12-stage adaptive dev workflow (research → deploy). Adapted for Python/Docker/Traefik/MikroTik/embedded stacks, Gitea CI/CD, SonarQube. Based on Bulletproof v5.0 by Artemiy Miller. |
| embedded-firmware-engineer | Bare-metal & RTOS firmware: ESP32/ESP-IDF, STM32 HAL/LL, Nordic nRF, FreeRTOS, Zephyr. NASA/JPL Power of Ten rules, banned functions, DMA/cache coherence, GPIO policy, watchdog strategy, brown-out testing. |
| my-python-senior | Senior-level Python engineer for systems, containers, LLM workflows, networking, and file processing. |
| pcb-ai-engineer | Code-driven schematic & PCB design using Circuit-Synth (Python) → KiCad → Altium. Universal STM-family abstraction with family → package → pinmap → capabilities data model. |
Structure
claude-skills/
├── README.md
├── bulletproof/
│ ├── SKILL.md
│ ├── agents/
│ │ └── code-reviewer.md
│ └── templates/
│ ├── handoff.md
│ ├── plan.md
│ ├── research.md
│ └── spec.md
├── embedded-firmware-engineer/
│ └── SKILL.md
├── my-python-senior/
│ ├── SKILL.md
│ ├── ai-ml-llm.md
│ ├── containers.md
│ ├── files-io.md
│ ├── networking.md
│ └── systems.md
└── pcb-ai-engineer/
├── SKILL.md
├── main.py
├── mcu_core.py
├── mcu_db.py
├── mcu_peripherals.py
└── power.py
Usage
Each subdirectory is a standalone skill. Upload to Claude.ai via Settings → Profile → Custom Skills, or point Claude Code's --skill flag at the SKILL.md file.
License
Private — for personal use only.
Description
Languages
Python
60.9%
HTML
39.1%