SanMap Studio is a standalone Windows desktop editor for building SA-MP maps without running GTA, SA-MP, MTA, or Texture Studio. It reads assets from a GTA San Andreas installation selected by the user; no game files are bundled with the application.
- Browse and preview DFF models and TXD textures indexed from GTA IMG archives.
- Place, select, group, duplicate, and transform objects in a Three.js viewport.
- Edit material slots, colors, textures, and
SetDynamicObjectMaterialTextproperties. - Import and export native SA-MP and streamer Pawn object code.
- Preview the GTA world through opt-in IPL streaming and export
RemoveBuildingForPlayercalls. - Save versioned
.sanmapprojects with undo/redo, autosave, and crash recovery.
Download the installer or portable build from the latest GitHub Release:
SanMap.Studio.Setup.0.1.0.exe— Windows installer.SanMap.Studio.0.1.0.exe— portable executable.SHA256SUMS.txt— checksums for both binaries.
The v0.1.0 binaries are not code-signed. Windows SmartScreen may show an “Unknown publisher” warning; verify the SHA-256 checksum before running the application.
- Windows 10 or 11, 64-bit.
- GPU with WebGL 2.0 / Direct3D 11 support.
- A legally acquired GTA San Andreas installation for loading game models, textures, and world data.
SanMap Studio never modifies the selected GTA installation.
- Launch SanMap Studio and select the GTA San Andreas directory containing
models/gta3.imganddata/gta.dat. - Create a new project or import existing Pawn code.
- Drag models from the Object Catalog into the viewport.
- Adjust transforms and materials in the Inspector.
- Save the
.sanmapproject or export Pawn code.
See the user guide for the complete workflow and controls.
| Shortcut | Action |
|---|---|
WASD / arrows |
Move camera |
Q / E |
Move camera down / up |
Shift / Alt |
Fast / precise camera movement |
F |
Focus the selected object |
Home |
Reset camera |
1 / 2 / 3 |
Translate / rotate / transform-duplicate gizmo |
L |
Toggle local/world gizmo space |
Ctrl+D |
Duplicate selection |
Delete |
Delete selection |
Ctrl+Z / Ctrl+Y |
Undo / redo |
Numpad 1 / 3 / 7 / 0 |
Front / right / top / isometric view |
Prerequisites: Node.js 22.13 or newer and pnpm 11.8.0.
git clone https://github.com/mgmoldova/sanmap-studio.git
cd sanmap-studio
corepack enable
pnpm install --frozen-lockfile
pnpm devVerification and packaging:
pnpm run agent:check
pnpm test
pnpm run lint
pnpm run typecheck
pnpm run build
pnpm run build:winWindows packages are written to dist/ and are intentionally excluded from Git.
src/main/— Electron main process, file access, settings, and typed IPC handlers.src/preload/— isolated renderer bridge exposed aswindow.sanMapApi.src/renderer/— React workspace and Three.js viewport.packages/shared/— serializable types, migrations, schemas, and shared utilities.packages/gta-assets/— IMG/DFF/TXD/IDE/IPL parsing and asset catalogs.packages/samp-map/— Pawn lexer, importer, and exporter.
Detailed documents: architecture, agent architecture, and roadmap.
Contributions are welcome. Read CONTRIBUTING.md before opening a pull request. Report security issues privately as described in SECURITY.md.
SanMap Studio is an independent community project and is not affiliated with or endorsed by Rockstar Games, Take-Two Interactive, or the SA-MP team. The repository and release archives do not contain GTA San Andreas models, textures, archives, or other proprietary game assets. Users must supply their own legally acquired installation.
Third-party acknowledgements are listed in THIRD_PARTY_NOTICES.md.
SanMap Studio is released under the MIT License.

