ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Open sourcing CPA studying
Translation pending
EducationPython · TypeScriptGitHub @HaydenHarmsOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
An open-source CPA exam study platform with an AI tutor built in.
OpenCPA is a free, community-maintained alternative to commercial CPA review courses. It pairs an adaptive question engine and realistic task-based simulations with a personal AI tutor powered by Claude.Read the full README ↗An open-source CPA exam study platform that you can study with Claude.
OpenCPA is a free, community-maintained alternative to commercial CPA review courses. It pairs an adaptive question engine and realistic task-based simulations with Claude as a study partner, connected through your own Claude account.
Live: opencpa.pages.dev
Status: alpha. The platform is deployed end to end (site, API, database, CI). The question bank grows in reviewed batches, FAR first: today there are 318 FAR questions (with 771 new-number versions, 1,089 problems in all), 21 FAR simulations and 25 BAR questions. Every task in the 2026 FAR blueprint has at least two reviewed questions, and FAR simulations are under way toward 50 across all three blueprint areas. The FAR goal is 1,600 distinct questions, the size of Becker's FAR bank; AUD, REG, ISC and TCP come after FAR is complete, with a long-term goal of about 2,000 questions per section.
Live now
Planned
| Layer | Tech |
|---|---|
| Frontend | React + Vite on Cloudflare Pages |
| API | Hono on Cloudflare Workers |
| Database | Cloudflare D1 (SQLite) |
| Claude | Remote MCP connector on the API; students use their own Claude account |
| Storage | Cloudflare R2 (planned: exhibits, media) |
| Auth | GitHub OAuth; anonymous device id when signed out; email link planned |
opencpa/
├── apps/
│ ├── web/ # React + Vite frontend
│ └── api/ # Hono Worker API, D1 migrations
├── packages/
│ ├── engine/ # Grading, FSRS scheduling, mastery, session and mock exam selection, exam clock
│ └── schema/ # Content schema (zod), shared types
├── content/ # One YAML file per question/simulation
│ ├── far/ aud/ reg/
│ └── bar/ isc/ tcp/
└── scripts/ # Content validation + bundling
mainAll content lives in content/ as plain files, so contributions are just pull requests. CI validates each item against the schema.
id: far-leases-0001
type: mcq
blueprint:
section: FAR
area: Area II — Select Balance Sheet Accounts
topic: Leases
skill: Application
review:
status: draft # only "reviewed" items are served
references: [ASC 842-20-30-1]
stem: >
A lessee signs a 5-year lease ...
choices:
- { id: A, text: '$84,248', rationale: 'Correct: $20,000 × 4.2124.' }
- ...
answer: A
explanation: >
...
Original content only. Do not submit AICPA-released questions or material from commercial review providers (Becker, UWorld, Gleim, etc.). They are copyrighted.
git clone https://github.com/HaydenHarms/opencpa.git
cd opencpa
pnpm install
pnpm db:migrate:local # create the local D1 database
pnpm dev # web on :5173, API on :8787
Requires Node 22+ and pnpm 10+. pnpm test runs the engine and schema tests; pnpm content:validate checks every content file. To try sign-in locally, see docs/accounts.md.
Pushes to main deploy automatically:
apps/web (build command pnpm --filter @opencpa/web build, output apps/web/dist). Set VITE_API_URL to the API's address and NODE_VERSION=22.CLOUDFLARE_API_TOKEN (Workers Scripts Edit + D1 Edit) and CLOUDFLARE_ACCOUNT_ID.ALLOWED_ORIGINS (apps/api/wrangler.toml). Add any new domain there.Forking to run your own instance? Create your own D1 database, put its id in apps/api/wrangler.toml, and follow the same steps.
Contributions are welcome, especially new questions, simulations, and explanations reviewed by CPAs or CPA candidates. See CONTRIBUTING.md for the content format and review checklist.
OpenCPA is not affiliated with the AICPA, NASBA, or any state board of accountancy. "CPA" is used descriptively. Content is for study purposes only. See the site's Terms of Use and Privacy Policy.
Code: MPL-2.0. Content: CC BY-SA 4.0.