Versions in this module Expand all Collapse all v0 v0.6.1 Jan 19, 2026 Changes in this version + func HealthMiddleware(hc *HealthChecker) func(next func()) func() + func RunSeeder(db *sql.DB, seeder Seeder) error + type BaseSeeder struct + TableName string + func (bs *BaseSeeder) BulkInsert(db *sql.DB, data []map[string]interface{}) error + func (bs *BaseSeeder) DropAndRecreateTable(db *sql.DB, createSQL string) error + func (bs *BaseSeeder) TruncateTable(db *sql.DB) error + type ConnectionMonitor struct + func NewConnectionMonitor(db *sql.DB, maxConnections int, warningThreshold float64) *ConnectionMonitor + func (cm *ConnectionMonitor) GetConnectionStats() *ConnectionStats + func (cm *ConnectionMonitor) OptimizeConnections() []string + type ConnectionStats struct + Idle int + InUse int + MaxIdleConnections int + MaxIdleTime string + MaxLifetime string + MaxOpenConnections int + OpenConnections int + UtilizationPercent float64 + Warning string + type DB interface + Exec func(query string, args ...interface{}) (sql.Result, error) + Prepare func(query string) (*sql.Stmt, error) + Query func(query string, args ...interface{}) (*sql.Rows, error) + QueryRow func(query string, args ...interface{}) *sql.Row + type Factory struct + func NewFactory() *Factory + func (f *Factory) Create(count int, template map[string]interface{}) *Factory + func (f *Factory) CreateOne(record map[string]interface{}) *Factory + func (f *Factory) GetData() []map[string]interface{} + func (f *Factory) Insert(db *sql.DB, tableName string) error + type Faker struct + func NewFaker() *Faker + func (fake *Faker) Boolean() func(int) interface{} + func (fake *Faker) Email() func(int) interface{} + func (fake *Faker) Name() func(int) interface{} + func (fake *Faker) Now() interface{} + func (fake *Faker) RandomInt(min, max int) func(int) interface{} + func (fake *Faker) Sequence(format string) func(int) interface{} + type HealthChecker struct + func NewHealthChecker(db *sql.DB, timeout time.Duration) *HealthChecker + func (hc *HealthChecker) Check(ctx context.Context) *HealthStatus + func (hc *HealthChecker) IsHealthy(ctx context.Context) bool + func (hc *HealthChecker) MonitorHealth(ctx context.Context, interval time.Duration, callback func(*HealthStatus)) + func (hc *HealthChecker) QuickCheck(ctx context.Context) error + func (hc *HealthChecker) WaitForHealthy(ctx context.Context, maxWait time.Duration) error + type HealthStatus struct + Checks map[string]string + ConnectionsIdle int + ConnectionsInUse int + ConnectionsOpen int + DatabaseType string + Errors []string + MaxConnections int + ResponseTime time.Duration + Status string + Timestamp time.Time + Version string + type Model struct + func NewModel(table string) *Model + func (m *Model) All(db *sql.DB) (*sql.Rows, error) + func (m *Model) Create(db *sql.DB, data map[string]interface{}) (sql.Result, error) + func (m *Model) Delete(db *sql.DB, id interface{}) (sql.Result, error) + func (m *Model) Find(db *sql.DB, id interface{}) *sql.Row + func (m *Model) HasSoftDelete() bool + func (m *Model) PrimaryKey() string + func (m *Model) Query(db *sql.DB) *QueryBuilder + func (m *Model) Table() string + func (m *Model) Update(db *sql.DB, id interface{}, data map[string]interface{}) (sql.Result, error) + func (m *Model) WithPrimaryKey(pk string) *Model + func (m *Model) WithSoftDelete() *Model + type QueryBuilder struct + func Active(qb *QueryBuilder) *QueryBuilder + func Draft(qb *QueryBuilder) *QueryBuilder + func NewQueryBuilder(db *sql.DB) *QueryBuilder + func Oldest(qb *QueryBuilder) *QueryBuilder + func Published(qb *QueryBuilder) *QueryBuilder + func Recent(qb *QueryBuilder) *QueryBuilder + func (qb *QueryBuilder) BelongsTo(relatedTable, foreignKey string, fkValue interface{}) *QueryBuilder + func (qb *QueryBuilder) Chunk(size int, fn func(rows *sql.Rows) bool) error + func (qb *QueryBuilder) ChunkByID(size int, column string, fn func(rows *sql.Rows) bool) error + func (qb *QueryBuilder) Count() (int64, error) + func (qb *QueryBuilder) Delete() (sql.Result, error) + func (qb *QueryBuilder) Exists() (bool, error) + func (qb *QueryBuilder) First() *sql.Row + func (qb *QueryBuilder) ForceDelete() (sql.Result, error) + func (qb *QueryBuilder) Get() (*sql.Rows, error) + func (qb *QueryBuilder) GroupBy(columns ...string) *QueryBuilder + func (qb *QueryBuilder) HasMany(relatedTable, foreignKey string, id interface{}) *QueryBuilder + func (qb *QueryBuilder) Having(column, operator string, value interface{}) *QueryBuilder + func (qb *QueryBuilder) Insert(data map[string]interface{}) (sql.Result, error) + func (qb *QueryBuilder) Join(table, on string) *QueryBuilder + func (qb *QueryBuilder) LeftJoin(table, on string) *QueryBuilder + func (qb *QueryBuilder) Limit(count int) *QueryBuilder + func (qb *QueryBuilder) Offset(count int) *QueryBuilder + func (qb *QueryBuilder) OnlyTrashed() *QueryBuilder + func (qb *QueryBuilder) OrWhere(column, operator string, value interface{}) *QueryBuilder + func (qb *QueryBuilder) OrderBy(column, direction string) *QueryBuilder + func (qb *QueryBuilder) Paginate(page, perPage int) *QueryBuilder + func (qb *QueryBuilder) Raw(query string, params ...interface{}) (*sql.Rows, error) + func (qb *QueryBuilder) RawExec(query string, params ...interface{}) (sql.Result, error) + func (qb *QueryBuilder) Restore() (sql.Result, error) + func (qb *QueryBuilder) RightJoin(table, on string) *QueryBuilder + func (qb *QueryBuilder) Scope(scopes ...Scope) *QueryBuilder + func (qb *QueryBuilder) Select(columns ...string) *QueryBuilder + func (qb *QueryBuilder) SoftDelete() (sql.Result, error) + func (qb *QueryBuilder) Table(table string) *QueryBuilder + func (qb *QueryBuilder) ToSQL() (string, []interface{}, error) + func (qb *QueryBuilder) Transaction(fn func(tx *QueryBuilder) error) error + func (qb *QueryBuilder) Union(query *QueryBuilder) *QueryBuilder + func (qb *QueryBuilder) UnionAll(query *QueryBuilder) *QueryBuilder + func (qb *QueryBuilder) Update(data map[string]interface{}) (sql.Result, error) + func (qb *QueryBuilder) Where(column, operator string, value interface{}) *QueryBuilder + func (qb *QueryBuilder) WhereBetween(column string, start, end interface{}) *QueryBuilder + func (qb *QueryBuilder) WhereIn(column string, values []interface{}) *QueryBuilder + func (qb *QueryBuilder) WhereNotNull(column string) *QueryBuilder + func (qb *QueryBuilder) WhereNull(column string) *QueryBuilder + func (qb *QueryBuilder) WithTrashed() *QueryBuilder + type Scope func(*QueryBuilder) *QueryBuilder + type Seeder interface + Run func(db *sql.DB) error + type SeederRegistry struct + func CreateSeederRegistry() *SeederRegistry + func NewSeederRegistry() *SeederRegistry + func (sr *SeederRegistry) ListSeeders() []string + func (sr *SeederRegistry) Register(name string, seeder Seeder) + func (sr *SeederRegistry) Run(db *sql.DB, name string) error + func (sr *SeederRegistry) RunAll(db *sql.DB) error + type TxBeginner interface + Begin func() (*sql.Tx, error) + type UserSeeder struct + func NewUserSeeder() *UserSeeder + func (us *UserSeeder) Run(db *sql.DB) error