Ethical Capital Labs

1 Overview

Ethical Capital Labs is an experimental platform for values-aligned finance education, deployed client-side on Cloudflare Pages. Each tool maintains transparency, educational classification, and clear regulatory compliance as an informational resource provided by a registered investment adviser.

⚖️ Regulatory Classification: Educational and informational tool (not direct advisory service) 🔍 Compliance Status: Pre-launch compliance verification completed September 2025

Platform URL: labs.ethicic.com Repository: ~/dev/labs Deployment: Cloudflare Pages with automated build pipeline

2 Active Experiments

2.1 Dryvestment (/divestment/)

Tagline: “Where values and valuations meet”

Purpose: Identity-first brief builder that translates activist conviction into institutional language, recasting moral imperatives as material risk considerations.

Functionality: - Builds printable, role-aware divestment briefs - Targets specific decision makers and investor identities - Provides evidence-backed talking points - Includes counterargument responses - Generates model resolutions and next steps

Technical Architecture: - Pure client-side implementation - Deterministic outputs (same inputs = same brief) - No data collection or personalization - Content loaded from content/bds_pack.json

2.2 Portfolio Time Travel (/simulator/)

Purpose: Monte Carlo withdrawal simulator with accumulation/decumulation phases, tax-aware toggles, and deterministic scenario presets.

Functionality: - Interactive portfolio strategy simulation - Withdrawal rate analysis and safe withdrawal calculations - Tax-aware modeling capabilities - Deterministic scenario presets for reproducible exploration - Monte Carlo analysis for retirement planning

Technical Architecture: - React-based interactive interface - Client-side Monte Carlo calculations - Chart.js for data visualization - No backend dependencies or data persistence

3 Technical Infrastructure

3.1 Architecture Overview

graph TB
    A[Cloudflare Pages] --> B[Static Assets]
    B --> C[Dryvestment Tool]
    B --> D[Portfolio Simulator]
    B --> E[Email Signup Widget]
    E --> F[Buttondown API]
    E --> G[LACRM Integration]
    F --> H[KV Storage - Anonymized Metrics]

3.2 Development Stack

  • Frontend: React, Tailwind CSS, DaisyUI theme system
  • Build: Babel transpilation, ESLint/Prettier linting
  • Deployment: Cloudflare Pages with npm run build
  • APIs: Cloudflare Functions for signup processing
  • Storage: KV namespace for anonymized telemetry

3.3 Design System

  • Theme: Custom “labs” DaisyUI theme (data-theme="labs")
  • CSS Framework: Tailwind with shared token system in /assets/css/labs.css
  • Typography: Outfit + Raleway font pairing
  • Components: Consistent DaisyUI primitives across experiments

4 Data Handling & Privacy

4.1 Educational Architecture & Compliance

  • Client-Side Processing: All calculations happen in-browser for core functionality
  • Educational Purpose: Hypothetical scenarios only, not personalized investment advice
  • Transparent Data Practices: Email collection for educational newsletter (disclosed)
  • Regulatory Compliance: Meets Utah RIA advertising and educational content requirements

4.2 Email Signup Integration

Endpoint: functions/api/signup.ts

Data Collection:

{
  "email_hash": "SHA-256 hashed email (anonymized)",
  "timestamp": "signup_timestamp",
  "source": "tool_or_page_identifier",
  "tags": "optional_campaign_tags",
  "user_agent": "browser_info",
  "referer": "source_page"
}

Integration Flow: 1. Buttondown API: Subscribe to newsletter (if BUTTONDOWN_API_KEY present) 2. LACRM Integration: Create/update contact (if LACRM_API_TOKEN configured) 3. KV Storage: Store anonymized metrics regardless of upstream availability

Privacy Controls: - Emails hashed before storage (irreversible anonymization) - No personal data persisted in KV storage - Optional integration - tools work without signup

5 Content Architecture

5.1 Dryvestment Content Management

  • Content Pack: content/bds_pack.json contains all narrative components
  • Structure: Openers, talking points, counterarguments, resolutions, sources
  • Identity Model: CFA-style investor categories with thumbprint customization
  • Citations: All claims backed by linked sources and evidence

5.2 Simulator Configuration

  • Scenario Presets: Deterministic configurations for common use cases
  • Parameter Ranges: Validated input boundaries for realistic modeling
  • Calculation Engine: Monte Carlo methodology with configurable iterations

6 Security & Compliance

6.1 Educational Disclaimers & Regulatory Compliance

All tools prominently display required disclaimers: - “Educational Use Only” - Tool output is hypothetical and for educational purposes - “Not Investment Advice” - Does not constitute investment advice or recommendations - “No Security Recommendations” - Tool does not recommend buying or selling specific securities - “Consult Professionals” - Users advised to consult qualified professionals before acting - “RIA Disclosure” - Platform provided by Ethical Capital, a registered investment adviser

6.2 Conflict of Interest Disclosure

  • Lead Generation Purpose: Email signups may result in solicitation for advisory services
  • Educational vs. Advisory Separation: Free tool distinct from paid advisory services
  • No Client Relationship: Tool usage does not create investment advisory relationship

6.3 Code Security

  • Static Analysis: ESLint security rules active
  • Dependency Management: Regular updates and vulnerability scanning
  • Content Security: No dynamic code execution or unsafe operations
  • API Security: Function-level authentication for external integrations

6.4 Compliance Framework

  • Utah RIA Compliance: Meets educational content requirements under Utah Administrative Code R164
  • Investment Advisor Act: Educational classification maintained through disclaimers and non-personalized content
  • Advertising Rules: Content reviewed for compliance with anti-fraud provisions
  • Data Protection: Privacy policy accurately discloses data collection and processing
  • Record Keeping: All platform content archived per SEC Rule 204-2 requirements

7 Operational Procedures

7.1 Development Workflow

# Local development
npm install
npm run lint          # ESLint + Prettier
npm run build         # Transpile and build
npx serve public      # Local preview

# Deployment
git push origin main  # Triggers Cloudflare Pages build

7.2 Content Updates

  • Dryvestment: Update content/bds_pack.json with new talking points or sources
  • Simulator: Modify presets or calculation parameters in component
  • Design System: Extend shared tokens in public/assets/css/labs.css

7.3 Monitoring & Maintenance

  • Usage Analytics: KV namespace provides signup metrics without personal data
  • Error Monitoring: Cloudflare Pages provides build and runtime error reporting
  • Performance: Client-side architecture eliminates server-side bottlenecks
  • Updates: Regular dependency updates and security patches

8 Integration with Main Site

8.2 Lead Generation

  • Email signups feed into main marketing automation
  • LACRM integration provides sales pipeline visibility
  • Optional campaign tagging for source attribution

8.3 Content Syndication

  • Experiments may inform blog content or client education
  • Successful tools may be integrated into main platform
  • Research insights contribute to thought leadership

9 Future Development

9.1 Planned Enhancements

  • Additional educational tools for portfolio construction
  • Enhanced mobile responsiveness and accessibility
  • Integration with main site’s content management system
  • Advanced analytics for content effectiveness

9.2 Experimental Pipeline

  • Risk tolerance assessment tools
  • Ethical screening simulators
  • Investment committee decision frameworks
  • Client education modules

This Labs platform serves as ECIC’s innovation sandbox while maintaining strict privacy standards and educational focus, supporting the firm’s thought leadership and client education objectives.