datatug-core

module
v0.42.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2026 License: MIT

README

DataTug CLI - a command line data browser & editor

Build, Test, Vet, Lint Go Report Card Coverage Status Version GoDoc Sourcegraph

This is mostly used by https://github.com/datatug/datatug-cli.

Our approach to development

We build with our own tooling:

  • SpecScore — specify requirements as SpecScore.md artifacts
  • SpecStudio — author & manage specs across their lifecycle
  • inGitDB — store structured data in Git where applicable
  • DALgo — data access layer for Go
  • cover100.dev — drive toward 100% test coverage
  • DataTug — query & explore data

Project structure

Dependencies & Credits

CI/CD

There is a continuous integration build.

Open Source Libraries we use

  • DALgo - Database Abstraction Layer for Go
  • Bubble Tea - A Go framework for TUI apps

Contribution

Contributors wanted. For a start check issues tagged with help wanted and good first issue.

Plans for improvements & TODO integrations

Licensing

The datatug and other DataTug CLIs are free to use and source codes are open source under MIT license.

Directories

Path Synopsis
internal
jsonstrict
Package jsonstrict provides target-aware JSON key validation shared by transport and persisted event decoders.
Package jsonstrict provides target-aware JSON key validation shared by transport and persisted event decoders.
pkg
apicontract
Package apicontract holds the Go types for every shared JSON type and envelope in the core-investigation-loop Feature's normative transport appendix (spec/features/core-investigation-loop/api-contract.md, hub datatug/datatug), with the exact json:"..." field names that document declares - the schema authority datatug-cli (server) and datatug-apps (client) consume, per Phase 1 corrective Task 12.
Package apicontract holds the Go types for every shared JSON type and envelope in the core-investigation-loop Feature's normative transport appendix (spec/features/core-investigation-loop/api-contract.md, hub datatug/datatug), with the exact json:"..." field names that document declares - the schema authority datatug-cli (server) and datatug-apps (client) consume, per Phase 1 corrective Task 12.
apicontract/fixtures
Package fixtures holds the frozen JSON fixtures for pkg/apicontract's normative transport types (spec/features/core-investigation-loop/ api-contract.md, hub datatug/datatug) - one file per envelope/error case listed in the appendix's "Acceptance and migration" section.
Package fixtures holds the frozen JSON fixtures for pkg/apicontract's normative transport types (spec/features/core-investigation-loop/ api-contract.md, hub datatug/datatug) - one file per envelope/error case listed in the appendix's "Acceptance and migration" section.
datatug
Package datatug holds the DataTug project model: entities, queries, environments, boards and their validation rules.
Package datatug holds the DataTug project model: entities, queries, environments, boards and their validation rules.
dto
incidents
Package incidents defines Incidentius's store-independent incident model and deterministic event projection.
Package incidents defines Incidentius's store-independent incident model and deterministic event projection.
investigation
Package investigation owns the shared Investigation Context value model.
Package investigation owns the shared Investigation Context value model.
recordsetcompare
Package recordsetcompare provides a deterministic, pure comparison of two policy-filtered recordsets.
Package recordsetcompare provides a deterministic, pure comparison of two policy-filtered recordsets.
semantic
Package semantic resolves physical columns (a source + collection + set of scanned columns) to the entity fields a project's model says they mean.
Package semantic resolves physical columns (a source + collection + set of scanned columns) to the entity fields a project's model says they mean.
storage
Package dtprojcreator is a generated GoMock package.
Package dtprojcreator is a generated GoMock package.
storage/dalgostore
Package dalgostore implements storage.Store and datatug.ProjectStore over a caller-supplied dal.DB (dalgo-project-store plan): Store (store.go) creates, lists, opens and deletes projects in one store, and ProjectStore (this file) addresses one project in it.
Package dalgostore implements storage.Store and datatug.ProjectStore over a caller-supplied dal.DB (dalgo-project-store plan): Store (store.go) creates, lists, opens and deletes projects in one store, and ProjectStore (this file) addresses one project in it.
storage/filestore
Package filestore's query pair transaction protocol (this file) persists a query's JSON metadata and its body sidecar as one recoverable logical transaction, under the query store lock (query_lock.go):
Package filestore's query pair transaction protocol (this file) persists a query's JSON metadata and its body sidecar as one recoverable logical transaction, under the query store lock (query_lock.go):
storage/ingitdbschema
Package ingitdbschema ships DataTug's inGitDB project-store schema as static files and copies them into a store directory when a project store is initialised.
Package ingitdbschema ships DataTug's inGitDB project-store schema as static files and copies them into a store directory when a project store is initialised.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL