TreeMap
무료 오픈소스 디스크 사용량 시각화 도구로, 사각형 트리맵·중복 파일 탐색·디스크 가득 예측·정리 시 파일을 휴지통으로만 이동한다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Joben Resume is an AI-assisted resume builder SaaS built with Next.js App Router, TypeScript, Supabase, Clerk, Stripe, Resend, Upstash, and Anthropic.
Core Features
• Resume builder with ATS-focused scoring
• AI review and bullet improvement workflows
• Cover letter generation and PDF export
• Subscription upgrades (Stripe)
• Automated welcome and follow-up emails
• Operational observability via health endpoint, webhook idempotency, and email/event tracking
2) Configure environment variables
Create .env.local and define all required values:README 전문 보기 ↗Joben Resume is an AI-assisted resume builder SaaS built with Next.js App Router, TypeScript, Supabase, Clerk, Stripe, Resend, Upstash, and Anthropic.
npm install
Create .env.local and define all required values:
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEYCLERK_SECRET_KEYCLERK_WEBHOOK_SECRETNEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_ANON_KEYSUPABASE_SERVICE_ROLE_KEYUPSTASH_REDIS_REST_URLUPSTASH_REDIS_REST_TOKENANTHROPIC_API_KEYSTRIPE_SECRET_KEYSTRIPE_WEBHOOK_SECRETSTRIPE_PRO_PRICE_IDNEXT_PUBLIC_APP_URLRESEND_API_KEYRESEND_FROM_EMAILCRON_SECRETLATEX_SERVICE_URL (optional; defaults to http://localhost:3005/api/compile)npx supabase start
npx supabase db push
Notes:
supabase/migrations/ only.npm run dev
Optional local PDF service (if needed outside Docker compose):
cd latex-service
npm install
npm run dev
npx tsc --noEmit
npm run lint
npm run test
npm run build
e2e/public/** covers unauthenticated flows (marketing pages, legal pages,
sign-up's legal gate, protected-route redirects, wrong-password sign-in) and
needs no extra setup beyond local Supabase running.
e2e/authenticated/** (dashboard, resume CRUD, Stripe checkout) needs a
real signed-in session, which requires test-mode Clerk + Stripe
credentials — see .env.test.local.example. Copy it to .env.test.local
(gitignored) and fill in:
pk_test_/sk_test_ keys (a separate
Clerk app from whatever .env.local points at is safest, but a dev
instance is inherently test-safe)sk_test_ secret key and test price_... id —
never reuse a live Stripe key here, playwright.config.ts refuses to
start if it detects _live_ in any of these three keysE2E_TEST_USER_EMAIL / E2E_TEST_USER_PASSWORD for a throwaway account
e2e/global-setup.ts creates (or reuses) via the Clerk Backend API and
seeds directly into the local users table (no webhook forwarder needed
locally); e2e/global-teardown.ts deletes it again after the run.npm run test:e2e # headless run
npm run test:e2e:ui # interactive UI mode
The Stripe checkout spec only asserts a real Checkout Session URL comes
back — it never completes a purchase. The webhook-driven plan-upgrade
lifecycle is covered separately by tests/api/webhooks-stripe.test.ts.
/api/health200 + status=ok: integrations and DB probe are healthy503 + status=degraded: missing critical integration config or failed DB probe/api/cron/followup-7dAuthorization: Bearer <CRON_SECRET>x-cron-secret: <CRON_SECRET>dryRun=true|falselimit=1..500retries=0..3Examples:
curl -X POST "https://your-domain.com/api/cron/followup-7d?dryRun=true&limit=25" -H "Authorization: Bearer <CRON_SECRET>"
curl -X POST "https://your-domain.com/api/cron/followup-7d?limit=100&retries=1" -H "Authorization: Bearer <CRON_SECRET>"
/api/billing/checkout/api/billing/portal/api/webhooks/stripeSTRIPE_SECRET_KEY (sk_test_... for dev, sk_live_... for prod), STRIPE_PRO_PRICE_ID, STRIPE_WEBHOOK_SECRET.env.prod.example for the full var list and RUNBOOK.md's "Local Stripe Testing" section for stripe listen/stripe trigger usagepublic.webhook_events: idempotency claims for Clerk/Stripe webhook eventspublic.email_events: welcome/followup send outcomes and dedup keys (source_event_id)public.product_events: product funnel instrumentation (resume_created -> ... -> checkout_started)STRIPE_SECRET_KEY and STRIPE_PRO_PRICE_ID are set.NEXT_PUBLIC_APP_URL points to current environment URL.STRIPE_WEBHOOK_SECRET matches webhook endpoint secret.CLERK_WEBHOOK_SECRET is configured.webhook_events.pk_live/sk_live on localhost.pk_test_..., sk_test_...) in .env.localemail_events.status, error, and source_event_id.showUpgrade response.npx supabase db push).npx supabase start).For deployment, incident response, and rollback procedures, see RUNBOOK.md.