iArt.ai
AI 모션 그래픽 소프트웨어, 누구나 사용할 수 있는 After Effects 대안, 텍스트 프롬프트로 몇 분 안에 애니메이션·설명 영상 제작
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Weekly AI/ML research brief: finds this week's significant papers per domain and delivers a 10-minute brief every Monday. Next.js, Gemini Flash, Neon, Vercel.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Weekly AI/ML research brief, organised by domain. All AI calls use Gemini Flash.
Components Map: docs/components-map.png.
• / shows the latest brief from Neon, or the committed sample brief when the database is empty or not configured.
• /api/health reports database, Gemini, email, cron and admin configuration status (never secrets).README 전문 보기 ↗Live: https://pulse-ai-brief.vercel.app (also https://research-pulse-sandy.vercel.app)
Weekly AI/ML research brief, organised by domain. All AI calls use Gemini Flash.
Components Map: docs/components-map.png.
cp .env.example .env.local # fill in keys (optional for step 1: the seed brief renders without them)
npm install
npm run dev
/ shows the latest brief from Neon, or the committed sample brief when the database is empty or not configured./api/health reports database, Gemini, email, cron and admin configuration status (never secrets).npm run ingest -- --domain rag, npm test)npm run brief -- --domain rag runs Gemini scoring, ranking, writing and verification on live datanpm run live-check runs adversarial checks against the real model (hallucination, hype, prompt injection)npm run eval -- --init then label papers in eval/golden.json, then npm run eval for recall/precisionnpm run compose -- --week 2026-W40; page now shows the real brief, archive at /brief/<week>)/settings, edits domains with no code change; AI suggests search terms)/api/run, /api/step, /status)npm run email:preview renders it without sending; -- --send sends one test)docs/FAILURE_MODES.md, docs/EVALUATION.md, docs/DEPLOY.md)/search, which finds a topic, paper, author or domain across the last 26 weekly briefs (no AI call)/saved lists them (kept in the reader's browser, no account)Import the repo into Vercel, then add the env vars from .env.example.
Monday 00:00 UTC, Vercel Cron calls /api/run, which creates the week's job graph (idempotent) and starts working
through it. Twelve more Vercel Cron entries (00:10 to 06:00 UTC) call /api/step. Each step runs jobs for up to about
4 minutes and returns, inside Vercel's 5-minute function limit. No job makes more than one Gemini call. A full week
needs about 20 minutes of work (115 jobs), so the first five or six steps normally finish it and the rest are slack
for retries. Vercel Cron is the only scheduler in use.
hf ─┐
fetch ×10 (one per day: the week + 3-day look back) ─► prefilter ─► judge ×N ─► write ─► verify ─► synth ─┐
├─► compose ─► email
(other domains in parallel) ──────────────────────────────────────────────────────────────────────────────┘
Why the 3-day look back: arXiv publishes in nightly batches, and anything submitted after Thursday afternoon
(US Eastern) only goes public on Monday evening, after the Monday-morning run. Each run therefore also fetches
the 3 days before its week and skips papers an earlier run already covered, so every paper appears exactly once,
in the first brief after it became public (see lib/coverage.ts).
Failures degrade instead of stopping: a failed fetch day is skipped (brief flagged stale), failed scoring shows abstract excerpts, and at the cutoff (Monday 02:00 UTC) the brief publishes with what is ready, marked partial, and is recomposed once if late domains finish. If no domain produced any content, nothing is published and the previous brief stays in place.
Vercel sends CRON_SECRET to the cron routes automatically.
After compose publishes, an email job sends the brief through Resend: top three, one line per domain card,
and a link to the full brief, with a plain-text part. Guarantees:
All data is stored in Neon: briefs (one row per published week, the archive the page reads), domains
(the monitored domains edited on Settings), and kv (job queue state, leases, cached scores, "email sent" guards;
rows expire). Tables are created automatically on first use, or explicitly with npm run db -- migrate.
npm run db -- migrate # create tables
npm run db -- import-brief 2026-W40 # load a locally generated brief
npm run db -- status # row counts, weeks, domains
Claiming a job is a single atomic INSERT ... ON CONFLICT ... WHERE expired statement, so concurrent serverless
invocations cannot run the same job. The Postgres code is tested against a real in-process Postgres (PGlite).
docs/components-map.png: the Components Map (source: components-map.html)docs/FAILURE_MODES.md: where it can go wrong, what stops it, and the evidence (including known gaps)docs/EVALUATION.md: measured results from a real weekdocs/DEPLOY.md: step-by-step deployment and verification