aim_server_static
Static file serving middleware for the Aim framework with security built-in.
0.1.1
aim-dart/aim
What this package is like to depend on
Last release 7 months ago
20 Jan 2026
Too new to tell
only 2 release windows
Nearly every release is documented
notes for 3 of 3 stable releases
Nothing withdrawn
no release was ever pulled
8 months old
3 releases · first in 2025
3 releases in the last 12 months
see the full history below
Release timeline
3 releases · Dec 2025 to Jan 2026
2026
Releases
latest 3-
0.1.120 Jan 2026 -
0.1.020 Jan 2026Release notes
Open source →Changelog
0.1.0
First beta release of Aim Framework - a modular ecosystem for Dart.
Highlights
- Lightweight, fast web server framework
- Native PostgreSQL driver (no external dependencies)
- Type-safe ORM with Record syntax
- CLI tools with hot reload and database migrations
Web Server (aim_server)
- HTTP server built on Dart's native
HttpServer - Path-based routing with parameter support (
/users/:id) - Composable middleware chain
- JSON, text, HTML response handling
- Real-time SSE streaming support
- Custom error handlers (404, global)
Middleware Packages
- aim_server_cors: CORS configuration
- aim_server_cookie: Secure cookie management
- aim_server_form: Form data parsing
- aim_server_multipart: File upload handling
- aim_server_static: Static file serving
- aim_server_logger: HTTP request logging
- aim_server_sse: Server-Sent Events
- aim_server_jwt: JWT authentication
- aim_server_basic_auth: Basic authentication
Testing (aim_server_testing)
- Test helpers and matchers
- Mock objects for unit testing
- Integration test utilities
Database (aim_database + aim_postgres)
- Database abstraction layer
- Native PostgreSQL Wire Protocol implementation
- SSL/TLS support (disable, allow, prefer, require, verify-ca, verify-full)
- Authentication: cleartext, MD5, SCRAM-SHA-256
- Named parameters (
:name) and positional parameters ($1) - Transaction support with automatic commit/rollback
ORM (aim_orm + aim_orm_postgres + aim_orm_codegen)
- Type-safe table definitions using Dart Record syntax
- Column types:
integer,bigint,varchar,text,boolean,timestamp,uuid,json - Column modifiers:
primaryKey,unique,nullable,withDefault,indexed - Query builders: SELECT, INSERT, UPDATE, DELETE
- Condition operators:
eq,gt,lt,gte,lte,inList - Code generation with
build_runner
CLI (aim_cli)
aim create <name>: Project scaffoldingaim dev: Development server with hot reloadaim build: Production build with native compilationaim db:generate: Migration SQL generation from schema diffaim db:migrate: Apply pending migrationsaim db:rollback: Rollback migrationsaim db:status: Show migration status
Known Limitations
- ORM Relations (1:1, 1:N, N:N) not yet supported
- SQLite driver not yet available
db:resetcommand not yet implemented
Requirements
- Dart SDK:
^3.10.0 - PostgreSQL: 9.5+ (SCRAM-SHA-256 requires 10+)
Release notes
Open source →First beta release of Aim Framework - a modular ecosystem for Dart.
Highlights
- Lightweight, fast web server framework
- Native PostgreSQL driver (no external dependencies)
- Type-safe ORM with Record syntax
- CLI tools with hot reload and database migrations
Web Server (aim_server)
- HTTP server built on Dart's native
HttpServer - Path-based routing with parameter support (
/users/:id) - Composable middleware chain
- JSON, text, HTML response handling
- Real-time SSE streaming support
- Custom error handlers (404, global)
Middleware Packages
- aim_server_cors: CORS configuration
- aim_server_cookie: Secure cookie management
- aim_server_form: Form data parsing
- aim_server_multipart: File upload handling
- aim_server_static: Static file serving
- aim_server_logger: HTTP request logging
- aim_server_sse: Server-Sent Events
- aim_server_jwt: JWT authentication
- aim_server_basic_auth: Basic authentication
Testing (aim_server_testing)
- Test helpers and matchers
- Mock objects for unit testing
- Integration test utilities
Database (aim_database + aim_postgres)
- Database abstraction layer
- Native PostgreSQL Wire Protocol implementation
- SSL/TLS support (disable, allow, prefer, require, verify-ca, verify-full)
- Authentication: cleartext, MD5, SCRAM-SHA-256
- Named parameters (
:name) and positional parameters ($1) - Transaction support with automatic commit/rollback
ORM (aim_orm + aim_orm_postgres + aim_orm_codegen)
- Type-safe table definitions using Dart Record syntax
- Column types:
integer,bigint,varchar,text,boolean,timestamp,uuid,json - Column modifiers:
primaryKey,unique,nullable,withDefault,indexed - Query builders: SELECT, INSERT, UPDATE, DELETE
- Condition operators:
eq,gt,lt,gte,lte,inList - Code generation with
build_runner
CLI (aim_cli)
aim create <name>: Project scaffoldingaim dev: Development server with hot reloadaim build: Production build with native compilationaim db:generate: Migration SQL generation from schema diffaim db:migrate: Apply pending migrationsaim db:rollback: Rollback migrationsaim db:status: Show migration status
Known Limitations
- ORM Relations (1:1, 1:N, N:N) not yet supported
- SQLite driver not yet available
db:resetcommand not yet implemented
Requirements
- Dart SDK:
^3.10.0 - PostgreSQL: 9.5+ (SCRAM-SHA-256 requires 10+)
-
0.0.126 Dec 2025Release notes
Open source →Initial release - Static file serving for Aim framework
Features
- Directory serving: Serve entire directories with
serveStatic()middleware - Path traversal protection: Built-in security against
../attacks - Dotfile protection: Prevent access to sensitive hidden files (
.env,.git, etc.) - URL prefix matching: Serve files under specific URL paths with
pathparameter - Index file support: Automatic
index.htmlserving for directory requests - Single file serving: Context extension
c.file()for serving individual files - Download support: Force file downloads with custom filenames
- MIME type detection: Automatic content-type headers for common file formats
Security
- Path normalization and validation to prevent directory traversal
- Dotfile access control with
DotFilesenum (allow/deny/ignore) - Absolute path rejection in
c.file()method - Safe path joining with the
pathpackage
Examples
import 'package:aim_server/aim_server.dart'; import 'package:aim_server_static/aim_server_static.dart'; final app = Aim(); // Basic static file serving app.use(serveStatic('./public')); // With URL prefix and index file app.use(serveStatic('./public', path: '/static', index: 'index.html', dotFiles: DotFiles.deny, )); // Single file serving app.get('/download', (c) => c.file('docs/manual.pdf', download: true)); - Directory serving: Serve entire directories with