spb/spboucher.ai Public
spboucher.ai — personal website of Simon-Pierre Boucher.
TypeScript 93.4%
HTML 5.5%
CSS 1%
1<!--2 CLAUDE.md3 spboucher.ai — Personal Website4 Author: Simon-Pierre Boucher5 Mail: contact@spboucher.ai6-->78# CLAUDE.md — Personal Website (www.spboucher.ai)910This file provides guidance to Claude Code when working on this repository.1112## Project Overview1314Personal academic and developer website for **Simon-Pierre Boucher**, Professor in the Department of Administrative Sciences at Université du Québec en Outaouais (UQO). The site presents his academic profile (research, publications, teaching) and a portfolio of macOS applications he develops (the Zyquo suite).1516- **Domain:** www.spboucher.ai17- **Hosting:** Served locally on node `m2u64` and exposed publicly via **ngrok**18- **Stack:** React / Next.js, Tailwind CSS, shadcn/ui, Framer Motion19- **Language of the site:** English2021## Mandatory File Header Convention2223**Every source file created or modified in this project (`.tsx`, `.ts`, `.jsx`, `.js`, `.css`, `.md`, config files, etc.) MUST begin with a header comment in this exact format:**2425```26<!--27 FILENAME.ext28 spboucher.ai Web29 Author: Simon-Pierre Boucher30 Mail: contact@spboucher.ai31-->32```3334Adapt the comment syntax to the file type:3536- **HTML / Markdown / MDX:** `<!-- ... -->`37- **TS / TSX / JS / JSX / CSS:**38 ```ts39 /*40 FILENAME.tsx41 spboucher.ai Web42 Author: Simon-Pierre Boucher43 Mail: contact@spboucher.ai44 */45 ```46- **Shell / YAML / Python:** `#` prefixed lines with the same four fields.4748Never omit this header. When editing an existing file that lacks it, add it.4950## Dev & Deployment5152```bash53npm install # install dependencies54npm run dev # local dev server (default: http://localhost:3000)55npm run build # production build56npm run start # serve production build57```5859### ngrok exposure (node m2u64)6061The site runs on node `m2u64` and is exposed with ngrok bound to the custom domain:6263```bash64ngrok http --domain=www.spboucher.ai 300065```6667- Keep the production build (`npm run build && npm run start`) behind ngrok, not the dev server.68- If the tunnel drops, restart the ngrok command above on m2u64.6970## Site Structure7172```73/ Home (hero, bio, highlights)74/research Publications, working papers, presentations75/teaching Courses taught76/apps Zyquo macOS app portfolio77/cv CV summary + contact78```7980## Homepage Content (use this copy)8182### Hero8384- **Name:** Simon-Pierre Boucher85- **Title:** Professor — Department of Administrative Sciences86- **Institution:** Université du Québec en Outaouais (UQO), Gatineau — Pavillon Alexandre-Taché87- **Tagline suggestion:** "Financial econometrics researcher and macOS/AI developer."88- **Contact:**89 - Academic: simon-pierre.boucher@uqo.ca90 - Personal: contact@spboucher.ai91 - GitHub: https://git.spboucher.ai92- **Languages:** Bilingual — French and English9394### About / Bio9596Simon-Pierre Boucher is a Professor in the Department of Administrative Sciences at Université du Québec en Outaouais (UQO). His research focuses on financial econometrics, commodity markets, monetary policy announcements, high-frequency finance, volatility modelling, textual analysis, and financialization. He is completing a Ph.D. in Business Administration (Finance and Insurance) at Université Laval under the supervision of Prof. Marie-Hélène Gagnon and Prof. Gabriel Power. Alongside his academic work, he builds native macOS applications focused on AI and local LLMs (the Zyquo suite).9798### Education99100- **Ph.D. in Business Administration (Finance and Insurance)** — Université Laval, 2020–Present101- **M.Sc. in Business Administration (Finance)** — Université Laval, 2017–2019 (Thesis: *Impact of Commuting Times on Residential Property Values: Evidence from the Province of Québec*)102- **B.B.A. in Business Administration (Finance)** — Université Laval, 2013–2017103104### Research Highlights105106**Publication:**107- Boucher, S.-P., Gagnon, M.-H., & Power, G. J. (2025). *Speculative Trading in Energy Markets: Evidence from Macroeconomic Surprises.* The Energy Journal.108109**Working papers:**1101. *Has Financialization Changed the Impact of Macro Announcements on U.S. Commodity Markets?* — SSRN Working Paper, May 2022 — https://ssrn.com/abstract=4009291112. *Modelling Volatility Dynamics Between Commodity ETFs and Their Net Asset Value using BVAR and HAR Models* — January 20231123. *Returns and Volatility Around FOMC Announcements: A High-Frequency Analysis of Policy Tone and Novelty* — November 2023113114**Conference presentations:** CRREP Research Day (2022, 2023); Canadian Economics Association 61st & 62nd Annual Conferences (2022, 2023); 7th Winter Workshop on Commodity Markets, Mont-Tremblant (2024).115116### Teaching (Université Laval — Lecturer, 2021–Present)117118| Code | Course | Level | Terms |119|------|--------|-------|-------|120| GSF-3100 | Capital Markets | Undergraduate | F2021, W2021, F2022, W2023 |121| GSF-6053 | Financial Econometrics I | Graduate | W2022, W2025 |122| GSF-1500 | Financial Management | Undergraduate | S2022 |123| GSF-6028 | Financial Theory | Graduate | W2024 |124125Teaching Assistant at Université Laval (2018–2021): GSF-2101 Portfolio Management, GSF-2102 Corporate Finance, GSF-6008 Corporate Finance, GSF-6025 Financial Strategies & Policies I, GSF-6028 Financial Theory.126127### Technical Skills (for a skills section)128129- **Languages & frameworks:** Python, TypeScript/JavaScript, R, MATLAB, SAS/STATA, SQL, Julia, C++, Swift/SwiftUI, LaTeX, React/Next.js, Node.js, FastAPI, Flask, Streamlit, Tailwind CSS, shadcn/ui, Framer Motion130- **Data & econometrics:** Pandas, NumPy, statsmodels, scikit-learn; VAR, BVAR, HAR, GARCH, DCC-GARCH; event studies, high-frequency analysis, realized volatility; FRED, FMP, EODHD, Yahoo Finance, World Bank, IMF, OECD131- **AI, LLMs & agents:** Claude/Anthropic SDK, OpenAI API, OpenRouter, Vercel AI SDK, Ollama, llama.cpp, GGUF, Hugging Face; embeddings, RAG, vector databases; tool-augmented agents; LoRA, QLoRA, SFT fine-tuning132133## Apps Page — Zyquo macOS Suite (REQUIRED)134135The `/apps` page is a portfolio of six native macOS applications. **Each app card MUST display: the app icon, the name, a short description, and three buttons/links (GitHub Repo, Release, Download DMG).**136137App icons: store them in `/public/icons/` (e.g. `/public/icons/zyquo-cloud.png`). If an icon file is missing, fetch it from the corresponding GitHub repo (app icon asset) or use a styled placeholder with the app's emoji until the real icon is added — but the icon slot must always be present in the layout.138139### 1. ☁️ Zyquo Cloud — Multi-provider AI chat140Native macOS chat client supporting multiple AI providers (Anthropic, OpenAI, and more) in a single unified interface.141- Repo: https://git.spboucher.ai/zyquo-cloud142- Release: https://git.spboucher.ai/zyquo-cloud/releases/tag/v1.0.0143- DMG: https://git.spboucher.ai/zyquo-cloud/releases/latest/download/ZyquoCloud.dmg144145### 2. 💻 Zyquo Local — 100% local LLMs (MLX)146Run large language models entirely on-device with Apple MLX. Private, offline, no API keys required.147- Repo: https://git.spboucher.ai/zyquo-local148- Release: https://git.spboucher.ai/zyquo-local/releases/tag/v1.0.0149- DMG: https://git.spboucher.ai/zyquo-local/releases/latest/download/ZyquoLocal.dmg150151### 3. 🤖 Zyquo Agent — Autonomous agent for the Mac152An autonomous AI agent that can act on your Mac: tool calling, task automation, and multi-step workflows.153- Repo: https://git.spboucher.ai/zyquo-agent154- Release: https://git.spboucher.ai/zyquo-agent/releases/tag/v1.0.0155- DMG: https://git.spboucher.ai/zyquo-agent/releases/latest/download/ZyquoAgent.dmg156157### 4. 🌍 Zyquo Atlas — AI-native web browser158A web browser built around AI from the ground up: page understanding, summarization, and assisted browsing.159- Repo: https://git.spboucher.ai/zyquo-atlas160- Release: https://git.spboucher.ai/zyquo-atlas/releases/tag/v1.0.0161- DMG: https://git.spboucher.ai/zyquo-atlas/releases/latest/download/ZyquoAtlas.dmg162163### 5. ⚒️ Zyquo MLX — On-device model forge164Fine-tune and quantize models directly on Apple Silicon: LoRA/QLoRA fine-tuning, quantization, and model management with MLX.165- Repo: https://git.spboucher.ai/zyquo-mlx166- Release: https://git.spboucher.ai/zyquo-mlx/releases/tag/v1.0.0167- DMG: https://git.spboucher.ai/zyquo-mlx/releases/latest/download/ZyquoMLX.dmg168169### 6. 🔀 Zyquo Router — Local LLM gateway170A local gateway that routes requests across LLM providers and local models through a single unified endpoint.171- Repo: https://git.spboucher.ai/zyquo-router172- Release: https://git.spboucher.ai/zyquo-router/releases/tag/v1.0.0173- DMG: https://git.spboucher.ai/zyquo-router/releases/latest/download/ZyquoRouter.dmg174175## Design Guidelines176177- Clean, professional academic aesthetic with a modern developer edge.178- Dark mode support.179- Use Tailwind CSS + shadcn/ui components; Framer Motion for subtle animations only.180- Fully responsive (mobile-first).181- App cards on `/apps` in a responsive grid (1 col mobile, 2 cols tablet, 3 cols desktop).182- Semantic HTML, accessible (alt text on all app icons).183184## Rules for Claude1851861. **Always add the file header comment** (see "Mandatory File Header Convention") at the top of every file you create or edit.1872. The entire site content is in **English**.1883. Never remove or alter the app download links (Repo / Release / DMG) — they must remain exactly as listed above.1894. Every Zyquo app card must include its icon and description.1905. Keep the ngrok/m2u64 deployment instructions in the README up to date if ports or commands change.1916. Prefer server components (Next.js App Router) where possible; client components only when interactivity requires it.192