Build Better Websites. Create modern, resilient user experiences with web fundamentals.
416 matches across 7 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | .agents/skills/write-api-docs/SKILL.md | 87 | export function createCredentialsAuthProvider(...) {} |
| LOW | docs/src/server/registry.ts | 203 | function getOrSet<key, value>(map: Map<key, value>, key: key, init: () => value): value { |
| LOW | docs/src/generate/markdown.ts | 205 | async function getInterfaceFunctionMarkdown(comment: DocumentedInterfaceFunction): Promise<string> { |
| LOW | docs/src/generate/markdown.ts | 238 | async function getVariableFunctionMarkdown(comment: DocumentedVariableFunction): Promise<string> { |
| LOW | docs/src/generate/typedoc.ts | 178 | function warnOnCrossPackageCollisions(apisToDocument: Set<string>): void { |
| LOW | docs/src/generate/packages.ts | 66 | async function discoverPackageSubpathOverviews( |
| LOW | docs/src/generate/packages.ts | 106 | export async function writePackageOverviewFiles(overviews: PackageOverview[], docsDir: string) { |
| LOW | docs/src/generate/packages.ts | 157 | function warnOnInvalidReadmeSyntax(markdown: string, readmePath: string) { |
| LOW | docs/src/generate/packages.ts | 186 | function warnOnInvalidReadmeCodeFenceSyntax( |
| LOW | docs/src/generate/documented-api.ts | 205 | function getDocumentedInterfaceFunction( |
| LOW | docs/src/generate/documented-api.ts | 386 | function getVariableCallSignatures( |
| LOW | docs/src/generate/documented-api.ts | 461 | function getDocumentedVariableFunction( |
| LOW | docs/src/generate/documented-api.ts | 579 | function getApiPropertiesAndMethods( |
| LOW | docs/src/generate/documented-api.ts | 740 | function getApiParameterOrProperty( |
| LOW | docs/src/generate/documented-api.ts | 804 | function warnOnInvalidImportSyntax(api: DocumentedAPI) { |
| LOW | docs/src/prerender/bench/src/html-parser.bench.ts | 30 | function extractLinksAndAssetsNodeHtml(root: NodeHTMLElement): { |
| LOW | scripts/changes-validate.ts | 6 | function getMissingChangelogPackageDirNames(): string[] { |
| LOW | scripts/publish.ts | 206 | async function getPublishedPackagesMissingTags(): Promise<PublishedPackage[]> { |
| LOW | scripts/publish.ts | 239 | async function getPublishedPackagesMissingReleases(): Promise<PublishedPackage[]> { |
| LOW | scripts/publish.ts | 299 | function ensureGitHistoryForVersionLookup() { |
| LOW | scripts/setup-installable-branch.ts | 112 | async function updatePackageDependencies() { |
| LOW | scripts/generate-remix.ts | 197 | async function getExportModeForSpecifier( |
| LOW | scripts/validate-package-meta.ts | 137 | function validateExplicitConsumerDependencyRanges(packageInfos: PublishedPackageInfo[]): string[] { |
| LOW | scripts/validate-package-meta.ts | 160 | function validateConsumerDependencyRangesMatchCatalog( |
| LOW | scripts/validate-package-meta.ts | 189 | function validateConsistentConsumerDependencyRanges( |
| LOW | scripts/postinstall.ts | 54 | function getPlaywrightInstallLocations(): string[] { |
| LOW | scripts/postinstall.ts | 83 | function isPlaywrightBrowserInstalled(installLocation: string): boolean { |
| LOW | scripts/postinstall.ts | 87 | function cleanPartialPlaywrightInstalls(installLocations: string[]) { |
| LOW | scripts/postinstall.ts | 95 | function installPlaywrightBrowsers(): Promise<void> { |
| LOW | scripts/postinstall.ts | 164 | function formatPlaywrightInstallError(error: unknown): string { |
| LOW | scripts/oxlint-plugins/canonical-header-names-plugin.ts | 84 | function getHeaderPropertyKeyFixText( |
| LOW | scripts/oxlint-plugins/canonical-header-names-plugin.ts | 143 | function isHeadersInitPropertyValue(node: ESTree.ObjectExpression): boolean { |
| LOW | scripts/oxlint-plugins/prefer-let-locals-plugin.ts | 22 | function isConstEligibleModuleBinding(variable: Variable) { |
| LOW | scripts/utils/workspaces.ts | 129 | function findWorkspacePackageJsonPaths(rootDir: string): string[] { |
| LOW | scripts/utils/process-template-file.ts | 31 | function validateTemplateDirectives(content: string): void { |
| LOW | scripts/utils/packages.ts | 36 | return function getNpmPackageNameToDirectoryMap(): Map<string, string> { |
| LOW | scripts/utils/packages.ts | 70 | export function packageNameToDirectoryName(packageName: string): string | null { |
| LOW | scripts/utils/packages.ts | 172 | export function buildReverseDependencyGraph(): Map<string, Set<string>> { |
| LOW | scripts/utils/manifest.ts | 17 | export function buildSpecifierToRemixPath(packagesDir: string): Map<string, string> { |
| LOW | scripts/utils/git.ts | 7 | function parseVersionFromPackageJson(content: string): string | null { |
| LOW | scripts/utils/git.ts | 29 | export function findVersionIntroductionCommit( |
| LOW | scripts/utils/changes.ts | 665 | function generatePrereleaseChangesSection( |
| LOW | scripts/utils/changes.ts | 700 | function generateDependencyBumpsSection( |
| LOW | packages/auth-middleware/README.md | 128 | function createTrustedProxyAuthScheme(): AuthScheme<User> { |
| LOW | packages/html-template/src/lib/safe-html.ts | 54 | function stringifyRawInterpolation(value: Interpolation): string { |
| LOW | packages/ui/demo/cases/drummer/voice-looper.ts | 3 | export function createExponentialDecayGenerator( |
| LOW | packages/ui/bench/runner.ts | 594 | function aggregateAllocationProfiles(profiles: AllocationProfile[][]): AllocationProfile[] | null { |
| LOW | packages/ui/bench/runner.ts | 650 | function printAllocationProfileTable(profile: AllocationProfile[], operationName: string): void { |
| LOW | packages/ui/src/test/frame.test.tsx | 1728 | async function renderTimeFragmentWithCss() { |
| LOW | packages/ui/src/test/frame.test.tsx | 3487 | function PendingChildFrameObserver(handle: Handle) { |
| LOW | packages/ui/src/runtime/reconcile.ts | 73 | function markNodePersistedByMixins(node: CommittedHostNode, domParent: ParentNode, token: number) { |
| LOW | packages/ui/src/runtime/reconcile.ts | 81 | function unmarkNodePersistedByMixins(node: CommittedHostNode) { |
| LOW | packages/ui/src/runtime/reconcile.ts | 88 | function findMatchingPersistedMixinNode( |
| LOW | packages/ui/src/runtime/reconcile.ts | 131 | function shouldRestoreControlledReflectionOnInput( |
| LOW | packages/ui/src/runtime/reconcile.ts | 143 | function ensureControlledReflection( |
| LOW | packages/ui/src/runtime/reconcile.ts | 194 | function shouldTrackControlledReflection(props: ElementProps): boolean { |
| LOW | packages/ui/src/runtime/reconcile.ts | 198 | function scheduleControlledRestore( |
| LOW | packages/ui/src/runtime/reconcile.ts | 211 | function restoreControlledReflections( |
| LOW | packages/ui/src/runtime/reconcile.ts | 224 | function teardownControlledReflection(node: CommittedHostNode): void { |
| LOW | packages/ui/src/runtime/reconcile.ts | 310 | function resolveDirectEventDescriptors(mix: ElementProps['mix']): OnMixinDescriptor[] | null { |
| 297 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| CRITICAL | packages/auth/README.md | 116 | return redirect(routes.auth.session.login.index.href()) |
| CRITICAL | packages/auth/README.md | 129 | return redirect(routes.auth.session.login.index.href()) |
| CRITICAL | packages/remix/src/auth/README.md | 116 | return redirect(routes.auth.session.login.index.href()) |
| CRITICAL | packages/remix/src/auth/README.md | 129 | return redirect(routes.auth.session.login.index.href()) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | docs/src/server/asset-server.ts | 21 | // Transitive deps of the client entry. Emitted as <link rel="modulepreload"> |
| LOW | docs/src/server/view.tsx | 581 | lineHeight: '1.425', |
| LOW | docs/src/generate/typedoc.ts | 221 | // Module = 2, |
| LOW | docs/src/generate/typedoc.ts | 241 | // TypeAlias = 2097152, |
| LOW | docs/src/generate/documented-api.ts | 341 | } |
| LOW | docs/src/prerender/index.ts | 81 | // Parse and rewrite *only* link/script asset attributes, plus inline |
| LOW | packages/ui/src/style/stylesheet.ts | 241 | // |
| LOW | packages/response/README.md | 61 | |
| LOW | packages/file-storage/CHANGELOG.md | 121 | // [ |
| LOW | packages/test/src/app/server.ts | 181 | logError(`Failed to rewrite imports for ${urlPath}`, error) |
| LOW | packages/tar-parser/src/lib/tar.ts | 161 | // 124 12 File size in bytes (octal) |
| LOW | …ckages/multipart-parser/demos/cf-workers/wrangler.toml | 1 | #:schema node_modules/wrangler/config-schema.json |
| LOW | …ckages/multipart-parser/demos/cf-workers/wrangler.toml | 21 | |
| LOW | …ckages/multipart-parser/demos/cf-workers/wrangler.toml | 41 | # database_name = "my-database" |
| LOW | …ckages/multipart-parser/demos/cf-workers/wrangler.toml | 61 | # new_classes = ["MyDurableObject"] |
| LOW | …ckages/multipart-parser/demos/cf-workers/wrangler.toml | 81 | # Bind a Queue producer. Use this binding to schedule an arbitrary task that may be processed later by a Queue consumer. |
| LOW | …ckages/multipart-parser/demos/cf-workers/wrangler.toml | 101 | # binding = "MY_SERVICE" |
| LOW | packages/fetch-router/README.md | 401 | profile: resource('users/:userId/profile', { only: ['show', 'edit', 'update'] }), |
| LOW | packages/fetch-router/README.md | 481 | type Routes = typeof routes.users |
| LOW | …etch-router/demos/cf-workers/worker-configuration.d.ts | 8221 | // The message includes metadata about the broker, the client, and the payload |
| LOW | …etch-router/demos/cf-workers/worker-configuration.d.ts | 8341 | type MaybeProvider<T> = T extends object ? Provider<T> : unknown; |
| LOW | …etch-router/demos/cf-workers/worker-configuration.d.ts | 8361 | // Base type for all other types providing RPC-like interfaces. |
| LOW | …etch-router/demos/cf-workers/worker-configuration.d.ts | 8381 | // |
| LOW | …etch-router/demos/cf-workers/worker-configuration.d.ts | 8681 | readonly type: "attributes"; |
| LOW | packages/remix/src/fetch-router/README.md | 401 | profile: resource('users/:userId/profile', { only: ['show', 'edit', 'update'] }), |
| LOW | packages/remix/src/fetch-router/README.md | 481 | type Routes = typeof routes.users |
| LOW | packages/data-table/test/sqlite-adapter.ts | 1 | // Test-only bridge to the sqlite adapter source package. |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | packages/auth/src/lib/providers/oidc.test.ts | 257 | email: 'user@example.com', |
| LOW | packages/auth/src/lib/providers/oidc.test.ts | 293 | email: 'user@example.com', |
| LOW | packages/data-schema/src/lib/checks.test.ts | 46 | let ok = schema['~standard'].validate('user@example.com') |
| LOW | packages/data-table/src/lib/sql.ts | 21 | * let email = 'user@example.com' |
| LOW | packages/data-table/src/lib/sql.ts | 23 | * // => { text: 'select * from users where email = ?', values: ['user@example.com'] } |
| LOW | demos/bookstore/app/actions/account/controller.test.ts | 32 | assertContains(html, 'John Doe') |
| LOW | demos/bookstore/app/data/setup.ts | 142 | name: 'John Doe', |
| LOW | demos/bookstore/app/data/setup.ts | 158 | street: '123 Main St', |
| LOW | demos/bookstore/app/data/setup.ts | 171 | street: '123 Main St', |
| LOW | demos/social-auth/app/router.test.ts | 39 | body: new URLSearchParams({ email: 'user@example.com', password: 'password123' }), |
| LOW | demos/social-auth/app/router.test.ts | 63 | body: new URLSearchParams({ email: 'user@example.com', password: 'wrong-password' }), |
| LOW | demos/social-auth/app/router.test.ts | 204 | body: new URLSearchParams({ email: 'user@example.com' }), |
| LOW | demos/social-auth/app/router.test.ts | 231 | body: new URLSearchParams({ email: 'user@example.com', password: 'newpassword123' }), |
| LOW | demos/social-auth/app/router.test.ts | 242 | body: new URLSearchParams({ email: 'user@example.com', password: 'password123' }), |
| LOW | …al-auth/app/actions/auth/resolve-external-auth.test.ts | 19 | email: 'user@example.com', |
| LOW | demos/social-auth/app/data/setup.ts | 65 | email: 'admin@example.com', |
| LOW | demos/social-auth/app/data/setup.ts | 72 | email: 'user@example.com', |
| LOW | demos/social-auth/app/data/setup.test.ts | 13 | let admin = await db.findOne(users, { where: { email: 'admin@example.com' } }) |
| LOW | demos/social-auth/app/data/setup.test.ts | 14 | let user = await db.findOne(users, { where: { email: 'user@example.com' } }) |
| LOW | demos/social-auth/app/data/setup.test.ts | 25 | let admin = await db.findOne(users, { where: { email: 'admin@example.com' } }) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | packages/test/src/test/framework.test.ts | 23 | // ── describe ────────────────────────────────────────────────────────────────── |
| MEDIUM | packages/test/src/test/framework.test.ts | 159 | // ── it ──────────────────────────────────────────────────────────────────────── |
| MEDIUM | packages/test/src/test/framework.test.ts | 241 | // ── Duplicate detection ─────────────────────────────────────────────────────── |
| MEDIUM | packages/test/src/test/framework.test.ts | 297 | // ── Aliases ─────────────────────────────────────────────────────────────────── |
| MEDIUM | packages/test/src/test/framework.test.ts | 311 | // ── Lifecycle hooks ─────────────────────────────────────────────────────────── |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | packages/test/src/lib/framework.ts | 90 | // We implement this standalone so we can leverage multiple signatures through |
| MEDIUM | packages/test/src/lib/framework.ts | 144 | // We implement this standalone so we can leverage multiple signatures through |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | packages/cli/src/lib/completion.ts | 77 | elif type compdef &>/dev/null; then |