Files
mxpic_EDA/docs/INTRANET_DEPLOYMENT.md
T
2026-06-08 14:48:14 +08:00

2.4 KiB

mxPIC EDA Intranet Deployment

Build-Time Router Stack

The Flask server can launch for login, dashboard, canvas editing, YAML generation, and PDK browsing without importing mxpic_router or mxpic_forge. Build actions require mxpic_router and Nazca. When mxpic_forge.Route is not available, routing falls back to Nazca interconnects.Interconnect; SVG preview generation also requires gdstk.

Start on the office LAN

  1. On the host computer, open PowerShell in this repository.
  2. Set a persistent secret key:
$env:MXPIC_SECRET_KEY = "replace-with-a-long-random-secret"
  1. Start the server:
.\run_intranet_server.ps1

The app listens on 0.0.0.0:3000, so other users can open:

http://<host-computer-ip>:3000

Find the host IP with:

ipconfig

Use the IPv4 address on the company LAN adapter.

Windows firewall

If coworkers cannot connect, allow inbound TCP port 3000 on the host computer.

Accounts

Default local accounts:

admin / 123456
engineer / 123456

Change these passwords from the dashboard profile panel before regular use.

Each user stores projects under:

mxpic_EDA_database/<username>/layout

Before starting the server, move the existing database folder beside the repo and rename it to mxpic_EDA_database:

<parent-folder>/
  mxpic_EDA/
  mxpic_EDA_database/

The backend fails fast if the runtime database folder is missing or still inside the repository. Use MXPIC_DATABASE_ROOT only when the database must live in a different external location.

Useful environment variables

MXPIC_HOST=0.0.0.0
MXPIC_PORT=3000
MXPIC_DEBUG=0
MXPIC_SECRET_KEY=<long random string>
MXPIC_COOKIE_SECURE=0
MXPIC_DATABASE_ROOT=<path-to-mxpic_EDA_database>
MXPIC_PDK_PUBLIC_ROOT=<path-to-public-foundries>
MXPIC_PDK_ATLAS_ROOT=<path-to-atlas-foundries>

Set MXPIC_COOKIE_SECURE=1 only when serving through HTTPS.

PDK component metadata, GDS assets, and technology.yml manifests are all read from these role-scoped roots. If the variables are not set, the backend defaults to ../opt_pdk_public/foundries for normal users/developers and ../opt_pdk_atlas/foundries for managers.