Comprehensive Visual Studio Code snippets for the Go Fiber web framework. 153 snippets covering everything from basic app setup to advanced architecture patterns, deployment, and testing.
All snippets use the prefix go-fbr- for quick access.
Type the prefix (e.g., go-fbr-app) in a .go file and select the snippet from IntelliSense suggestions. Tab stops are included for easy customization.
| Prefix |
Description |
go-fbr-import |
Import Fiber v2 package |
go-fbr-app |
Create a new Fiber app |
go-fbr-app-config |
Create a new Fiber app with configuration |
go-fbr-listen |
Start server on port |
go-fbr-listen-tls |
Start server with TLS |
go-fbr-config-body-limit |
Set request body size limit |
go-fbr-config-read-timeout |
Configure read/write/idle timeouts |
go-fbr-config-prefork |
Enable prefork (multi-process) mode |
go-fbr-minimal |
Minimal app with health and version routes |
go-fbr-hello-world |
Complete Hello World application |
go-fbr-graceful-shutdown |
Graceful shutdown snippet |
go-fbr-graceful-shutdown-full |
Full app with graceful shutdown |
go-fbr-graceful-context |
Work with request context |
go-fbr-config-env |
Environment-based config with envconfig |
go-fbr-config-viper |
Configuration loading with Viper |
| Prefix |
Description |
go-fbr-route |
Define a route with method selection |
go-fbr-route-get |
Define a GET route |
go-fbr-route-post |
Define a POST route |
go-fbr-route-put |
Define a PUT route |
go-fbr-route-patch |
Define a PATCH route |
go-fbr-route-delete |
Define a DELETE route |
go-fbr-route-group |
Create a route group |
go-fbr-route-grouping-versioning |
Route grouping with API versioning |
go-fbr-route-mount |
Mount a sub-app |
go-fbr-route-param |
Get route parameter |
go-fbr-route-params-int |
Get route parameter as integer |
go-fbr-route-query |
Get query parameter with default |
go-fbr-route-query-parser |
Parse query params into struct |
go-fbr-route-body-parser |
Parse request body into struct |
go-fbr-route-static |
Serve static files |
go-fbr-route-static-cache-control |
Static files with cache control |
go-fbr-route-download |
File download route |
go-fbr-route-liveness-probe |
Liveness probe (health check) |
go-fbr-route-readiness-probe |
Readiness probe (DB check) |
go-fbr-route-metrics |
Metrics endpoint |
| Prefix |
Description |
go-fbr-route-json |
Send JSON response |
go-fbr-route-json-status |
JSON response with status code |
go-fbr-route-json-map |
JSON response with fiber.Map |
go-fbr-route-send-status |
Send status code response |
go-fbr-route-redirect |
Redirect to URL |
go-fbr-route-header |
Get request header |
go-fbr-route-set-header |
Set response header |
go-fbr-route-cookie-set |
Set a secure cookie |
go-fbr-route-cookie-get |
Get cookie value |
go-fbr-route-cookie-clear |
Clear/delete a cookie |
go-fbr-locals-set |
Store value in request locals |
go-fbr-locals-get |
Get typed value from locals |
go-fbr-route-json-stream |
Stream NDJSON response |
go-fbr-route-server-side-events |
Server-Sent Events (SSE) endpoint |
| Prefix |
Description |
go-fbr-route-file-upload |
Single file upload with validation |
go-fbr-route-multi-file-upload |
Multi-file upload |
go-fbr-route-streaming-file-upload |
Stream upload to S3 |
| Prefix |
Description |
go-fbr-middleware |
Add inline middleware |
go-fbr-middleware-func |
Create a reusable middleware function |
go-fbr-middleware-func-config |
Configurable middleware with skipper |
go-fbr-middleware-logger |
Logger with custom format |
go-fbr-middleware-recover |
Recover from panics |
go-fbr-middleware-requestid |
Request ID for tracing |
go-fbr-middleware-cors |
CORS with full config |
go-fbr-middleware-compression |
Gzip/Brotli compression |
go-fbr-middleware-cache |
Response caching |
go-fbr-middleware-etag |
ETag conditional requests |
go-fbr-middleware-helmet |
Security headers (Helmet) |
go-fbr-middleware-csrf |
CSRF protection |
go-fbr-middleware-timeout |
Route timeout |
go-fbr-middleware-idempotency |
Idempotency (prevent duplicates) |
go-fbr-middleware-proxy |
Reverse proxy with load balancing |
go-fbr-middleware-pprof |
pprof profiling |
go-fbr-middleware-monitor |
Built-in metrics dashboard |
| Prefix |
Description |
go-fbr-middleware-limiter |
Rate limiter with custom config |
go-fbr-middleware-limiter-sliding-window |
Sliding window rate limiter |
| Prefix |
Description |
go-fbr-middleware-basicauth |
Basic authentication |
go-fbr-middleware-keyauth |
API key authentication |
| Prefix |
Description |
go-fbr-middleware-security-headers |
Custom security headers |
go-fbr-middleware-multitenancy |
Multi-tenancy (header/subdomain) |
go-fbr-middleware-gzip-json |
Gzip only JSON responses |
go-fbr-middleware-request-id-propagation |
Request ID propagation |
go-fbr-middleware-ip-whitelist |
IP whitelist |
go-fbr-middleware-response-time |
X-Response-Time header |
go-fbr-middleware-context-timeout |
Per-request context timeout |
go-fbr-not-found-handler |
Custom 404 handler |
| Prefix |
Description |
go-fbr-error-handler |
Custom global error handler |
go-fbr-error-handler-typed |
Typed error handler with custom types |
go-fbr-error-fiber-new |
Return a Fiber error with status |
go-fbr-request-validation |
Request validation (go-playground) |
go-fbr-validation-custom |
Custom validation function |
go-fbr-validation-errors-response |
Structured validation error response |
| Prefix |
Description |
go-fbr-jwt-auth |
JWT setup with token issuance |
go-fbr-jwt-extract-claims |
Extract JWT claims from request |
go-fbr-jwt-refresh-token |
JWT refresh token endpoint |
go-fbr-oauth2-google |
Google OAuth2 login flow |
go-fbr-session |
Session management (login/logout) |
go-fbr-middleware-casbin-rbac |
Casbin RBAC authorization |
go-fbr-hash-password-bcrypt |
bcrypt hash and verify |
go-fbr-hash-password-argon2id |
argon2id password hashing |
| Prefix |
Description |
go-fbr-db-postgres-connect |
PostgreSQL with connection pool |
go-fbr-db-postgres-pgx |
PostgreSQL with pgxpool |
go-fbr-db-mysql-connect |
MySQL connection |
go-fbr-db-sqlite-connect |
SQLite with sqlx |
go-fbr-db-gorm-setup |
GORM setup with auto-migration |
go-fbr-db-gorm-model |
GORM model definition |
go-fbr-db-gorm-crud |
GORM CRUD operations |
go-fbr-db-gorm-pagination |
GORM pagination scope |
go-fbr-db-transaction |
Database transaction with rollback |
go-fbr-db-sqlx-query |
sqlx SELECT query |
go-fbr-db-sqlx-get-one |
sqlx GET single row |
go-fbr-db-mongo-connect |
MongoDB connection |
go-fbr-db-redis-connect |
Redis client connection |
go-fbr-db-redis-cache-pattern |
Redis cache-aside pattern |
| Prefix |
Description |
go-fbr-websocket-upgrade |
WebSocket upgrade middleware |
go-fbr-websocket-echo |
WebSocket echo endpoint |
go-fbr-websocket-chat |
WebSocket chat room with broadcast |
| Prefix |
Description |
go-fbr-logging-zerolog |
Structured logging with zerolog |
go-fbr-logging-slog |
Structured logging with slog (Go 1.21+) |
go-fbr-otel-tracing |
OpenTelemetry tracing |
go-fbr-prometheus-metrics |
Prometheus metrics with custom counters |
| Prefix |
Description |
go-fbr-test-handler |
Test a handler with httptest |
go-fbr-test-post-json |
Test POST with JSON body |
go-fbr-test-table-driven |
Table-driven tests |
go-fbr-test-middleware |
Test middleware |
go-fbr-test-benchmark |
Benchmark a handler |
| Prefix |
Description |
go-fbr-repository-pattern |
Repository interface + implementation |
go-fbr-service-pattern |
Service layer pattern |
go-fbr-handler-pattern |
Handler struct with route registration |
go-fbr-dependency-injection |
Simple DI container |
go-fbr-crud-resource |
Full CRUD routes (GORM) |
go-fbr-pagination-response |
Paginated list endpoint |
go-fbr-generics-response |
Generic API response helpers (Go 1.18+) |
| Prefix |
Description |
go-fbr-circuit-breaker |
Circuit breaker (gobreaker) |
go-fbr-retry-pattern |
Retry with exponential backoff |
go-fbr-http-client-retry |
HTTP client with retry |
go-fbr-graceful-http-client |
HTTP client with connection pool |
go-fbr-bg-job-handler |
Background jobs with asynq |
go-fbr-graceful-worker-pool |
Worker pool for concurrency |
go-fbr-event-emitter |
In-process event bus |
go-fbr-graphql-handler |
GraphQL with gqlgen |
go-fbr-grpc-gateway |
gRPC-Gateway integration |
go-fbr-template-html |
HTML template rendering |
go-fbr-embed-static |
Embed static files in binary |
| Prefix |
Description |
go-fbr-swagger-route |
Swagger UI route |
go-fbr-swagger-comments |
Swagger handler annotations |
go-fbr-swagger-main-comments |
Swagger main.go annotations |
| Prefix |
Description |
go-fbr-dockerfile |
Multi-stage Dockerfile |
go-fbr-dockerfile-with-migrations |
Dockerfile with migrations |
go-fbr-docker-compose |
Docker Compose (app + Postgres + Redis) |
go-fbr-makefile |
Makefile for common tasks |
go-fbr-hot-reload-air-toml |
Air hot-reload config |
go-fbr-github-actions-ci |
GitHub Actions CI workflow |
go-fbr-project-structure-bash |
Scaffold project structure |
go-fbr-go-mod-init |
Initialize Go module with Fiber |
| Prefix |
Description |
go-fbr-util-redact |
Redact all but last 4 chars |
go-fbr-util-slug |
URL slug generator |
go-fbr-util-uuid |
Generate UUID |
go mod init github.com/your-username/your-project
go get github.com/gofiber/fiber/v2
Feel free to suggest more snippets or contribute via GitHub.