portfolio-context
Auto-loaded context for Portfolio Buddy 2 development. Use for ANY task involving: React 19 development, TypeScript, portfolio analysis features, metrics calculations, trading strategy comparison, or working with the Portfolio Buddy 2 codebase. Contains tech stack, known issues, and architectural constraints.
Best use case
portfolio-context is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. Auto-loaded context for Portfolio Buddy 2 development. Use for ANY task involving: React 19 development, TypeScript, portfolio analysis features, metrics calculations, trading strategy comparison, or working with the Portfolio Buddy 2 codebase. Contains tech stack, known issues, and architectural constraints.
Auto-loaded context for Portfolio Buddy 2 development. Use for ANY task involving: React 19 development, TypeScript, portfolio analysis features, metrics calculations, trading strategy comparison, or working with the Portfolio Buddy 2 codebase. Contains tech stack, known issues, and architectural constraints.
Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.
Practical example
Example input
Use the "portfolio-context" skill to help with this workflow task. Context: Auto-loaded context for Portfolio Buddy 2 development. Use for ANY task involving: React 19 development, TypeScript, portfolio analysis features, metrics calculations, trading strategy comparison, or working with the Portfolio Buddy 2 codebase. Contains tech stack, known issues, and architectural constraints.
Example output
A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.
When to use this skill
- Use this skill when you want a reusable workflow rather than writing the same prompt again and again.
When not to use this skill
- Do not use this when you only need a one-off answer and do not need a reusable workflow.
- Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/portfolio-context/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How portfolio-context Compares
| Feature / Agent | portfolio-context | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Auto-loaded context for Portfolio Buddy 2 development. Use for ANY task involving: React 19 development, TypeScript, portfolio analysis features, metrics calculations, trading strategy comparison, or working with the Portfolio Buddy 2 codebase. Contains tech stack, known issues, and architectural constraints.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
SKILL.md Source
# Portfolio Buddy 2 - Project Context
## Tech Stack
- **Frontend**: React 19, TypeScript, Vite
- **UI**: Tailwind CSS, shadcn/ui (color system only)
- **Charts**: Chart.js, react-chartjs-2, chartjs plugins (zoom, annotation, date adapter)
- **State**: Plain React (useState, useMemo, useCallback)
- **Data Utils**: date-fns for date manipulation
- **Backend**: Supabase (PostgreSQL)
- **Deployment**: Cloudflare Pages
## Project Purpose
Portfolio analysis tool for investors and futures traders to:
- Compare trading strategies vs benchmark assets (SPY, GLD)
- Calculate correlation matrices between assets (Spearman & Pearson)
- Analyze risk metrics and performance (Sharpe, Sortino, Max DD, etc.)
- Upload trade data via CSV and visualize results
- Apply contract multipliers to adjust metrics for futures trading
- Filter data by date range for period-specific analysis
## Known Issues & Tech Debt
### Current Tech Debt
1. **Unused Dependency**: Recharts (11.5KB) installed but never imported
- Should be removed from package.json
- Currently using Chart.js instead
2. **Oversized Components**: Violate 200-line standard
- PortfolioSection.tsx (591 lines) → needs refactoring into subcomponents
- App.tsx (351 lines) → extract sections into components
- MetricsTable.tsx (242 lines) → improved but still over limit
3. **TypeScript Violations**: 15 instances of `any` type
- usePortfolio.ts: 11 occurrences in trade/metrics types
- useMetrics.ts: 4 occurrences in sort comparisons
- dataUtils.ts: 1 occurrence in Metrics interface
### Known Bugs
1. **Supabase Upload Errors**: Intermittent 500 errors on large uploads
- Enhanced error handling added in commit 9fb7fdb
- Check error handling in upload hooks
- Verify row limits aren't exceeded on free tier
## Recent Features Added
- **Sortino Ratio Calculation** (commits 258ba3a, 9f25040)
- **Location**: Implemented inline in PortfolioSection.tsx (lines 133-158)
- Risk-free rate input state for user-specified risk-free rate
- Annualized downside deviation using sqrt(365) factor
- Corrected variance calculation (divides by total returns, not just negative)
- Displayed in portfolio stats section (line 535)
- **Note**: NOT in dataUtils.ts - kept in component due to portfolio-level context
- **Date Range Filtering** (commit 258ba3a)
- Filter portfolio data by start/end date
- Implemented in usePortfolio hook
- **Advanced Multi-Column Sorting** (useSorting hook)
- Sort by multiple columns with priority
- Custom comparison logic per column
## Architectural Constraints
- **Component Limit**: Max 200 lines per component (currently violated by 3 components)
- **Hook Pattern**: Custom hooks in `/src/hooks/`
- **Utils Pattern**: Pure functions in `/src/utils/`
- **Type Safety**: Strict TypeScript, no `any` types (15 violations exist as tech debt)
- **State Management**: Plain React hooks only - no Zustand or TanStack Query
## Key Components Structure
```
src/
├── components/
│ ├── AnalyticsControls.tsx (toggle Metrics/Portfolio/Correlation views)
│ ├── ContractInput.tsx (contract multiplier inputs)
│ ├── CorrelationHeatmap.tsx (correlation visualization)
│ ├── CorrelationSection.tsx (correlation analysis wrapper)
│ ├── CustomTooltip.tsx (chart tooltips)
│ ├── ErrorList.tsx (error display)
│ ├── Header.tsx (app header)
│ ├── MasterContractControl.tsx (apply contract value to all)
│ ├── MetricsTable.tsx (metrics display & selection)
│ ├── PortfolioSection.tsx (portfolio charts & analysis - 591 lines!)
│ ├── SessionComplete.tsx (completion UI)
│ ├── SortableHeader.tsx (table header with sort indicators)
│ ├── UploadedFilesList.tsx (list of uploaded files)
│ └── UploadSection.tsx (file upload to Supabase)
├── hooks/
│ ├── useContractMultipliers.ts (manage contract multipliers)
│ ├── useMetrics.ts (calculate trading metrics)
│ ├── usePortfolio.ts (portfolio data & date filtering)
│ └── useSorting.ts (advanced multi-column sorting)
└── utils/
└── dataUtils.ts (metric calculations, CSV parsing, correlations)
```
## Migration Context
Migrating 40 features from old app (35/40 completed). See `migration-tracker` skill for details.Related Skills
json-to-llm-context
Turn JSON or PostgreSQL jsonb payloads into compact readable context for LLMs. Use when a user wants to compress JSON, reduce token usage, summarize API responses, or convert structured data into model-friendly text without dumping raw paths.
opencontext
Persistent memory and context management for AI agents using OpenContext. Keep context across sessions/repos/dates, store conclusions, and provide document search workflows.
interactive-portfolio
Expert in building portfolios that actually land jobs and clients - not just showing work, but creating memorable experiences. Covers developer portfolios, designer portfolios, creative portfolios, and portfolios that convert visitors into opportunities. Use when: portfolio, personal website, showcase work, developer portfolio, designer portfolio.
hig-project-context
Create or update a shared Apple design context document that other HIG skills use to tailor guidance. Use when the user says 'set up my project context,' 'what platforms am I targeting,' 'configure HIG settings,' or when starting a new Apple platform project.
ddd-context-mapping
Map relationships between bounded contexts and define integration contracts using DDD context mapping patterns.
context7-auto-research
Automatically fetch latest library/framework documentation for Claude Code via Context7 API
context-window-management
Strategies for managing LLM context windows including summarization, trimming, routing, and avoiding context rot Use when: context window, token limit, context management, context engineering, long context.
context-manager
Elite AI context engineering specialist mastering dynamic context management, vector databases, knowledge graphs, and intelligent memory systems. Orchestrates context across multi-agent workflows, enterprise AI systems, and long-running projects with 2024/2025 best practices. Use PROACTIVELY for complex AI orchestration.
context-management-context-save
Use when working with context management context save
context-management-context-restore
Use when working with context management context restore
context-driven-development
Use this skill when working with Conductor's context-driven development methodology, managing project context artifacts, or understanding the relationship between product.md, tech-stack.md, and workflow.md files.
code-refactoring-context-restore
Use when working with code refactoring context restore