<feed xmlns='http://www.w3.org/2005/Atom'>
<title>prism-v2.git/frontend/app, branch master</title>
<subtitle>Prism rewritten using FastAPI + NextJS</subtitle>
<id>https://git.tylerhoang.xyz/prism-v2.git/atom?h=master</id>
<link rel='self' href='https://git.tylerhoang.xyz/prism-v2.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/'/>
<updated>2026-06-29T08:41:25Z</updated>
<entry>
<title>feat: add prism shell CSS for valuation layout</title>
<updated>2026-06-29T08:41:25Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-06-29T08:41:25Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=53e7bce26a21ab3853712ab53a38c6760b4ab25a'/>
<id>urn:sha1:53e7bce26a21ab3853712ab53a38c6760b4ab25a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add NewsPage component and enable News tab</title>
<updated>2026-06-22T22:11:51Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-06-22T22:11:51Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=e66c7b9171c8c08da38120490bed15a9b877d222'/>
<id>urn:sha1:e66c7b9171c8c08da38120490bed15a9b877d222</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: enable Filings tab and route FilingsPage</title>
<updated>2026-06-14T09:45:28Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-06-14T09:45:28Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=570b2ec7c5890ef6f11eab5ac1c56eb3ec90911f'/>
<id>urn:sha1:570b2ec7c5890ef6f11eab5ac1c56eb3ec90911f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: align option chain headers</title>
<updated>2026-06-11T08:07:57Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-06-11T08:07:57Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=983efae815130f77ebdded15c4584e062e1f5eab'/>
<id>urn:sha1:983efae815130f77ebdded15c4584e062e1f5eab</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add Insiders tab with diverging bar chart and transaction table</title>
<updated>2026-06-10T02:19:44Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-06-10T02:19:44Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=d5e321089b6b82f5425c2b3fae142db5223ce599'/>
<id>urn:sha1:d5e321089b6b82f5425c2b3fae142db5223ce599</id>
<content type='text'>
- Backend: get_insider_transactions() in data_service (yfinance, 1hr TTL)
- Backend: InsidersResponse schema + GET /api/tickers/{symbol}/insiders
- Frontend: InsidersPage with 4-KPI strip, SVG diverging bar chart (),
  psm-insider transaction rows, pill filter toggles, shimmer skeleton,
  empty/error states
- Enable Insiders nav item (remove disabled flag)
</content>
</entry>
<entry>
<title>fix: rewrite polar smile with correct closed-lens geometry</title>
<updated>2026-05-21T21:49:56Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-21T21:49:56Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=2222d8a5fac6850d7d924e9404a44a65cb10f68f'/>
<id>urn:sha1:2222d8a5fac6850d7d924e9404a44a65cb10f68f</id>
<content type='text'>
- Piecewise angleFor: puts go CCW (ATM→bottom), calls go CW (ATM→bottom)
  so both wings meet at the same bottom point and the path closes with Z
- Dynamic ivToR computed from actual IV range across all expiries
  (inner floor 60px, outer wall 240px) instead of hardcoded percentages
- IV rings: 5 evenly-spaced steps between real ivLo/ivHi
- Curve fill: rgba(194,170,122,0.12) matching design reference
- Non-selected curves: index-based styles (solid fg-1, then dashed fg-2/3/4)
- Eye price at font-size 30, label lowercase 'call · fair'
- Dashed marker-line spoke from center to selected-K dot
- Clicking a curve switches the selected expiry via onPickT
- Strike ticks use round multiples of a price-adaptive step
- Fix IvHeatmap xlabs duplicate key error (key by index, not rounded K)

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat: implement options tab with Black-Scholes pricer and vol surface</title>
<updated>2026-05-20T07:22:32Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-20T07:22:32Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=25360aacb8aab46e7e579707eb9704759af9536d'/>
<id>urn:sha1:25360aacb8aab46e7e579707eb9704759af9536d</id>
<content type='text'>
Adds a fully interactive options tab: Terminal view (3-column Bloomberg-
style with pricer, chain, smile/term-structure/greek curves) and Surface
view (polar smile dial + IV heatmap). Uses synthetic vol surface until a
live yfinance chain endpoint is wired up.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>fix: resolve quality review issues in PriceVsValueCard</title>
<updated>2026-05-19T07:52:16Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-19T07:52:16Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=e8ab8993949e960af931f24913d32a5c023bab97'/>
<id>urn:sha1:e8ab8993949e960af931f24913d32a5c023bab97</id>
<content type='text'>
- Add 150ms ease transitions to pvv-fill and pvv-tick (design system)
- Move fill color to modifier CSS classes, drop inline background/opacity
- Guard iv === 0 to prevent Infinity in premium/discount label
- Remove ambiguous direction arrows from IV figure
- Add "projection" suffix to year count in assumption summary

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat: add PriceVsValueCard to overview left column (DCF compass)</title>
<updated>2026-05-19T07:45:57Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-19T07:45:57Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=5fd350345a6f6caceb3375d3736a9a9ef7291257'/>
<id>urn:sha1:5fd350345a6f6caceb3375d3736a9a9ef7291257</id>
<content type='text'>
Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat: fetch valuation on overview tab, add DCF block to ValuationOverviewCard</title>
<updated>2026-05-19T07:41:35Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-19T07:41:35Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/prism-v2.git/commit/?id=927a77d68b138778690d380fe7931cc37ce06c9e'/>
<id>urn:sha1:927a77d68b138778690d380fe7931cc37ce06c9e</id>
<content type='text'>
Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
