
Design Postgis Tables
This is a well-structured reference for designing spatial tables in PostGIS. It walks you through the geometry versus geography decision (projected versus spherical calculations), explains when to use each geometry type (point, linestring, polygon), and covers SRID selection with practical examples. The five opening questions about scope, query patterns, and scale help you make the right choices upfront. What stands out is the clear guidance on spatial indexing with GiST and the comparison tables that cut through the complexity. If you're building anything location-based, from store locators to regional GIS systems, this gives you the patterns to avoid common mistakes like mixing coordinate systems or choosing the wrong index type. The SQL injection reminder is a good touch for production code.
- skills.sh installs
- 370
- GitHub stars
- 1.9K
- last updated
- Aug 21, 2026
Install
$ npx -y skills add timescale/pg-aiguide --skill design-postgis-tables --agent claude-codeInstalls into .claude/skills of the current project.
Files
PostGIS Spatial Table Design
Before You Start (5 Questions)
- What is the geographic scope (single city/region vs global)?
- What are your primary query patterns (within-radius, bbox, intersects, nearest-neighbor)?
- What units do you need for distance/area (meters vs CRS units), and how accurate must they be?
- What is the expected scale (rows, write rate), and is the data mostly append-only?
- Do you need 3D (Z) or measures (M), or is 2D enough?
SQL injection note: When turning these patterns into application code, use parameterized queries for user-provided values (WKT/WKB, coordinates, IDs, radii). Avoid string-concatenating untrusted input into SQL; for dynamic identifiers, use safe identifier quoting/whitelisting.
Core Rules
Sponsors
Details
- Repository
- github.com/timescale/pg-aiguide
- Categories
- Debugging, Design & UI/UX
- License
- Apache-2.0
- First seen
- Jun 3, 2026