ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기NYC High School AI Application Navigator
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
AI-powered NYC public high school admissions navigator. AdmitDay helps families turn a scattered admissions process into a grounded, personalized school list.
Every year, roughly 75,000 NYC families navigate high school admissions. The information exists across DOE pages, School Information Finder, NYC-SIFT, school sites, Facebook groups, and spreadsheets, but it is hard to filter and harder to personalize.
AdmitDay is built around a simple product bet: parents do not need more raw information. They need to know which schools are plausible, why they match, and what to do next.README 전문 보기 ↗AI-powered NYC public high school admissions navigator. AdmitDay helps families turn a scattered admissions process into a grounded, personalized school list.
/school/[dbn]Every year, roughly 75,000 NYC families navigate high school admissions. The information exists across DOE pages, School Information Finder, school sites, Facebook groups, and spreadsheets, but it is hard to filter and harder to personalize.
AdmitDay is built around a simple product bet: parents do not need more raw information. They need to know which schools are plausible, why they match, and what to do next.
AdmitDay's live surfaces are /find discovery, school detail pages, and a signed-in shortlist:
/find: users narrow schools by hard rail filters (under a "Non-Negotiables" heading), optionally set a starting point (ZIP or subway station) to filter and sort by distance, then use the ask box for plain-language criteria that re-rank results without silently removing schools. Rows link to /school/[dbn] detail pages and can be saved to the shortlist./api/find/ask./shortlist): a signed-in family's saved schools, split into SHSAT and Main list sections, with expandable rows and a print view. Saved lists are stored in Postgres via /api/saved-schools.The older standalone /chat product surface is decommissioned.
components/ui/.dbn.text-embedding-3-small, semantic chunking by identity, current MySchools programs, academics, and activities, plus deterministic filtering.rate_limits table), with an in-memory fallback if the store errors.lib/trace.ts) for per-request LLM cost/latency/token/retrieval tracing on /api/find/ask and /api/rationale — logging only, never on the response path, and never carries question/answer/prompt/chunk text. /api/find/ask returns that request's trace id to the client; rating an answer (FeedbackRow, via /api/find/feedback) writes a Langfuse score against it, joining user feedback to the trace it belongs to./find and school pages does not. Signed-in users can delete their account (/api/account).main; GitHub Actions runs Jest on pushes and PRs, the ask eval (eval-ask.yml), a Playwright smoke test of the signed-out parent flow on production (smoke.yml), and a weekly README freshness check (readme-freshness.yml).Data currency is the core differentiator. One command runs the refresh pipeline:
npm run refresh:data
The pipeline runs build_school_data.py, validates counts and required fields, writes the validated JSON and data/schema-summary.json, rebuilds embeddings with scripts/embed-schools.ts, and then seeds Postgres with scripts/seed-schools.ts. Embeddings run before the DB update so a provider/key failure cannot leave /find data ahead of RAG. It refuses to write if the scrape looks structurally wrong, such as a large school-count drop, duplicate DBNs, or missing required fields.
The refresh fails loudly if MySchools coverage drops too far: at least 95% of schools must have a program with both program_code and provenance.source == "MySchools", or validation rejects the scrape.
Source roles:
dnpx-dfnc (the Fall 2025 InfoHub HS directory plus 2024-25 School Quality Reports, via scripts/enrich_doe_directory.py) provides the school list, DOE directory fields, School Quality Report scores, and the high-impact flag (impact percentile >= 80).lib/shsat-cutoffs.ts, mirrored in build_school_data.py) come from NYC DOE "Specialized High School Offers" press releases and carry the 2024, 2025, and 2026 offer years per specialized-school DBN, each with a source URL and the date it was last verified. getShsatCutoff(dbn) returns the latest year; getShsatCutoffs(dbn) returns all published years.Scheduled refresh runs from the VPS, where the env files already live. scripts/vps-data-refresh.sh pr runs in /root/admitday-data (a dedicated AdmitDay checkout; /root/app on the VPS is a different app), sources /root/admitday-data/.env.local if present, then the root-owned secret files /root/.env.local and /root/.env.agents, scrapes, validates, rebuilds embeddings, prunes stale remote refs, pushes a data/weekly-refresh branch, dispatches CI, and opens or updates a data PR (found by number, not branch name) with the tracked data artifacts. Its body reports the school count, added and removed DBNs, the program-count change, the open-house count, and when the run fetched the data. If the scrape or validation step fails, the runner never just logs it -- it opens or updates the single Data refresh failed GitHub issue with the failure summary. If nothing changed, no PR is opened. scripts/vps-data-refresh.sh merge is the data refresh runner's publication gate: it merges only when the generated PR changes exactly schools.json, data/schema-summary.json and data/school-embeddings.json, and the GitHub CI test check is green. The VPS never writes to Postgres: merging the data PR deploys schools.json to Vercel, and the daily Vercel cron /api/cron/seed-schools (10:00 ET, 14:00 UTC) loads it into Postgres from there -- a data PR that merges reaches Postgres at the next run of that cron. The database secret exists only in Vercel, not on the VPS.
Cadence: twice weekly (Monday and Thursday, 12:00 UTC) during admissions season, September through March; monthly (the first Monday of the month) April through August; scripts/vps-data-refresh.sh pr/merge can also be run manually at any time. The crontab lines are committed at scripts/vps-data-cron.txt -- install them on the VPS with:
crontab -l | { cat; cat scripts/vps-data-cron.txt; } | crontab -
AdmitDay uses product rules and tests to keep the AI parts bounded:
npm run eval:ask is the live eval harness for the ask box (evals/run-ask-eval.ts). It runs weekly through the Anthropic Batch API and on ask-path PRs (not forks), records Langfuse dataset runs, and gates merges; admitday_eval.py is historical.n/a (not reported) or none (not offered) mark, never a sentence./disclaimers) is linked from the footer.Key lessons from building the retrieval layer:
AdmitDay is also a testbed for a guarded autonomous coding workflow. A coordinator on a DigitalOcean VPS picks up GitHub issues labeled agent-ok, loads shared rules from AGENTS.md, runs Claude Code on task branches, verifies with tests and build checks, asks a second model to review the diff (strict verdict), and opens PRs back on GitHub.
The full operator workflow, including who uses it, where it runs, session discipline, compact task briefs, cost gates, Langfuse observability, and future model routing, lives in docs/agent-pipeline.md.
git clone https://github.com/neinna/AdmitDay.git
cd AdmitDay
npm install
cp .env.local.example .env.local
# Add ANTHROPIC_API_KEY, OPENAI_API_KEY, and Postgres vars to .env.local
npm run dev
Live in production at https://www.admitday.com. Recent work shipped the Postgres data layer, the Fall 2025 DOE data with School Quality Report scores, the shortlist, distance from a starting point, per-IP rate limiting, and the guarded autonomous agent pipeline. Five moderated user sessions with NYC parents are complete; active development is focused on the October application window.