-
Notifications
You must be signed in to change notification settings - Fork 0
Development
blycr edited this page Feb 18, 2026
·
7 revisions
- Go: 1.25 or higher.
- Node.js: Required for building frontend assets.
-
pnpm: Recommended (faster package manager). Installation:
- Via corepack (built-in with Node.js 16.13+):
corepack enable - Or via npm:
npm install -g pnpm
- Via corepack (built-in with Node.js 16.13+):
msp/
├── cmd/
│ └── msp/
│ └── main.go # Entry point
├── internal/ # Private application code
│ ├── config/ # Configuration logic
│ ├── db/ # Database layer
│ ├── handler/ # HTTP handlers
│ ├── media/ # Media processing
│ │ └── transcoder.go # FFmpeg transcoding logic
│ ├── server/ # Server core
│ └── web/ # Web embedding logic
├── web/
│ ├── src/ # Frontend source (JS/CSS)
│ ├── public/ # Static assets
│ ├── dist/ # Build output (gitignored)
│ └── vite.config.js # Vite config
├── go.mod
└── config.example.json # Config template
-
Clone the repository:
git clone https://github.com/blycr/msp.git cd msp -
Build Frontend:
cd web pnpm install pnpm run build cd ..
-
Build Backend:
# Windows go build -o msp.exe ./cmd/msp # Linux go build -o msp ./cmd/msp
Or use the PowerShell script (Windows):
./scripts/build.ps1
Use the PowerShell script for automated cross-platform builds:
# Build for all platforms and architectures
./scripts/build.ps1 -Platforms windows,linux,macos -Architectures x64,arm64,x86,v7,v8This will generate binaries in bin/, checksums in checksums/, and debug symbols in debug/.
For more details, see scripts/README.md.
The frontend is located in web/src. It uses Vite for building.
- Run
pnpm installinweb/directory. - Run
pnpm run devfor local development server (note: you might need to configure proxy to backend). - Run
pnpm run buildto generate production assets inweb/dist.
Use the provided dev script for a faster iteration loop:
.\scripts\dev.ps1- Backend will be built to
bin/dev/msp-dev.exeand restarted automatically on*.gochanges. - Dev config is
bin/dev/config.json(created fromconfig.example.jsonif missing). - Dev mode disables auto-opening the preview page by default.
- Vite dev server is configured to listen on LAN (
0.0.0.0), so you can open it on your phone:http://<your-pc-lan-ip>:5173/