Source: https://seerepo.com/r/trufflesecurity/trufflehog/built
Markdown source: https://seerepo.com/r/trufflesecurity/trufflehog/built.md
Description: trufflehog is a Go repo built with github.com/charmbracelet/bubbletea.

# What is trufflehog built with?

trufflehog is a Go repo built with github.com/charmbracelet/bubbletea. It stores its data in github.com/hashicorp/golang-lru/v2 and github.com/microsoft/go-mssqldb, signs people in with golang.org/x/oauth2, github.com/golang-jwt/jwt/v5, github.com/aws/aws-sdk-go-v2/credentials, github.com/bradleyfalzon/ghinstallation/v2, and github.com/lestrrat-go/jwx/v3, watches its errors with Sentry, connects to Google, makes its content with github.com/bodgit/sevenzip and github.com/charmbracelet/glamour, validates its data with protoc-gen-validate, is tested with rapid, github.com/stretchr/testify, github.com/brianvoe/gofakeit/v7, gopkg.in/h2non/gock.v1, github.com/testcontainers/testcontainers-go, and 4 more, deploys with Prometheus, github.com/go-logr/logr, go.uber.org/zap, github.com/aws/aws-sdk-go-v2, github.com/aws/aws-sdk-go-v2/config, and 3 more, and uses MongoDB, mysql, pgx, pq, redis, and 6 more. It has 443,658 written lines, with 2,041 test files.

Read on November 8, 2026, at commit f8221ca.

Repository: https://github.com/trufflesecurity/trufflehog

## Frontend

### Styles

- **[github.com/charmbracelet/lipgloss](https://seerepo.com/uses/githubcom-charmbracelet-lipgloss)**: 14 files

### Interface

- **github.com/jedib0t/go-pretty/v6**: 43 files
- **[github.com/charmbracelet/bubbles](https://seerepo.com/uses/githubcom-charmbracelet-bubbles)**: 20 files
- **github.com/schollz/progressbar/v3**: 1 file

## Backend

### Data

- **[MongoDB](https://seerepo.com/uses/mongodb)**
- **[mysql](https://seerepo.com/uses/mysql)**
- **[pgx](https://seerepo.com/uses/pgx)**
- **[pq](https://seerepo.com/uses/pq)**
- **[redis](https://seerepo.com/uses/redis)**
- **[s3](https://seerepo.com/uses/s3)**
- **[github.com/hashicorp/golang-lru/v2](https://seerepo.com/uses/githubcom-hashicorp-golang-lru-v2)**: 2 files
- **github.com/microsoft/go-mssqldb**: 2 files
- **[github.com/aws/aws-sdk-go-v2/feature/s3/manager](https://seerepo.com/uses/githubcom-aws-aws-sdk-go-v2-feature-s3-manager)**: 1 file
- **github.com/jlaffaye/ftp**: 1 file
- **github.com/maypok86/otter/v2**: 1 file
- **[github.com/patrickmn/go-cache](https://seerepo.com/uses/githubcom-patrickmn-go-cache)**: 1 file
- **[RabbitMQ](https://seerepo.com/uses/rabbitmq)**: 1 file

### Sign-in

- **[golang.org/x/oauth2](https://seerepo.com/uses/golangorg-x-oauth2)**: 11 files
- **[github.com/golang-jwt/jwt/v5](https://seerepo.com/uses/githubcom-golang-jwt-jwt-v5)**: 8 files
- **[github.com/aws/aws-sdk-go-v2/credentials](https://seerepo.com/uses/githubcom-aws-aws-sdk-go-v2-credentials)**: 3 files
- **github.com/bradleyfalzon/ghinstallation/v2**: 1 file
- **github.com/lestrrat-go/jwx/v3**: 1 file

### Services

- **[Google](https://seerepo.com/uses/google)**: 3 files · [pkg/common/secrets.go, line 9](https://github.com/trufflesecurity/trufflehog/blob/f8221ca52ac51bf66228d6ec3691f3ea0782ae15/pkg/common/secrets.go#L9)
- **[Sentry](https://seerepo.com/uses/sentry)**: 2 files · [pkg/common/recover.go, line 9](https://github.com/trufflesecurity/trufflehog/blob/f8221ca52ac51bf66228d6ec3691f3ea0782ae15/pkg/common/recover.go#L9)

## Support

### The base

- **[github.com/charmbracelet/bubbletea](https://seerepo.com/uses/githubcom-charmbracelet-bubbletea)**: 25 files

### Content

- **github.com/bodgit/sevenzip**: 1 file
- **github.com/charmbracelet/glamour**: 1 file

### Validation

- **protoc-gen-validate**

### Testing

- **rapid**
- **github.com/stretchr/testify**: 266 files
- **github.com/brianvoe/gofakeit/v7**: 11 files
- **gopkg.in/h2non/gock.v1**: 10 files
- **github.com/testcontainers/testcontainers-go**: 6 files
- **github.com/testcontainers/testcontainers-go/modules/mysql**: 3 files
- **github.com/testcontainers/testcontainers-go/modules/postgres**: 2 files
- **github.com/testcontainers/testcontainers-go/modules/mongodb**: 1 file
- **go.uber.org/mock**: 1 file

### Deploy

- **[Prometheus](https://seerepo.com/uses/prometheus)**: 17 files
- **[github.com/go-logr/logr](https://seerepo.com/uses/githubcom-go-logr-logr)**: 12 files
- **[go.uber.org/zap](https://seerepo.com/uses/gouberorg-zap)**: 6 files
- **[github.com/aws/aws-sdk-go-v2](https://seerepo.com/uses/githubcom-aws-aws-sdk-go-v2)**: 4 files
- **[github.com/aws/aws-sdk-go-v2/config](https://seerepo.com/uses/githubcom-aws-aws-sdk-go-v2-config)**: 3 files
- **[github.com/aws/aws-sdk-go-v2/service/sts](https://seerepo.com/uses/githubcom-aws-aws-sdk-go-v2-service-sts)**: 2 files
- **github.com/go-logr/zapr**: 2 files
- **[github.com/moby/moby/client](https://seerepo.com/uses/githubcom-moby-moby-client)**: 1 file

### Tools

- **github.com/alecthomas/kingpin/v2**: 3 files
- **github.com/aws/smithy-go**: 2 files
- **github.com/felixge/fgprof**: 1 file

### Other

- **github.com/wasilibs/go-re2**: 945 files
- **github.com/kylelemons/godebug**: 733 files
- **github.com/fatih/color**: 50 files
- **google.golang.org/protobuf**: 37 files
- **golang.org/x/sync**: 16 files
- **github.com/go-git/go-git/v5**: 15 files
- **github.com/go-errors/errors**: 14 files
- **github.com/shurcooL/githubv4**: 9 files
- **golang.org/x/crypto**: 6 files
- **github.com/gobwas/glob**: 5 files
- **golang.org/x/time**: 4 files
- **[HashiCorp](https://seerepo.com/uses/hashicorp)**: 4 files
- **github.com/pkg/errors**: 3 files
- **golang.org/x/net**: 3 files
- **golang.org/x/text**: 3 files
- **github.com/BobuSumisu/aho-corasick**: 2 files
- **github.com/google/uuid**: 2 files
- **github.com/mholt/archives**: 2 files
- **github.com/muesli/reflow**: 2 files
- **github.com/adrg/strutil**: 1 file
- **github.com/dustin/go-humanize**: 1 file
- **github.com/gabriel-vasile/mimetype**: 1 file
- **github.com/google/go-containerregistry**: 1 file
- **github.com/googleapis/gax-go/v2**: 1 file
- **github.com/joho/godotenv**: 1 file
- **github.com/klauspost/compress**: 1 file
- **github.com/klauspost/pgzip**: 1 file
- **github.com/mattn/go-isatty**: 1 file
- **github.com/mitchellh/go-ps**: 1 file
- **github.com/paulbellamy/ratecounter**: 1 file
- **github.com/sassoftware/go-rpmutils**: 1 file
- **github.com/sergi/go-diff**: 1 file
- **github.com/ulikunitz/xz**: 1 file
- **gitlab.com/gitlab-org/api/client-go**: 1 file
- **gopkg.in/yaml.v2**: 1 file
- **gopkg.in/yaml.v3**: 1 file
- **sigs.k8s.io/yaml**: 1 file
- **Uber**: 1 file

## Other repos with a similar stack

- [seaweedfs/seaweedfs](https://seerepo.com/r/seaweedfs/seaweedfs/built): MongoDB, MySQL, pgx, s3, github.com/hashicorp/golang-lru/v2, RabbitMQ, Google, Sentry, github.com/schollz/progressbar/v3, golang.org/x/oauth2, github.com/golang-jwt/jwt/v5, github.com/aws/aws-sdk-go-v2/credentials, Prometheus, github.com/aws/aws-sdk-go-v2, github.com/aws/aws-sdk-go-v2/config, github.com/aws/aws-sdk-go-v2/service/sts · [Compare](https://seerepo.com/compare/seaweedfs/seaweedfs/vs/trufflesecurity/trufflehog)
- [hashicorp/vault](https://seerepo.com/r/hashicorp/vault/built): MongoDB, MySQL, pgx, s3, github.com/hashicorp/golang-lru/v2, github.com/patrickmn/go-cache, Google, golang.org/x/oauth2, github.com/golang-jwt/jwt/v5, github.com/aws/aws-sdk-go-v2/credentials, Prometheus, github.com/aws/aws-sdk-go-v2, github.com/aws/aws-sdk-go-v2/config, github.com/aws/aws-sdk-go-v2/service/sts, github.com/moby/moby/client · [Compare](https://seerepo.com/compare/hashicorp/vault/vs/trufflesecurity/trufflehog)
- [infiniflow/ragflow](https://seerepo.com/r/infiniflow/ragflow/built): MySQL, pgx, pq, Redis, s3, Google, golang.org/x/oauth2, github.com/golang-jwt/jwt/v5, github.com/aws/aws-sdk-go-v2/credentials, go.uber.org/zap, github.com/aws/aws-sdk-go-v2, github.com/aws/aws-sdk-go-v2/config, github.com/aws/aws-sdk-go-v2/service/sts · [Compare](https://seerepo.com/compare/infiniflow/ragflow/vs/trufflesecurity/trufflehog)
- [vxcontrol/pentagi](https://seerepo.com/r/vxcontrol/pentagi/built): pgx, pq, Google, github.com/charmbracelet/bubbletea, github.com/charmbracelet/lipgloss, github.com/charmbracelet/bubbles, golang.org/x/oauth2, github.com/golang-jwt/jwt/v5, github.com/aws/aws-sdk-go-v2/credentials, github.com/charmbracelet/glamour, github.com/aws/aws-sdk-go-v2, github.com/aws/aws-sdk-go-v2/config, github.com/moby/moby/client · [Compare](https://seerepo.com/compare/trufflesecurity/trufflehog/vs/vxcontrol/pentagi)
- [pingcap/tidb](https://seerepo.com/r/pingcap/tidb/built): MySQL, s3, github.com/aws/aws-sdk-go-v2/feature/s3/manager, Google, github.com/jedib0t/go-pretty/v6, golang.org/x/oauth2, github.com/aws/aws-sdk-go-v2/credentials, Prometheus, go.uber.org/zap, github.com/aws/aws-sdk-go-v2, github.com/aws/aws-sdk-go-v2/config, github.com/aws/aws-sdk-go-v2/service/sts · [Compare](https://seerepo.com/compare/pingcap/tidb/vs/trufflesecurity/trufflehog)
- [projectdiscovery/nuclei](https://seerepo.com/r/projectdiscovery/nuclei/built): MongoDB, MySQL, pq, s3, github.com/microsoft/go-mssqldb, github.com/aws/aws-sdk-go-v2/feature/s3/manager, github.com/maypok86/otter/v2, golang.org/x/oauth2, github.com/aws/aws-sdk-go-v2/credentials, github.com/charmbracelet/glamour, github.com/aws/aws-sdk-go-v2, github.com/aws/aws-sdk-go-v2/config · [Compare](https://seerepo.com/compare/projectdiscovery/nuclei/vs/trufflesecurity/trufflehog)

## Frequently asked questions

### What language is trufflehog written in?

trufflehog is written in Go, with 443,658 written lines.

### What framework does trufflehog use?

trufflehog is built with github.com/charmbracelet/bubbletea.

### What database does trufflehog use?

trufflehog stores its data in github.com/hashicorp/golang-lru/v2 and github.com/microsoft/go-mssqldb.

### What does trufflehog sign people in with?

trufflehog signs people in with golang.org/x/oauth2, github.com/golang-jwt/jwt/v5, github.com/aws/aws-sdk-go-v2/credentials, github.com/bradleyfalzon/ghinstallation/v2, and github.com/lestrrat-go/jwx/v3.

### What services does trufflehog use?

trufflehog watches its errors with Sentry, connects to Google, and uses MongoDB, mysql, pgx, pq, redis, s3, github.com/aws/aws-sdk-go-v2/feature/s3/manager, github.com/jlaffaye/ftp, github.com/maypok86/otter/v2, github.com/patrickmn/go-cache, and RabbitMQ.

The proof: [pkg/common/recover.go, line 9](https://github.com/trufflesecurity/trufflehog/blob/f8221ca52ac51bf66228d6ec3691f3ea0782ae15/pkg/common/recover.go#L9)

### Does trufflehog have tests?

Yes. trufflehog has 2,041 test files and is tested with rapid, github.com/stretchr/testify, github.com/brianvoe/gofakeit/v7, gopkg.in/h2non/gock.v1, github.com/testcontainers/testcontainers-go, github.com/testcontainers/testcontainers-go/modules/mysql, github.com/testcontainers/testcontainers-go/modules/postgres, github.com/testcontainers/testcontainers-go/modules/mongodb, and go.uber.org/mock.

### Which repos have a stack like trufflehog's?

The ones that share most of its stack: seaweedfs/seaweedfs, hashicorp/vault, and infiniflow/ragflow.

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
