Skip to content

API reference

gisila exposes four libraries:

Library Import it from Contents
package:gisila/gisila.dart application code The whole runtime and annotation surface, plus the parts of shelf and shelf_router you need.
package:gisila/testing.dart tests only GisilaTestClient, TestResponse, TestAuthenticator.
package:gisila/builder.dart build.yaml only The build_runner entry point.
package:gisila/builder_helpers.dart other generators Build-time helpers (used by gisila_doc).

The pages below cover every exported symbol. Each entry says what the symbol is for and when to reach for it.

GisilaApp · ControllerAttacher · kAppKey · re-exported Request, Response, Handler, Middleware, Pipeline, HijackException, Router and the rest of shelf_router (other exports)

AppConfig · ErrorHandler

Controller · Route · Get, Post, Put, Patch, Delete, Head, Options · UseRouteConfig · UseMiddleware · Body · Query · Path · Header · parameter binding rules · return values

RouteConfig · gisilaRoute · GisilaRouteHandler · guardRequest · GuardResult

RequestContext · CancellationToken · RequestCancelledException · kContextKey, kServiceResolverKey, kSingletonResolverKey, kCancellationKey, kAbandonedWorkKey

Form · bindForm · FormField · FieldValidator · StringField · EmailField · PasswordField · IntField · DoubleField · BoolField · DateTimeField · JsonField · FileField · FormValidationException

readBody · readJsonBody · readFormBody · DecodedBody · parseFormData · defaultMaxFormParts · defaultMaxFormFieldBytes · formUrlEncodedContentType · multipartFormDataContentType · FormData · UploadedFile · coerce · jsonResponse · emptyResponse

Service · ServiceFactory

RequireAuth · Public · Permissions · AnyPermission · Roles · Principal · Authenticator · NullAuthenticator · StaticTokenAuthenticator · ApiKeyAuthenticator · ApiKeyLookup · CompositeAuthenticator · PermissionResolver · ClaimsPermissionResolver

JwtAuthenticator · JwtSigner · JwtKey · JwtKeySet · StaticJwtKeySet · RemoteJwks · JwtClaims · JwtPrincipalMapper · supportedJwtAlgorithms · minJwtHmacSecretBytes

pipeline order · CorsConfig · corsMiddleware · RateLimitConfig · rateLimitMiddleware · RateLimitStore · InMemoryRateLimitStore · clientAddress · SecurityHeadersConfig · HstsConfig · securityHeadersMiddleware · CompressionConfig · compressionMiddleware · acceptsGzip · EtagConfig · etagMiddleware · ifNoneMatchHits · requestIdMiddleware · bodySizeLimitMiddleware · limitBytes · allowedContentTypesMiddleware · defaultAllowedContentTypes

HttpException · BadRequest, Unauthorized, Forbidden, NotFound, Conflict, PayloadTooLarge, TooManyRequests, InternalServerError · EndpointException · BadRequestException

Logger · ConsoleLogger · LogEvent · LogLevel · LogFormat

DatabaseProvider · DbErrorMapper · kDbKey · CacheProvider · InMemoryCacheProvider · kCacheKey

PageParams · Page · Cursor

sseResponse · SseEvent · lastEventId · StaticFilesConfig · staticFilesHandler

MetricsConfig · metricsMiddleware · kRouteTemplateKey · MetricsRegistry · Counter · Gauge · Histogram · defaultLatencyBuckets · MetricsHub · MetricsHubMember · mergeSnapshots · renderSnapshot

GisilaTestClient · TestResponse · TestAuthenticator

builder configuration · generated code · controllerBuilder · emitRouteConfigLiteral, emitGuardsRouteConfigLiteral, emitNamedMiddlewareConfig · isNullable, typeDisplayName, typeDisplayNameNullable, isCoercible, isShelfRequest, isShelfResponse, isRequestContext, isFormData, isUploadedFile, isFormSubtype, isServiceSubtype, unwrapFuture, isVoid, isStringMap, listElementType, pathPlaceholders, toShelfPath, fromJsonConstructor, fromFormConstructor, isGisilaLibrary, dartString, joinPath, stringSetLiteral