Repository Analysis

Open-Dev-Society/OpenStock

OpenStock is an open-source alternative to expensive market platforms. Track real-time prices, set personalized alerts, and explore detailed company insights — built openly, for everyone, forever free.

1.8 Likely human-written View on GitHub
1.8
Adjusted Score
1.8
Raw Score
100%
Time Factor
2026-05-28
Last Push
12,807
Stars
TypeScript
Language
23,569
Lines of Code
97
Files
25
Pattern Hits
2026-05-31
Scan Date

Score History

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 6LOW 19

Pattern Findings

25 matches across 5 categories. Click a row to expand file-level details.

Decorative Section Separators6 hits · 18 pts
SeverityFileLineSnippet
MEDIUM__tests__/ai-provider.test.ts10// ── getProviderConfig ──────────────────────────────────────────────
MEDIUM__tests__/ai-provider.test.ts71// ── getFallbackProviderName ────────────────────────────────────────
MEDIUM__tests__/ai-provider.test.ts100// ── callAIProvider ─────────────────────────────────────────────────
MEDIUM__tests__/ai-provider.test.ts254// ── callAIProviderWithFallback ─────────────────────────────────────
MEDIUMlib/ai-provider.ts78// ── Provider call implementations ──────────────────────────────────
MEDIUMlib/ai-provider.ts145// ── Public API ─────────────────────────────────────────────────────
Verbosity Indicators9 hits · 14 pts
SeverityFileLineSnippet
LOWlib/inngest/functions.ts59 // Step 1: Fetch General Market News
LOWlib/inngest/functions.ts86 // Step 3: Send Broadcast via Kit
LOWlib/inngest/functions.ts208 // Step 1: Fetch active alerts
LOWlib/inngest/functions.ts228 // Step 2: Group by symbol
LOWlib/inngest/functions.ts231 // Step 3: Fetch prices
LOWlib/inngest/functions.ts250 // Step 4: Check conditions
LOWlib/inngest/functions.ts271 // Step 5: Process triggers
LOWlib/inngest/functions.ts299 // Step 1: Fetch Inactive Users
LOWlib/inngest/functions.ts336 // Step 2: Send Emails
Hyper-Verbose Identifiers6 hits · 6 pts
SeverityFileLineSnippet
LOWscripts/resolve_srv.js13async function getStandardConnectionString() {
LOWlib/ai-provider.ts168export async function callAIProviderWithFallback(
LOWlib/utils.ts215export function formatSymbolForTradingView(symbol: string): string {
LOWlib/actions/adanos.actions.ts68export async function getStockSentimentInsights(
LOWlib/actions/watchlist.actions.ts71export async function getWatchlistSymbolsByEmail(email: string): Promise<string[]> {
LOWlib/actions/adanos.helpers.ts138export function buildStockSentimentInsights(
Over-Commented Block2 hits · 2 pts
SeverityFileLineSnippet
LOWREADME.md301# ADANOS_API_BASE_URL=https://api.adanos.org
LOWlib/inngest/functions.ts421 //
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippet
LOW__tests__/reset-password-email.test.ts32 email: 'user@example.com',
LOW__tests__/reset-password-email.test.ts52 email: 'user@example.com',