# soundcheck v0.1.0 - Table of Contents > A LiveView-aware Credo plugin that checks contracts between callbacks, HEEx templates, and JS hooks ## Pages - [Soundcheck](readme.md) - [Changelog](changelog.md) - [LICENSE](license.md) ## Modules - [Soundcheck](Soundcheck.md): A LiveView-aware Credo plugin. - [Soundcheck.Check.Consistency.Configuration](Soundcheck.Check.Consistency.Configuration.md): ## Basics - [Soundcheck.Check.Design.ClickOnNonInteractiveElement](Soundcheck.Check.Design.ClickOnNonInteractiveElement.md): ## Basics - [Soundcheck.Check.Design.UnreadAssign](Soundcheck.Check.Design.UnreadAssign.md): ## Basics - [Soundcheck.Check.Design.UnusedEventHandler](Soundcheck.Check.Design.UnusedEventHandler.md): ## Basics - [Soundcheck.Check.Design.UnusedHook](Soundcheck.Check.Design.UnusedHook.md): ## Basics - [Soundcheck.Check.Readability.AssignsDotAccess](Soundcheck.Check.Readability.AssignsDotAccess.md): ## Basics - [Soundcheck.Check.Readability.InvalidSuppression](Soundcheck.Check.Readability.InvalidSuppression.md): ## Basics - [Soundcheck.Check.Refactor.BareAssignsInTemplate](Soundcheck.Check.Refactor.BareAssignsInTemplate.md): ## Basics - [Soundcheck.Check.Refactor.ChangeWithoutDebounce](Soundcheck.Check.Refactor.ChangeWithoutDebounce.md): ## Basics - [Soundcheck.Check.Refactor.ExpensiveCallInTemplate](Soundcheck.Check.Refactor.ExpensiveCallInTemplate.md): ## Basics - [Soundcheck.Check.Refactor.ExpensiveMountWork](Soundcheck.Check.Refactor.ExpensiveMountWork.md): ## Basics - [Soundcheck.Check.Refactor.FormForChangeset](Soundcheck.Check.Refactor.FormForChangeset.md): ## Basics - [Soundcheck.Check.Refactor.NavigateAcrossLiveSession](Soundcheck.Check.Refactor.NavigateAcrossLiveSession.md): ## Basics - [Soundcheck.Check.Refactor.StreamCandidate](Soundcheck.Check.Refactor.StreamCandidate.md): ## Basics - [Soundcheck.Check.Refactor.TemplateBoundVariable](Soundcheck.Check.Refactor.TemplateBoundVariable.md): ## Basics - [Soundcheck.Check.Refactor.TemporaryAssignCandidate](Soundcheck.Check.Refactor.TemporaryAssignCandidate.md): ## Basics - [Soundcheck.Check.Warning.AssignSetOnlyWhenConnected](Soundcheck.Check.Warning.AssignSetOnlyWhenConnected.md): ## Basics - [Soundcheck.Check.Warning.AsyncAssignFieldRead](Soundcheck.Check.Warning.AsyncAssignFieldRead.md): ## Basics - [Soundcheck.Check.Warning.BlockingCallInHandler](Soundcheck.Check.Warning.BlockingCallInHandler.md): ## Basics - [Soundcheck.Check.Warning.CrashingMatchInCallback](Soundcheck.Check.Warning.CrashingMatchInCallback.md): ## Basics - [Soundcheck.Check.Warning.EventPayloadMismatch](Soundcheck.Check.Warning.EventPayloadMismatch.md): ## Basics - [Soundcheck.Check.Warning.FormFieldMismatch](Soundcheck.Check.Warning.FormFieldMismatch.md): ## Basics - [Soundcheck.Check.Warning.FormWithoutRecovery](Soundcheck.Check.Warning.FormWithoutRecovery.md): ## Basics - [Soundcheck.Check.Warning.HookWithoutId](Soundcheck.Check.Warning.HookWithoutId.md): ## Basics - [Soundcheck.Check.Warning.InvalidLiveComponent](Soundcheck.Check.Warning.InvalidLiveComponent.md): ## Basics - [Soundcheck.Check.Warning.InvalidLiveRender](Soundcheck.Check.Warning.InvalidLiveRender.md): ## Basics - [Soundcheck.Check.Warning.InvalidSendUpdate](Soundcheck.Check.Warning.InvalidSendUpdate.md): ## Basics - [Soundcheck.Check.Warning.LiteralLiveComponentIdInLoop](Soundcheck.Check.Warning.LiteralLiveComponentIdInLoop.md): ## Basics - [Soundcheck.Check.Warning.LiveRouteWithoutAuthHook](Soundcheck.Check.Warning.LiveRouteWithoutAuthHook.md): ## Basics - [Soundcheck.Check.Warning.LiveViewCallbackInComponent](Soundcheck.Check.Warning.LiveViewCallbackInComponent.md): ## Basics - [Soundcheck.Check.Warning.OptionalAttrWithoutDefault](Soundcheck.Check.Warning.OptionalAttrWithoutDefault.md): ## Basics - [Soundcheck.Check.Warning.PatchToForeignLiveView](Soundcheck.Check.Warning.PatchToForeignLiveView.md): ## Basics - [Soundcheck.Check.Warning.PatchWithoutHandleParams](Soundcheck.Check.Warning.PatchWithoutHandleParams.md): ## Basics - [Soundcheck.Check.Warning.PossiblyUnsetAssign](Soundcheck.Check.Warning.PossiblyUnsetAssign.md): ## Basics - [Soundcheck.Check.Warning.StreamChildWithoutId](Soundcheck.Check.Warning.StreamChildWithoutId.md): ## Basics - [Soundcheck.Check.Warning.StreamConsumedOutsideFor](Soundcheck.Check.Warning.StreamConsumedOutsideFor.md): ## Basics - [Soundcheck.Check.Warning.StreamContainerWithoutPhxUpdate](Soundcheck.Check.Warning.StreamContainerWithoutPhxUpdate.md): ## Basics - [Soundcheck.Check.Warning.SubscribedWithoutHandleInfo](Soundcheck.Check.Warning.SubscribedWithoutHandleInfo.md): ## Basics - [Soundcheck.Check.Warning.UndeclaredComponentAttr](Soundcheck.Check.Warning.UndeclaredComponentAttr.md): ## Basics - [Soundcheck.Check.Warning.UndefinedHook](Soundcheck.Check.Warning.UndefinedHook.md): ## Basics - [Soundcheck.Check.Warning.UndefinedMountHook](Soundcheck.Check.Warning.UndefinedMountHook.md): ## Basics - [Soundcheck.Check.Warning.UndefinedStream](Soundcheck.Check.Warning.UndefinedStream.md): ## Basics - [Soundcheck.Check.Warning.UndefinedUpload](Soundcheck.Check.Warning.UndefinedUpload.md): ## Basics - [Soundcheck.Check.Warning.UnguardedSubscribe](Soundcheck.Check.Warning.UnguardedSubscribe.md): ## Basics - [Soundcheck.Check.Warning.UnhandledAsyncResult](Soundcheck.Check.Warning.UnhandledAsyncResult.md): ## Basics - [Soundcheck.Check.Warning.UnhandledEvent](Soundcheck.Check.Warning.UnhandledEvent.md): ## Basics - [Soundcheck.Check.Warning.UnhandledHookEvent](Soundcheck.Check.Warning.UnhandledHookEvent.md): ## Basics - [Soundcheck.Check.Warning.UnhandledInfoMessage](Soundcheck.Check.Warning.UnhandledInfoMessage.md): ## Basics - [Soundcheck.Check.Warning.UnhandledServerPushEvent](Soundcheck.Check.Warning.UnhandledServerPushEvent.md): ## Basics - [Soundcheck.Check.Warning.UnscopedLookupByClientParam](Soundcheck.Check.Warning.UnscopedLookupByClientParam.md): ## Basics ## Mix Tasks - [mix soundcheck](Mix.Tasks.Soundcheck.md): Runs soundcheck outside Credo, for what Credo cannot show: every location a finding involves (template, handler, JavaScript), line-level output for findings located only in JavaScript (such as unused hooks), and SARIF with related locations. - [mix soundcheck.install](Mix.Tasks.Soundcheck.Install.md): Installs soundcheck and configures .credo.exs