References & learn-more (technical)¶
Every library, framework, API, tool, and pattern WorkWingman uses — with the official docs and source repo, so this codebase doubles as a learning map. Grouped by area.
Friendlier version: ../plain/references.md
Runtime & frameworks¶
| Tool | Docs | Source |
|---|---|---|
| Electron | https://www.electronjs.org/docs/latest | https://github.com/electron/electron |
| electron-builder (Windows NSIS installer packaging — see packaging.md) | https://www.electron.build/ | https://github.com/electron-userland/electron-builder |
| NSIS (installer format electron-builder emits) | https://nsis.sourceforge.io/Docs/ | https://github.com/kichik/nsis |
| Angular 22 | https://angular.dev | https://github.com/angular/angular |
| .NET 10 / ASP.NET Core | https://learn.microsoft.com/aspnet/core/ | https://github.com/dotnet/aspnetcore |
| TypeScript | https://www.typescriptlang.org/docs/ | https://github.com/microsoft/TypeScript |
| RxJS | https://rxjs.dev | https://github.com/ReactiveX/rxjs |
| Vite / Vitest | https://vitest.dev | https://github.com/vitest-dev/vitest |
Backend libraries — runtime (src/)¶
Every PackageReference in src/WorkWingman.Api, src/WorkWingman.Core, and
src/WorkWingman.Infrastructure.
| Package | What it's for | Docs | Source |
|---|---|---|---|
| Flurl.Http | Fluent, testable HTTP client used by every outbound API adapter (SEC EDGAR, WARN/Socrata, and every insights-branch source). | https://flurl.dev/ | https://github.com/tmenier/Flurl |
| HtmlAgilityPack | HTML parsing/DOM traversal for ATS scraping (Greenhouse, Lever, Workday, etc.) and any HTML-shaped source without a JSON API. | https://html-agility-pack.net/ | https://github.com/zzzprojects/html-agility-pack |
| Microsoft.Playwright (.NET) | Browser automation that drives real ATS application flows (fills forms, clicks through multi-page apply flows) and backs the scraper-automation learning labs. | https://playwright.dev/dotnet/ | https://github.com/microsoft/playwright-dotnet |
| Polly | Resilience pipelines (retry with backoff, timeout, circuit breaker) wrapping every outbound HTTP call via ResiliencePipelines.Default. |
https://www.pollydocs.org/ | https://github.com/App-vNext/Polly |
| ClosedXML | Generates the local .xlsx export for the data-backup feature — no cloud round-trip for the spreadsheet itself. | https://github.com/ClosedXML/ClosedXML/wiki | https://github.com/ClosedXML/ClosedXML |
| DocumentFormat.OpenXml | Renders the tailored resume / cover letter into real Word (.docx) files (DocxWriter) so the apply engines can attach a document by file path — see document-generation.md. Fully local; no template server. |
https://learn.microsoft.com/office/open-xml/open-xml-sdk | https://github.com/dotnet/Open-XML-SDK |
| Microsoft.Extensions.Configuration.Abstractions | IConfiguration abstraction used by the YouTube Data API / iTunes Search adapters to read the config-gated YouTube API key without a hard dependency on the full configuration stack. |
https://learn.microsoft.com/dotnet/core/extensions/configuration | https://github.com/dotnet/runtime |
| Microsoft.Extensions.Logging.Abstractions | ILogger<T> interfaces only — no sink, no provider. Lets WorkWingman.Infrastructure log (ResearchService, DataPortabilityService, JobQueueService, LinkedInJobsScraper, JobFitAnalyzer) while the host, not the library, decides where the logs actually go. Same abstractions-only reasoning as the Configuration row above. |
https://learn.microsoft.com/dotnet/core/extensions/logging | https://github.com/dotnet/runtime |
| KPCLib | KeePass-compatible .kdbx library backing the real credential vault (KeePassVaultService) — reads/writes the encrypted key database on the user's Desktop, no cloud round-trip. |
https://github.com/passxyz/KPCLib | https://github.com/passxyz/KPCLib |
| System.Security.Cryptography.ProtectedData | DPAPI (CurrentUser) protection for secrets that must hit disk before the .kdbx vault is unlocked — e.g. the OAuth token cache. | https://learn.microsoft.com/dotnet/api/system.security.cryptography.protecteddata | https://github.com/dotnet/runtime |
Note: the .kdbx vault (KeePassVaultService) is backed by the KPCLib NuGet package (above);
the KeePassXC reference under "Dependency doctor toolchain" below is the format-spec/tooling
reference, not the runtime library.
Backend libraries — test (tests/WorkWingman.Tests/)¶
Every PackageReference in tests/WorkWingman.Tests/WorkWingman.Tests.csproj.
| Package | What it's for | Docs | Source |
|---|---|---|---|
| Bogus | Fake/realistic test-data generation (Bogus/faker convention across the test mandate). | — | https://github.com/bchavez/Bogus |
| coverlet.collector | Cross-platform code-coverage collector wired into dotnet test. |
https://github.com/coverlet-coverage/coverlet | https://github.com/coverlet-coverage/coverlet |
| Flurl.Http | Same HTTP client as the runtime dependency, referenced directly in tests to assert against HttpTest fixtures. |
https://flurl.dev/ | https://github.com/tmenier/Flurl |
| Microsoft.AspNetCore.Mvc.Testing | In-memory WebApplicationFactory host for API integration tests (no real network/port). |
https://learn.microsoft.com/aspnet/core/test/integration-tests | https://github.com/dotnet/aspnetcore |
| Microsoft.NET.Test.Sdk | The .NET test SDK/runner that xUnit plugs into. | https://learn.microsoft.com/dotnet/core/testing/ | https://github.com/microsoft/vstest |
| NSubstitute | Mocking library for interfaces (ILayoffSourceAdapter, every I*SourceAdapter seam) — 100%-mocked-coverage mandate. |
https://nsubstitute.github.io/ | https://github.com/nsubstitute/NSubstitute |
| xunit | Test framework — every *Tests.cs file in the suite. |
https://xunit.net/ | https://github.com/xunit/xunit |
| xunit.runner.visualstudio | VS/dotnet test discovery adapter for xUnit. |
https://xunit.net/docs/getting-started/v2/visual-studio | https://github.com/xunit/visualstudio.xunit |
Frontend — runtime dependencies (frontend/package.json)¶
| Package | What it's for | Docs | Source |
|---|---|---|---|
| @angular/common | Angular common directives/pipes/services (NgIf, NgFor, HttpClient support, etc.). |
https://angular.dev/api/common | https://github.com/angular/angular |
| @angular/compiler | Angular template compiler, used at build/JIT time. | https://angular.dev/overview | https://github.com/angular/angular |
| @angular/core | Angular's core framework (components, DI, signals, change detection). | https://angular.dev | https://github.com/angular/angular |
| @angular/forms | Reactive/template-driven forms used across the profile/settings screens. | https://angular.dev/guide/forms | https://github.com/angular/angular |
| @angular/platform-browser | Browser rendering bootstrap for the Angular app shell (loaded inside Electron's renderer). | https://angular.dev | https://github.com/angular/angular |
| @angular/router | Client-side routing between the app's views. | https://angular.dev/guide/routing | https://github.com/angular/angular |
| rxjs | Reactive streams underpinning Angular's HttpClient, the resilience interceptor, and async state. |
https://rxjs.dev | https://github.com/ReactiveX/rxjs |
| tslib | Shared TypeScript helper runtime (reduces per-file emit boilerplate). | https://www.typescriptlang.org/ | https://github.com/microsoft/tslib |
Frontend — dev dependencies (frontend/package.json)¶
| Package | What it's for | Docs | Source |
|---|---|---|---|
| @analogjs/vite-plugin-angular | Vite plugin that lets Angular components/templates compile under Vite/Vitest instead of the webpack-based Angular test runner. | https://analogjs.org/docs/packages/vite-plugin-angular/overview | https://github.com/analogjs/analog |
| @angular-eslint/schematics | The schematics ng add angular-eslint installs to wire ESLint into an Angular workspace. Nothing in this repo invokes it: angular.json defines no lint target and npm run lint calls the eslint CLI directly. It is what the ng add left behind — listed here because the gate reads package.json, not because anything depends on it. |
https://github.com/angular-eslint/angular-eslint/tree/main/packages/schematics | https://github.com/angular-eslint/angular-eslint |
| @angular/build | Angular's Vite/esbuild-based build system (ng build/ng serve). |
https://angular.dev/tools/cli/build-system-migration | https://github.com/angular/angular-cli |
| @angular/cli | The ng command-line tool (scaffolding, build, serve, test). |
https://angular.dev/tools/cli | https://github.com/angular/angular-cli |
| @angular/compiler-cli | Ahead-of-time template compiler used by the CLI build pipeline. | https://angular.dev | https://github.com/angular/angular |
| @eslint/js | ESLint's own recommended JavaScript rules — eslint.configs.recommended, the base layer frontend/eslint.config.js extends before the TypeScript and Angular layers go on top. |
https://eslint.org/docs/latest/use/configure/configuration-files | https://github.com/eslint/eslint |
| @faker-js/faker | Fake/realistic test-data generation for frontend unit tests (Bogus/faker convention, frontend half). | https://fakerjs.dev/ | https://github.com/faker-js/faker |
| @stryker-mutator/core | Mutation-testing engine — verifies frontend unit tests actually catch injected bugs, not just cover lines. | https://stryker-mutator.io/docs/stryker-js/ | https://github.com/stryker-mutator/stryker-js |
| @stryker-mutator/vitest-runner | Vitest test-runner plugin for StrykerJS. | https://stryker-mutator.io/docs/stryker-js/vitest-runner/ | https://github.com/stryker-mutator/stryker-js |
| angular-eslint | The Angular-aware layer of frontend/eslint.config.js: tsRecommended rules, processInlineTemplates (so inline component templates get linted, not skipped), and for **/*.html both templateRecommended and templateAccessibility. Its a11y template rules cover some of the same ground as the axe-core WCAG gates — but only for whoever runs npm run lint, which nothing enforces (see the eslint row). Treat it as a local head-start on those gates, not a substitute: the CI a11y sweeps are what actually block. |
https://github.com/angular-eslint/angular-eslint#readme | https://github.com/angular-eslint/angular-eslint |
| eslint | The linter itself. npm run lint runs eslint "src/**/*.ts" "src/**/*.html" against the frontend, configured by the flat config in frontend/eslint.config.js. Note it is NOT a CI gate today — no workflow job invokes it, so it only runs when someone runs it. |
https://eslint.org/docs/latest/ | https://github.com/eslint/eslint |
| jsdom | Headless DOM implementation Vitest runs component tests against. | https://github.com/jsdom/jsdom | https://github.com/jsdom/jsdom |
| prettier | Code formatter for the frontend source tree. | https://prettier.io/docs/ | https://github.com/prettier/prettier |
| typescript | The TypeScript compiler Angular and Vitest both build against. | https://www.typescriptlang.org/docs/ | https://github.com/microsoft/TypeScript |
| typescript-eslint | TypeScript parser + rules for ESLint, and the tseslint.config() helper the whole flat config is built with (tseslint.configs.recommended). Without it ESLint cannot read .ts at all — it only speaks JavaScript. |
https://typescript-eslint.io/ | https://github.com/typescript-eslint/typescript-eslint |
| vitest | Frontend unit-test runner (replaces Karma/Jasmine), integrates with @analogjs/vite-plugin-angular. |
https://vitest.dev | https://github.com/vitest-dev/vitest |
External data sources & APIs¶
Every external API/data source the app calls or has a committed adapter for. Landed on master
rows are live in src/ today. Feature branch rows exist on an unmerged branch (see the branch
column) — documented here now so the reference map stays complete as those branches land; they
are not reachable from master yet.
| Source | Purpose | Official URL | Free / Paid | Config gate (env key) | Status |
|---|---|---|---|---|---|
| SEC EDGAR full-text search | Public-company layoff/restructuring signal via Form 8-K Item 2.05 filings (SecEdgarSource). |
https://efts.sec.gov/LATEST/search-index | Free, unauthenticated | none | Landed on master |
| Texas WARN notices (Socrata SODA API) | State WARN Act layoff notices, structured JSON (WarnNoticeSource). |
https://data.texas.gov/resource/8w53-c4f6.json | Free, unauthenticated | none | Landed on master |
| layoffs.fyi | Documented no-op — no data-sharing agreement exists; adapter registered but makes no calls (LayoffsFyiSource). |
https://layoffs.fyi | N/A (not called) | none | Landed on master, no-op |
| EIA (U.S. Energy Information Administration) — gas prices | Weekly regular-gasoline retail prices by PAD District (EiaGasSource). |
https://www.eia.gov/opendata/ | Free, keyed | EIA_API_KEY |
Feature branch: feature-col-tax |
| BLS Public Data API — CPI | Regional CPI ("rent of primary residence", "food at home") for cost-of-living scaling (BlsCpiSource). |
https://www.bls.gov/developers/ | Free, key optional (raises quota) | BLS_API_KEY (optional) |
Feature branch: feature-col-tax |
| C2ER Cost of Living Index (COLI) | Licensing-only cost-of-living index; documented, not integrated. | https://www.coli.org/products/licensing/ | Paid only | N/A (not integrated) | Feature branch: feature-col-tax (documented, not built) |
| Numbeo Cost of Living API | Cost-of-living data; config-gated seam, no free tier (NumbeoSource). |
https://www.numbeo.com/common/api.jsp | Paid only | NUMBEO_API_KEY (config-stubbed) |
Feature branch: feature-col-tax |
| levels.fyi API/MCP/CLI | Compensation percentile data; config-gated seam, no free path (LevelsFyiSource). |
https://www.levels.fyi/api-access/ | Paid only | LEVELS_FYI_API_KEY (config-stubbed no-op) |
Feature branch: feature-comp-signals |
| Glassdoor | Rejected outright — no public/self-serve API, ToS prohibits scraping. No adapter. | https://www.glassdoor.com/about/terms/ | Paid, enterprise-only | N/A (not built) | Feature branch: feature-comp-signals (documented, not built) |
| DOL/OFLC H-1B LCA disclosure data | Employer-reported prevailing wage from H-1B Labor Condition Applications (H1bLcaSource). |
https://www.dol.gov/agencies/eta/foreign-labor/performance | Free, public-domain | none | Feature branch: feature-comp-signals |
| BLS OEWS wage survey | Occupational Employment and Wage Statistics via the BLS Public Data API (BlsOewsSource). |
https://www.bls.gov/bls/api_features.htm | Free, key optional (raises quota) | BLS_API_KEY (optional) |
Feature branch: feature-comp-signals |
| DOL Form 5500, Schedule A (EFAST2) | Employer welfare-benefit-plan filings naming insurance carriers (Form5500Source). |
https://www.dol.gov/agencies/ebsa/about-ebsa/our-activities/public-disclosure/foia/form-5500-datasets | Free, public bulk data | none | Feature branch: feature-benefits-insight |
| HRC Corporate Equality Index (CEI) | Annual employer LGBTQ+-inclusion benchmark, including trans-inclusive health coverage (HrcCeiSource). |
https://www.hrc.org/resources/corporate-equality-index | Free, public | none | Feature branch: feature-benefits-insight |
| Carrier clinical-policy documents (Aetna, Cigna, UnitedHealthcare, Anthem/BCBS) | Reference links to carriers' own gender-affirming-care clinical policies (CarrierPolicyCatalog). |
https://www.aetna.com/cpb/medical/data/600_699/0615.html (example) | Free, public | none | Feature branch: feature-benefits-insight |
| Alpha Vantage | Secondary/fallback stock quote + daily-history source (AlphaVantageSource). |
https://www.alphavantage.co/support/#api-key | Free tier (rate-limited) | ALPHA_VANTAGE_API_KEY |
Feature branch: feature-equity-comp |
| Stooq | Primary, free stock quote/history CSV endpoints (StooqSource); currently blocked by an upstream bot-challenge, degrades gracefully. |
https://stooq.com/ | Free, unauthenticated | none | Feature branch: feature-equity-comp |
| Barchart OnDemand | Paid quote API; config-stub only, no default key shipped (BarchartSource). |
https://www.barchart.com/ondemand | Paid only | BARCHART_API_KEY (config-stubbed) |
Feature branch: feature-equity-comp |
| Robinhood | Excluded — no official public market-data API for equities; unofficial libraries require user credentials and violate ToS. No adapter. | https://robinhood.com/ | N/A (not built) | N/A | Feature branch: feature-equity-comp (documented, not built) |
| GitHub REST API | Public-repo language aggregation as a tech-stack signal (GitHubOrgSource). |
https://docs.github.com/rest | Free, unauthenticated (higher quota with token) | GITHUB_TOKEN (optional) |
Feature branch: feature-company-research |
| GDELT DOC 2.0 | Recent company news search, no key required (NewsSource). |
https://api.gdeltproject.org/api/v2/doc/doc | Free, unauthenticated | none | Feature branch: feature-company-research |
| Google News RSS | Documented alternative news source, not wired (interface seam ready). | https://news.google.com/rss | Free, unauthenticated | none | Feature branch: feature-company-research (documented, not built) |
| NewsAPI.org / Bing News Search | Out of scope — paid/keyed beyond a small free quota. No adapter. | https://newsapi.org/ | Paid beyond free quota | N/A (not built) | Feature branch: feature-company-research (documented, not built) |
| Wikipedia REST summary API | Company background prose summary (WikidataSource, calls Wikipedia's summary endpoint). |
https://en.wikipedia.org/api/rest_v1/ | Free, unauthenticated | none | Feature branch: feature-company-research |
| Wikidata SPARQL | Documented alternative for structured facts, not wired. | https://query.wikidata.org/ | Free, unauthenticated | none | Feature branch: feature-company-research (documented, not built) |
| BuiltWith / Wappalyzer / StackShare | Out of scope — paid/restricted programmatic access. No adapter. | https://builtwith.com/ | Paid/restricted | N/A (not built) | Feature branch: feature-company-research (documented, not built) |
| Crunchbase | Out of scope — API requires paid subscription. No adapter. | https://data.crunchbase.com/ | Paid only | N/A (not built) | Feature branch: feature-company-research (documented, not built) |
| HUD Fair Market Rents (FMR) API | Bedroom-count-level metro/county rent data (HudFmrSource). |
https://www.huduser.gov/portal/dataset/fmr-api.html | Free, keyed (registration) | HUD API bearer token (registration-issued) | Feature branch: feature-lifestyle-costs |
| Census ACS 5-year estimates API | Metro-wide median gross rent, secondary/coarser fallback (CensusAcsSource). |
https://www.census.gov/programs-surveys/acs/data/data-via-api.html | Free, unauthenticated | none | Feature branch: feature-lifestyle-costs |
| Zillow Research (ZORI/ZHVI) | Config-stubbed, not live — Zillow's terms don't grant redistribution rights for the free CSVs (ZillowHousingSource). |
https://www.zillow.com/research/data/ | Free CSV, restricted redistribution | N/A (config-stubbed no-op) | Feature branch: feature-lifestyle-costs |
| USDA Official Food Plans ("Cost of Food") | Household grocery cost baseline by age/sex band (UsdaFoodPlanCalculator). |
https://www.fna.usda.gov/research/cnpp/usda-food-plans/cost-food-monthly-reports | Free, public (PDF/Excel, no API) | none | Feature branch: feature-family-costs |
| BLS regional CPI ("food at home") | Regional scaling factor for the USDA grocery baseline (BlsRegionalFoodPriceIndexSource, seeded snapshot today). |
https://www.bls.gov/developers/ | Free, key optional | BLS_API_KEY (optional) |
Feature branch: feature-family-costs |
| GreatSchools API | Avoided — confirmed partner/paid-only, no free tier. Not used. | https://www.greatschools.org/api | Paid only | N/A (not used) | Feature branch: feature-family-costs (documented, not built) |
| Stanford SEDA (Educational Opportunity Project) | Nationally-comparable district achievement/growth percentiles (SedaSchoolDistrictSource, seeded snapshot today). |
https://edopportunity.org/get-the-data/ | Free, research-attribution license | none | Feature branch: feature-family-costs |
| NCES EDGE (district boundaries) | Address/city-to-district geocoding, noted for a future live SEDA lookup; not wired. | https://nces.ed.gov/programs/edge/Geographic/DistrictBoundaries | Free, public | none | Feature branch: feature-family-costs (documented, not built) |
| NCES CCD (Common Core of Data) | District enrollment/demographic/finance data, noted for completeness; not wired. | https://nces.ed.gov/ccd/ | Free, public | none | Feature branch: feature-family-costs (documented, not built) |
| NCES Private School Universe Survey (PSS) | Documented dead end — does not collect tuition data. | https://nces.ed.gov/surveys/pss/ | Free, public | N/A (no tuition data) | Feature branch: feature-family-costs (documented dead end) |
feature-news-price-context composes the GDELT (feature-company-research) and Stooq/Alpha
Vantage/Barchart (feature-equity-comp) sources above through its own IRecentNewsProvider /
IPriceHistoryProvider seams — it adds no new external source of its own.
Existing (pre-insights) external APIs & auth¶
| Service | Docs |
|---|---|
| Google Sheets API | https://developers.google.com/workspace/sheets/api |
| Google Forms API | https://developers.google.com/workspace/forms/api |
| Google Calendar API | https://developers.google.com/calendar |
| Gmail API | https://developers.google.com/gmail/api |
| YouTube Data API v3 (search.list, playlists.insert, playlistItems.insert) | https://developers.google.com/youtube/v3 |
| YouTube Data API quota costs | https://developers.google.com/youtube/v3/determine_quota_cost |
| Apple iTunes Search API (podcasts, free/keyless) | https://performance-partners.apple.com/search-api |
| Sign in with Apple (REST) | https://developer.apple.com/documentation/signinwithapplerestapi |
| Sign In with LinkedIn v2 (OIDC) | https://learn.microsoft.com/en-us/linkedin/consumer/integrations/self-serve/sign-in-with-linkedin-v2 |
| Workday (no public apply API — automated) | https://www.workday.com/ |
| Anthropic / Claude | https://docs.anthropic.com |
| Claude Projects | https://support.claude.com/en/articles/9517075 |
| NotebookLM (no consumer API — see notebooklm.md) | https://notebooklm.google.com |
| NotebookLM Enterprise API (not used — enterprise-only) | https://docs.cloud.google.com/gemini/enterprise/notebooklm-enterprise/docs/api-notebooks |
| NotebookLM MCP (community, unofficial) | https://github.com/PleasePrompto/notebooklm-mcp |
| Gemini API — image generation ("Nano Banana", BYO key, paid) | https://ai.google.dev/gemini-api/docs/image-generation |
| OpenAI Images API (gpt-image-*, BYO key, paid) | https://developers.openai.com/api/docs/guides/image-generation |
| Magnific API — image upscale/enhance + image-to-video (BYO key, paid) | https://docs.magnific.com/ |
| Revid.ai API — AI video generation (BYO key, paid; documented, not built) | https://www.revid.ai/docs |
Stock-quote sources (equity compensation valuation)¶
| Source | Docs |
|---|---|
| Stooq | https://stooq.com |
| Alpha Vantage | https://www.alphavantage.co/documentation/ |
| Barchart OnDemand | https://www.barchart.com/ondemand/api |
Learning platforms surfaced in Study & prep¶
| Platform | Link |
|---|---|
| Udemy | https://www.udemy.com |
| Google Cloud Skills Boost | https://www.cloudskillsboost.google |
| AWS Skill Builder | https://skillbuilder.aws |
| Microsoft Learn | https://learn.microsoft.com |
| LeetCode | https://leetcode.com |
| LeetCode company problem lists (Premium) | https://leetcode.com/company/ |
| LeetCode Premium subscribe (deep-link only, BYO subscription) | https://leetcode.com/subscribe/ |
| Medium | https://medium.com |
Coding-assessment platforms surfaced in Assessment prep¶
See assessment-prep.md for the detection rules and the never-auto-subscribe guardrail.
| Platform | Link |
|---|---|
| HackerRank — Interview Preparation Kit | https://www.hackerrank.com/interview/interview-preparation-kit |
| CoderByte | https://coderbyte.com |
| CodeSignal — Learn | https://codesignal.com/learn/ |
| Codility — Lessons | https://app.codility.com/programmers/lessons/ |
| Karat — Candidate interview prep | https://karat.com/candidate-experience/ |
| Karat — Brilliant Black Minds | https://karat.com/bbm-members/ |
Practice catalog (learning-paths.md — role-matched)¶
See learning-paths.md for the matcher and the full URL-verification log.
| Resource | Link |
|---|---|
| LeetCode: System Design for Interviews and Beyond | https://leetcode.com/explore/featured/card/system-design-for-interviews-and-beyond/ |
| LeetCode: Interview Crash Course (DS&A) | https://leetcode.com/explore/interview/card/leetcodes-interview-crash-course-data-structures-and-algorithms/ |
| LeetCode: Top SQL 50 | https://leetcode.com/studyplan/top-sql-50/ |
| LeetCode: Advanced/Premium SQL 50 | https://leetcode.com/studyplan/premium-sql-50/ |
| LeetCode: 30 Days of Pandas | https://leetcode.com/studyplan/30-days-of-pandas/ |
| LeetCode: Introduction to Pandas | https://leetcode.com/studyplan/introduction-to-pandas/ |
| LeetCode: 30 Days of JavaScript | https://leetcode.com/studyplan/30-days-of-javascript/ |
| Databricks Training & Certification | https://www.databricks.com/learn/training/ |
| Snowflake University | https://learn.snowflake.com/en/courses/ |
| dbt Learn: dbt Fundamentals | https://learn.getdbt.com/courses/dbt-fundamentals |
| Kaggle Learn | https://www.kaggle.com/learn |
Free demographic community/prep resources (see demographic-resources.md)¶
Curated, hand-verified list surfaced in the "Communities & prep for you" section (demographic-resources.md) — every link checked live before inclusion.
| Organization | Link |
|---|---|
| Karat — Brilliant Black Minds | https://karat.com/brilliant-black-minds/ |
| /dev/color | https://devcolor.org/ |
| National Society of Black Engineers (NSBE) | https://nsbe.org/ |
| AfroTech | https://afrotech.com/ |
| Blacks In Technology Foundation | https://blacksintechnology.org/ |
| Techqueria | https://techqueria.org/ |
| Society of Hispanic Professional Engineers (SHPE) | https://shpe.org/ |
| Latinas in Tech | https://latinasintech.org/ |
| American Indian Science and Engineering Society (AISES) | https://aises.org/ |
| Girls Who Code | https://girlswhocode.com/ |
| AnitaB.org (Grace Hopper Celebration) | https://anitab.org/ |
| Elpha | https://elpha.com/ |
| Lesbians Who Tech + Allies | https://lesbianswhotech.org/ |
| Out in Tech | https://outintech.com/ |
| VetsinTech | https://vetsintech.co/ |
| Operation Code | https://www.operationcode.org/ |
| Hiring Our Heroes | https://www.hiringourheroes.org/ |
| Disability:IN | https://www.disabilityin.org/ |
| Lime Connect | https://limeconnect.com/ |
Prep Studio: phone flashcards (see prep-studio.md)¶
| Tool | Docs |
|---|---|
| Web Speech API (SpeechSynthesis) | https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesis |
| Anki text-file import (optional, BYO account) | https://docs.ankiweb.net/importing/text-files.html |
| Quizlet (optional, BYO account) | https://quizlet.com |
Interview prep resources surfaced in Interview prep bank¶
| Resource | Link |
|---|---|
| Exponent (YouTube — PM/EM/SWE mock interviews) | https://www.youtube.com/@tryexponent |
| Exponent — Engineering Manager Interview Guide | https://www.tryexponent.com/blog/how-to-prepare-for-an-engineering-manager-interview |
| IGotAnOffer — Engineering Manager Interview Questions | https://igotanoffer.com/blogs/tech/engineering-manager-interviews |
| MIT CAPD — The STAR Method for Behavioral Interviews | https://capd.mit.edu/resources/the-star-method-for-behavioral-interviews/ |
| The Muse — STAR Interview Method | https://www.themuse.com/advice/star-interview-method |
| Coursera | https://www.coursera.org |
Optional data-provider APIs (bring your own key — see integration-keys)¶
| Provider | Docs |
|---|---|
| Financial Modeling Prep (FMP) | https://site.financialmodelingprep.com/developer/docs |
| Alpha Vantage | https://www.alphavantage.co/support/#api-key |
| Barchart OnDemand | https://www.barchart.com/ondemand |
| GitHub personal access tokens | https://github.com/settings/tokens |
| HUD Fair Market Rents (FMR) API | https://www.huduser.gov/portal/dataset/fmr-api.html |
| Numbeo API | https://www.numbeo.com/common/api.jsp |
Dependency doctor toolchain¶
| Tool | Docs |
|---|---|
| winget | https://learn.microsoft.com/windows/package-manager/winget/ |
| npm | https://docs.npmjs.com/ |
| Playwright browser install | https://playwright.dev/dotnet/docs/browsers |
| pip (planned, for Piper) | https://pip.pypa.io/ |
| KeePassXC (kdbx format reference) | https://keepassxc.org/ |
Study audio/video (planned — see study-audio.md)¶
| Tool | Docs | Source |
|---|---|---|
| ffmpeg | https://ffmpeg.org/documentation.html | https://github.com/FFmpeg/FFmpeg |
| Piper TTS | https://github.com/OHF-Voice/piper1-gpl | https://github.com/OHF-Voice/piper1-gpl |
| eSpeak-ng (fallback) | https://github.com/espeak-ng/espeak-ng | https://github.com/espeak-ng/espeak-ng |
| Freesound (CC0 search) | https://freesound.org/help/faq/ | — |
| Pixabay / Pexels video (CC0) | https://pixabay.com/service/license-summary/ | — |
Security & testing (in use + roadmap)¶
See security.md and testing.md for what is built vs. planned. Bogus, NSubstitute, xUnit, and coverlet are already in use (see the backend test table above); this table tracks the remaining security/mutation roadmap plus the frontend equivalents.
| Tool | Docs | Source |
|---|---|---|
| Codex review | https://developers.openai.com/codex/ | — |
| CodeQL (planned) | https://codeql.github.com/ | https://github.com/github/codeql |
| Semgrep (planned) | https://semgrep.dev/docs/ | https://github.com/semgrep/semgrep |
| Semgrep MCP (planned) | — | https://github.com/semgrep/mcp |
| Trivy (planned) | https://trivy.dev/ | https://github.com/aquasecurity/trivy |
| gitleaks (planned) | https://gitleaks.io/ | https://github.com/gitleaks/gitleaks |
| OWASP ZAP (planned) | https://www.zaproxy.org/docs/ | https://github.com/zaproxy/zaproxy |
| OWASP Dependency-Check (planned) | https://owasp.org/www-project-dependency-check/ | https://github.com/jeremylong/DependencyCheck |
| Security Code Scan (planned) | https://security-code-scan.github.io/ | https://github.com/security-code-scan/security-code-scan |
| Dependabot (planned) | https://docs.github.com/code-security/dependabot | — |
| Stryker.NET (planned) | https://stryker-mutator.io/docs/stryker-net/ | https://github.com/stryker-mutator/stryker-net |
| StrykerJS | https://stryker-mutator.io/docs/stryker-js/ | https://github.com/stryker-mutator/stryker-js |
| Bogus | — | https://github.com/bchavez/Bogus |
| @faker-js/faker | https://fakerjs.dev/ | https://github.com/faker-js/faker |
| NSubstitute | https://nsubstitute.github.io/ | https://github.com/nsubstitute/NSubstitute |
| Playwright for .NET E2E (planned) | https://playwright.dev/dotnet/ | https://github.com/microsoft/playwright-dotnet |
Playwright _electron (planned) |
https://playwright.dev/docs/api/class-electron | https://github.com/microsoft/playwright |
| WebdriverIO + wdio-electron-service (planned) | https://webdriver.io/docs/desktop-testing/electron | https://github.com/webdriverio-community/wdio-electron-service |
Patterns & techniques — learn more¶
- Resilience / retry with backoff — https://www.pollydocs.org/strategies/retry.html · Microsoft's transient-fault guidance
- Web scraping with resilient selectors — see connections-and-sso.md; Playwright locators, XPath
- Page Object Model (for the planned E2E) — https://playwright.dev/dotnet/docs/pom
- Dependency injection — https://learn.microsoft.com/dotnet/core/extensions/dependency-injection
- Design patterns — https://refactoring.guru/design-patterns · Martin Fowler
- OWASP Top 10 / ASVS — https://owasp.org/www-project-top-ten/ · https://owasp.org/www-project-application-security-verification-standard/
- Mutation testing — https://stryker-mutator.io/docs/
- RAG / grounded workspaces — https://www.anthropic.com/news/contextual-retrieval
- Model Context Protocol (MCP) — https://modelcontextprotocol.io/
- Angular signals — https://angular.dev/guide/signals
Related docs¶
- Friendly version: ../plain/references.md
- Doc index: ../README.md