Desktop Insights
  • Apps
  • Tech
  • Statistics
  • Documentation
  • Pricing
Sign InSign Up
Home/Apps/Testfully

Testfully

by Matthew Valley

NotablemacOSgov1.187.0
Available onHomebrew
Runtime
go
Size
193 MB
Architecture
Universal (Apple Silicon + Intel)
Dependencies
943
26 categories
Last Updated
Apr 14, 2026
Security
Excellent
Signed, notarized, hardened

Testfully is a go app (v1.187.0) that uses 943 detected dependencies across 26 categories including Networking, File System, Auth. It is code-signed and notarized. 193 MB on macOS (Universal (Apple Silicon + Intel)). Last updated April 14, 2026. Last verified May 2026.

What is Testfully built with?

943 detected dependencies across 26 categories.

Networking

14
h2pgurl (Rust)gRPChttphyperreqwesthttp-bodyiri-stringnotify-rustcookie_storehttp-body-utilaws-smithy-httpaws-smithy-http-client

Sign up to see Networking details

Sign Up Free

File System

4
cfbglobinfermime_guess

Sign up to see File System details

Sign Up Free

Auth

2
jsonwebtokenoauth2

Sign up to see Auth details

Sign Up Free

Data Structure

7
phfslabfoldhashindexmapsmallvechashbrowngeneric-array

Sign up to see Data Structure details

Sign Up Free

Security

2
sctrustls-native-certs

Sign up to see Security details

Sign Up Free

Desktop Framework

1
Tauri

Sign up to see Desktop Framework details

Sign Up Free

Compression

7
tar (Rust)zipflate2zstd-safecompression-corecompression-codecsBrotli

Sign up to see Compression details

Sign Up Free

Parser

16
atoiyamlplist (Rust)regex (Rust)cookiememchrprettyquick-xmluntrustedxmlparserhttp-rangeaho-corasickaws-smithy-xmli18naws-smithy-jsonform_urlencoded

Sign up to see Parser details

Sign Up Free

Logging

3
fernloggertracing

Sign up to see Logging details

Sign Up Free

Build Tool

3
git2libssh2-sysaws-smithy-types

Sign up to see Build Tool details

Sign Up Free

Encoding

5
idnamimebase64encoding_rspercent-encoding

Sign up to see Encoding details

Sign Up Free

Platform Binding

13
objccocoa (Rust)objc2objc_idos_infoos_pipedispatch (Rust)objc_exceptioncore-foundationobjc-foundationmac-notification-syssignal-hook-registrysystem-configuration

Sign up to see Platform Binding details

Sign Up Free

Utility

8
openspinuuidanyhowsemverbackoffonce_cellinflection

Sign up to see Utility details

Sign Up Free

Cryptography

10
randRingsha2rustlsOpenSSLfastrandnative-tlsaws-sdk-ssominisign-verifysecurity-framework

Sign up to see Cryptography details

Sign Up Free

CLI

2
termkeyring

Sign up to see CLI details

Sign Up Free

Date & Time

2
time (Rust)chrono

Sign up to see Date & Time details

Sign Up Free

I/O

7
wantbytesipnetsocket2httparseaws-sigv4bytes-utils

Sign up to see I/O details

Sign Up Free

Async Runtime

12
flumestateTokioparkingparking_lotatomic-wakerfutures-rsshared_childevent-listenercrossbeamaws-smithy-asyncfutures-intrusive

Sign up to see Async Runtime details

Sign Up Free

Serialization

5
serdeMessagePackProtocol BuffersSmithy (AWS)serialize-to-javascript

Sign up to see Serialization details

Sign Up Free

Web Server

1
Tower

Sign up to see Web Server details

Sign Up Free

Database

3
SQLitesqlx-coresqlx-sqlite

Sign up to see Database details

Sign Up Free

Cloud

10
AWS SDKaws-lc-rsaws-typesaws-configaws-runtimeaws-sdk-stsaws-sdk-ssooidcaws-smithy-runtimeaws-credential-typesaws-smithy-runtime-api

Sign up to see Cloud details

Sign Up Free

Internationalization

2
localessys-locale

Sign up to see Internationalization details

Sign Up Free

Validation

1
validator.js

Sign up to see Validation details

Sign Up Free

Observability

1
OpenTelemetry

Sign up to see Observability details

Sign Up Free

Other

771
dbapicfgenvexpmsgmxjnetrfdrpcs2asdksysauthcoreerrxlogrotelsafesaslscimslugstdrsynctextulidwireerrgogjsonmatchoncerpackdpackrrestytracetypescommoncryptodynamogax-gogo-hexgo-urngo-yitlogrusmetricparsers2a-gobufpoollibgit2libssh2parsersrandomszerologgodotenvjwt.initlogr.Newmetadataoncer.Dootelhttpstdr.Newdynamo.DBgjson.Getgo-isattygodirwalkhttpsnooplogr.sinkmultipartrand_coresafe.RunEslug.Makeslug.initstripe-gotagparserunidecodeuuid.Mustuuid.inituuid.xtobaws-sdk-godynamo.Newgjson.trimgo-urn.URNjwt.init.0jwt.init.1jwt.init.2jwt.init.3jwt.init.4jwt.init.5libopenapilogger.Newlogr.levellogrus.Newoncer.initoptimus-gouuid.NewV4uuid.Parsebufpool.Getbufpool.Putdynamo.Keysdynamo.initerrx.Unwrapgjson.Parsegjson.Validgjson.tolitgjson.tonumgjson.tostrgo-jmespathgo-yit.initlogr.Loggerlogrus.initmatch.matchoauth2adaptpretty.hexppretty.uglyrand_chachaslug.init.0uuid.NewGenzerocheckerzerolog.Arrzerolog.Newzerolog.Nopaws-sdk-rustbufpool.lockdynamo.Batchdynamo.Tabledynamo.retrygjson.Escapegjson.init.0gjson.modDiggjson.runeitgjson.squashgjson.unwrapgo-colorablego-pluralizego-urn.Parselogr.LogSinkmapstructurepackd.NewDirxsd-datetimezerolog.Dictzerolog.initbufpool.indexdynamo.isZerodynamo.lekifydynamo.ltIterdynamo.typeOffilter-parsergjson.cleanWSgjson.modJoingjson.modKeysgjson.modThisgjson.modUglygjson.nullishgjson.safeIntgjson.trueishgo-hex.Decodego-hex.Encodegodotenv.Loadgodotenv.initlogrus.init.0logrus.init.1logrus.init.2packd.NewFilepretty.Prettypretty.init.0slug.MakeLangtauri-runtimeyaml-jsonpathApollo GraphQLbufpool.unlockdynamo.marshalgjson.falseishgjson.modGroupgjson.modToStrgjson.modValidgjson.parseAnygjson.parseIntgjson.unescapegjson.validanygodirwalk.Walkgodirwalk.initgodotenv.Parseoptimus-go.Newpackd.fileInfozerolog.init.0zerolog.init.1dynamo.av2ifacedynamo.canRetrydynamo.wrapExprgjson.fillIndexgjson.modPrettygjson.modValuesgjson.parseUintgjson.revSquashgjson.validnullgjson.validtruego-yit.FromNodego-yit.WithKindlogrus.NewEntryoncer.Deprecatepackd.buildFilepretty.getjtypepretty.parsestrsafe.RunE.func1slug.Substituteslug.map.init.0slug.map.init.1slug.map.init.2slug.map.init.3slug.map.init.4slug.map.init.5slug.map.init.6tagparser.Parseuuid.FromStringuuid.UUID.Bytesuuid.UUID.IsNiluuid.UUID.Valueuuid.toUpperHexGoogle Cloud SDKdynamo.Batch.Getdynamo.Table.Getdynamo.Table.Putdynamo.UpdateTTLdynamo.fieldInfodynamo.newBGIterdynamo.tagLookupgjson.ParseBytesgjson.Result.Getgjson.Result.Intgjson.Result.Mapgjson.execStaticgjson.matchLimitgjson.modFlattengjson.modFromStrgjson.modReversegjson.nameOfLastgjson.parseArraygjson.parseQuerygjson.validarraygjson.validcolongjson.validcommagjson.validfalsego-hex.RawEncodego-hex.decodeAVXgo-hex.decodeSSEgo-hex.encodeAVXgo-hex.encodeSSEgo-jmespath.initgo-yit.FromNodesgo-yit.Intersectgodirwalk.Direntgodirwalk.reclenjwt.init.0.func1jwt.init.0.func2jwt.init.0.func3jwt.init.1.func1jwt.init.2.func1jwt.init.2.func2jwt.init.2.func3jwt.init.3.func1jwt.init.4.func1jwt.init.4.func2jwt.init.4.func3jwt.init.5.func1jwt.init.5.func2jwt.init.5.func3logrus.MutexWraplogrus.getCallermatch.MatchLimitpretty.sortPairsstdr.logger.Infouuid.UUID.Formatuuid.UUID.Stringuuid.fromHexCharuuid.newFromHashzerochecker.initzerolog.newEventzerolog.putArrayzerolog.putEventasync-compressionbufpool.NewBufferbufpool.indexSizebufpool.prevIndexdynamo.Table.Namedynamo.Table.Scandynamo.Table.Waitdynamo.avTypeNamedynamo.encodeNamedynamo.map.init.0dynamo.marshalSetdynamo.schemaKeysgjson.Result.Boolgjson.Result.Lessgjson.Result.Pathgjson.Result.Timegjson.Result.Uintgjson.Type.Stringgjson.appendHex16gjson.parseNumbergjson.parseObjectgjson.parseSquashgjson.parseStringgjson.stringBytesgjson.subSelectorgjson.validnumbergjson.validobjectgjson.validstringgo-hex.DecodedLengo-hex.EncodedLengo-jmespath.slicego-jmespath.tokengo-pluralize.Rulego-urn.NewMachinegodotenv.loadFilegodotenv.readFileinflection.Pluralinflection.init.0jwt.DecodeSegmentjwt.EncodeSegmentlogrus.ParseLevellogrus.isTerminallogrus.runHandlerpretty.appendTabspretty.isNaNOrInfstdr.logger.Errortagparser.Unquoteuuid.UUID.Variantuuid.UUID.Versionzerochecker.isNildynamo.Batch.Writedynamo.DeleteTabledynamo.DescribeTTLdynamo.Table.Batchdynamo.Table.Checkdynamo.marshalItemgjson.Result.Arraygjson.Result.Floatgjson.Result.Pathsgjson.Result.Valuegjson.execModifiergjson.isSimpleNamegjson.parseLiteralgjson.queryMatchesgjson.validpayloadgo-hex.fromHexChargo-jmespath.Searchgo-jmespath.jpTypego-jmespath.jpfAbsgo-jmespath.jpfAvggo-jmespath.jpfMapgo-jmespath.jpfMaxgo-jmespath.jpfMingo-jmespath.jpfSumgodirwalk.modeTypegodotenv.parseLineinflection.compilelogger.Logrus.Infologger.Logrus.Warnlogrus.runHandlerspackd.NewMemoryBoxpackd.fileInfo.Sysslug.smartTruncatezerolog.ParseLevelzerolog.appendCBORzerolog.appendJSONzerolog.callerHookzerolog.init.func1zerolog.init.func3zerolog.init.func4zerolog.init.func5zerolog.init.func6zerolog.init.func7zerolog.isNilValuedynamo.Keys.HashKeydynamo.Table.Deletedynamo.Table.Updatedynamo.lookupADTypegjson.Result.Existsgjson.Result.IsBoolgjson.Result.Stringgjson.modJoin.func1gjson.modJoin.func2gjson.modJoin.func3gjson.modKeys.func1go-jmespath.isFalsego-jmespath.jpfCeilgo-jmespath.jpfJoingo-jmespath.jpfKeysgo-jmespath.jpfSortgo-jmespath.jpfTypego-pluralize.isExprgo-yit.WithShortTaggodotenv.parseValuejwt.ValidationErrorlibopenapi.documentlogger.Logrus.Debuglogger.Logrus.Errorlogger.Logrus.Fatallogger.Logrus.Infoflogger.Logrus.Paniclogger.Logrus.Printlogger.Logrus.Warnflogrus.Level.Stringlogrus.init.0.func1mapstructure.Decodepackd.fileInfo.Modepackd.fileInfo.Namepackd.fileInfo.Sizepretty.init.0.func1slug.SubstituteRunestdr.NewWithOptionsstdr.logger.Enabledunidecode.Unidecodeuuid.NewGenWithHWAFuuid.WithHWAddrFunczerochecker.Checkerzerolog.Context.Anyzerolog.Context.Ctxzerolog.Context.Durzerolog.Context.Errzerolog.Context.Hexzerolog.Context.Intzerolog.Context.Strzerolog.GlobalLevelzerolog.Logger.Hookzerolog.Logger.Withdynamo.DescribeTabledynamo.Keys.RangeKeydynamo.lookupSSETypedynamo.marshalStructdynamo.newThroughputdynamo.unmarshalItemgjson.Result.ForEachgjson.Result.IsArraygjson.isDotPiperChargjson.modGroup.func1gjson.parseArrayPathgo-hex.decodeGenericgo-hex.encodeGenericgo-jmespath.NewLexergo-jmespath.capSlicego-jmespath.jpfFloorgo-jmespath.jpfMaxBygo-jmespath.jpfMergego-jmespath.jpfMinBygo-yit.FromIteratorsgodirwalk.NewScannerjwt.SigningMethodRSAlogger.Logrus.Debugflogger.Logrus.Errorflogger.Logrus.Fatalflogger.Logrus.Infolnlogger.Logrus.Panicflogger.Logrus.Printflogger.Logrus.Warnlnlogger.textFormatterlogrus.SetBufferPoolmapstructure.getKindpackd.fileInfo.IsDirpretty.PrettyOptionsstdr.logger.GetDepthstdr.logger.WithNameuniversal-translatoruuid.encodeCanonicalzerolog.Context.Boolzerolog.Context.Dictzerolog.Context.Durszerolog.Context.Errszerolog.Context.Int8zerolog.Context.Intszerolog.Context.Strszerolog.Context.Timezerolog.Context.Typezerolog.Context.Uintzerolog.Level.Stringzerolog.Logger.Levelzerolog.Logger.Writezerolog.appendFieldszerolog.init.1.func1dynamo.SSEDescriptiondynamo.TTLDescriptiondynamo.Table.Describedynamo.defaultContextdynamo.fieldsInStructdynamo.keyTypeFromTagdynamo.marshalItemMapdynamo.marshalReflectdynamo.newDescriptiondynamo.sortKeySchemasdynamo.unmarshalSlicedynamo.wrapExpr.func1gjson.Result.IsObjectgjson.modJoin.func3.1gjson.modPretty.func1gjson.modValues.func1gjson.parseObjectPathgo-jmespath.NewParsergo-jmespath.jpfLengthgo-jmespath.jpfSortBygo-jmespath.jpfValuesgo-jmespath.objsEqualgodirwalk.Dirent.Namegodirwalk.Dirents.Lengodirwalk.readDirentsinflection.inflectionjwt.SigningMethodHMAClogger.Logrus.Debuglnlogger.Logrus.Errorlnlogger.Logrus.Fatallnlogger.Logrus.Paniclnlogger.Logrus.Printlnlogger.Logrus.Warninglogrus.LevelHooks.Addlogrus.getPackageNamematch.matchTrimSuffixuuid.UUID.MarshalTextzerochecker.isZeroIntzerochecker.isZeroLenzerolog.Context.AnErrzerolog.Context.Arrayzerolog.Context.Boolszerolog.Context.Byteszerolog.Context.Int16zerolog.Context.Int32zerolog.Context.Int64zerolog.Context.Ints8zerolog.Context.Resetzerolog.Context.Stackzerolog.Context.Timeszerolog.Context.Uint8zerolog.Context.Uintszerolog.Logger.Outputzerolog.Logger.Samplezerolog.timestampHookaws-sdk-secretsmanagerdynamo.Table.UpdateTTLdynamo.unmarshalAppendgjson.AppendJSONStringgjson.modFlatten.func1gjson.modFlatten.func2gjson.modGroup.func1.1gjson.modReverse.func1gjson.modReverse.func2gjson.parseArray.func1go-jmespath.jpfNotNullgo-jmespath.jpfReversego-jmespath.jpfToArraygo-jmespath.map.init.0go-jmespath.map.init.1go-jmespath.toArrayNumgo-jmespath.toArrayStrgo-pluralize.NewClientgodirwalk.Dirent.IsDirgodirwalk.Dirents.Lessgodirwalk.Dirents.Swapgodotenv.isIgnoredLinejwt.NewValidationErrorjwt.SigningMethodECDSAlibopenapi.NewDocumentlogger.Logrus.Warningflogger.checkIfTerminallogrus.Entry.HasCallerlogrus.LevelHooks.Firelogrus.checkIfTerminallogrus.getCaller.func1logrus.writerFinalizerpackd.fileInfo.ModTimepackd.virtualFile.Namepackd.virtualFile.Statpretty.appendPrettyAnystdr.logger.FormatInfostdr.logger.WithValuesuuid.NewGenWithOptionsuuid.defaultHWAddrFunczerochecker.isZeroBoolzerochecker.isZeroUintzerolog.Context.Callerzerolog.Context.Fieldszerolog.Context.IPAddrzerolog.Context.Ints16zerolog.Context.Ints32zerolog.Context.Ints64zerolog.Context.Loggerzerolog.Context.Objectzerolog.Context.Uint16zerolog.Context.Uint32zerolog.Context.Uint64zerolog.Context.Uints8zerolog.SetGlobalLeveldynamo.Description.keysdynamo.isResponsesEmptydynamo.unmarshalReflectgjson.Result.arrayOrMapgjson.isSafePathKeyChargjson.parseSubSelectorsgjson.splitPossiblePipego-jmespath.SyntaxErrorgo-jmespath.isSliceTypego-jmespath.jpfContainsgo-jmespath.jpfEndsWithgo-jmespath.jpfToNumbergo-jmespath.jpfToStringgo-jmespath.tokensOneOfgo-yit.Iterator.ToArraygodirwalk.inoFromDirentlogger.Logrus.SetOutputlogger.Logrus.Warninglnlogger.Logrus.WithErrorlogger.Logrus.WithFieldlogrus.FieldMap.resolvelogrus.runHandler.func1mapstructure.NewDecoderstdr.logger.FormatErroruuid.UUID.MarshalBinaryzerochecker.isZeroByteszerochecker.isZeroFalsezerochecker.isZeroFloatzerolog.Context.Float32zerolog.Context.Float64zerolog.Context.MACAddrzerolog.Context.RawJSONzerolog.Context.Uints16zerolog.Context.Uints32zerolog.Context.Uints64zerolog.Logger.GetLevelzerolog.appendFieldListdynamo.IsCondCheckFaileddynamo.Table.DeleteTabledynamo.Table.DescribeTTLdynamo.Table.UpdateTabledynamo.Table.primaryKeysdynamo.createIndexActiongjson.Result.Paths.func1godirwalk.nameFromDirentgodotenv.expandVariableslogger.Logrus.WithFieldslogrus.Level.MarshalTextpackd.virtualFile.Stringuniversal-translator.Newzerolog.Context.Floats32zerolog.Context.Floats64zerolog.Context.IPPrefixzerolog.Context.Stringerzerolog.samplingDisableddynamo.Description.Activedynamo.marshalSliceNoOmitdynamo.unmarshalAppendAWSgo-jmespath.jpfStartsWithgo-pluralize.sanitizeRulegodirwalk.Dirent.IsDevicegodirwalk.Dirent.ModeTypegodotenv.parseValue.func1jwt.RegisterSigningMethodjwt.ValidationError.Errorlocales.PluralRule.Stringlogger.prefixFieldClasheslogrus.prefixFieldClashesmapstructure.appendErrorsmapstructure.isEmptyValueoptimus-go.Optimus.Decodeoptimus-go.Optimus.Encodepackd.virtualFile.Readdirpretty.appendPrettyNumberpretty.appendPrettyObjectpretty.appendPrettyStringstdr.logger.GetUnderlyingstdr.logger.WithCallDepthzerolog.Context.Interfacezerolog.Context.Timestampzerolog.Level.MarshalTextdynamo.addConsumedCapacitydynamo.newIdempotencyTokengo-jmespath.ASTNode.Stringgo-jmespath.newInterpretergo-jmespath.tokType.Stringgo-yit.FromIterators.func1go-yit.init.WithKind.func3godirwalk.Dirent.IsRegulargodirwalk.Dirent.IsSymlinkgodirwalk.newScratchBuffergodirwalk.newSortedScannerpackd.virtualFile.FileInfozerolog.Logger.WithContextdynamo.defaultContext.func1dynamo.marshalReflect.func1dynamo.marshalReflect.func2gjson.parseRecursiveDescentgjson.stringLessInsensitivego-yit.init.Intersect.func5godotenv.filenamesOrDefaultjwt.SigningMethodRSAPSS.Algmapstructure.DecodeHookExeczerochecker.isZeroInterfacezerolog.Context.EmbedObjectdynamo.Table.WaitWithContextenterprise-certificate-proxygo-yit.Iterator.RecurseNodesgodirwalk.modeTypeFromDirentgodotenv.readFile.deferwrap1mapstructure.typedDecodeHookdynamo.TTLDescription.Enabledgjson.parseSubSelectors.func1go-hex.InvalidByteError.Errorgo-jmespath.SyntaxError.Errorgo-jmespath.newFunctionCalleruuid.invalidLengthError.Errorzerochecker.isZeroDriverValuedynamo.Table.primaryKeys.func1dynamo.Table.primaryKeys.func2go-jmespath.astNodeType.Stringgo-jmespath.computeSliceParamsgo-yit.init.WithShortTag.func4godirwalk.defaultErrorCallbackgo-jmespath.ASTNode.PrettyPrintgo-yit.FromNode.FromNodes.func1zerochecker.isZeroAppenderValueunidecode.decodeTransliterationszerolog.LevelWriterAdapter.Closezerolog.LevelWriterAdapter.Writegjson.parseRecursiveDescent.func1dynamo.Table.WaitWithContext.func1universal-translator.newTranslatorlibopenapi.NewDocumentWithTypeCheckgodirwalk.Dirent.IsDirOrSymlinkToDirjwt.RegisterSigningMethod.deferwrap1godirwalk.NewScannerWithScratchBufferzerolog.LevelWriterAdapter.WriteLeveluniversal-translator.ErrBadParamSyntaxuniversal-translator.ErrMissingBracketuniversal-translator.translator.Localelibopenapi.NewDocumentWithConfigurationuuid.NewGenWithHWAF.WithHWAddrFunc.func1zerolog.Context.CallerWithSkipFrameCountgo-jmespath.SyntaxError.HighlightLocationgodotenv.parseValue.expandVariables.func2mapstructure.isStructTypeConvertibleToMapuniversal-translator.translator.FmtNumberuniversal-translator.translator.MonthWideuniversal-translator.translator.FmtPercentuniversal-translator.translator.MonthsWidemapstructure.dereferencePtrToStructIfNeededunidecode.decodeTransliterations.deferwrap1universal-translator.translator.FmtCurrencyuniversal-translator.translator.FmtDateFulluniversal-translator.translator.FmtDateLonguniversal-translator.translator.FmtTimeFulluniversal-translator.translator.FmtTimeLonguniversal-translator.translator.MonthNarrowuniversal-translator.translator.WeekdayWideuniversal-translator.translator.FmtDateShortuniversal-translator.translator.FmtTimeShortuniversal-translator.translator.MonthsNarrowuniversal-translator.translator.PluralsRangeuniversal-translator.translator.WeekdayShortuniversal-translator.translator.WeekdaysWideuniversal-translator.translator.FmtAccountinguniversal-translator.translator.FmtDateMediumuniversal-translator.translator.FmtTimeMediumuniversal-translator.translator.WeekdayNarrowuniversal-translator.translator.WeekdaysShortuniversal-translator.ErrConflictingTranslationuniversal-translator.translator.PluralsOrdinaluniversal-translator.translator.WeekdaysNarrowuniversal-translator.translator.PluralsCardinaluniversal-translator.translator.RangePluralRuleuniversal-translator.ErrMissingPluralTranslationuniversal-translator.translator.MonthAbbreviateduniversal-translator.translator.MonthsAbbreviateduniversal-translator.translator.OrdinalPluralRuleuniversal-translator.translator.CardinalPluralRuleuniversal-translator.translator.WeekdayAbbreviateduniversal-translator.translator.WeekdaysAbbreviated

Sign up to see Other details

Sign Up Free

Security and privacy

Code signing, notarization, and entitlement analysis for Testfully.

Code Signing

Excellent
Signed
Notarized
Hardened Runtime

Developer ID Application: Matthew Valley (T6B4T69477)

How popular is Testfully?

Popularity ranking based on install counts, store ratings, and community signals.

Popularity Tier
Ranked across all macOS apps
Notable

Popularity Score

35
35
Adoption
35
Mindshare
0
Store Rank

Sign up to see Detailed Popularity Data

Sign Up Free

When was Testfully last updated?

20 tracked releases since March 2025.

Latest: v1.187.0
April 10, 2026
v1.187.0
Apr 10, 2026
v1.186.1
Mar 2, 2026
v1.186.0
Feb 24, 2026
v1.184.0
Feb 4, 2026
v1.182.0
Jan 6, 2026
v1.181.0
Dec 9, 2025
v1.180.0
Oct 16, 2025
v1.179.0
Oct 4, 2025
v1.178.0,472
Sep 15, 2025
v1.178.0
Sep 8, 2025
v1.177.0
Aug 22, 2025
v1.176.0
Aug 4, 2025
v1.176.1
Aug 4, 2025
v1.175.0
Jul 1, 2025
v1.174.0
Jun 13, 2025
v1.173.0
May 14, 2025
v1.172.0
May 11, 2025
v1.170.0
May 1, 2025
v1.169.0
Apr 25, 2025
v1.168.0
Mar 31, 2025

Sign up to see Release History

Sign Up Free

Last verified May 8, 2026

Get version history, dependency trees, and scores via API
Desktop Insights

The only technographics platform for desktop software. See the SDKs, frameworks, and dependencies inside thousands of macOS and Windows applications.

© Copyright 2026 Desktop Insights. All Rights Reserved.

About
  • About
  • Blog
  • Contact
  • Twitter / X
Product
  • Statistics
  • Documentation
  • MCP Server
  • Smithery
  • Glama
Legal
  • Terms of Service
  • Privacy Policy
  • Cookie Policy