Open-Source Cold Email & Warmup Platform
Warmbly는 메일함을 예열하고 캠페인 전송·답변 triage를 지원하는 오픈소스 콜드 이메일 플랫폼입니다
링크드인 게시물·캐러셀·댓글을 초안·검토·승인·예약까지, 저장된 예시와 전문 컨텍스트로 내 스타일 그대로
Draft, review, approve, and schedule LinkedIn posts, carousels, and comments from saved writing examples and professional context, so the output still reads as you.
마케팅TypeScript · PLpgSQLGitHub @usamashahzaib온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Qalam is a LinkedIn writing and publishing system with voice memory, approvals, analytics, and multi-client agency workflows. The product is Qalam; byqalam.com is the domain.
Project rules for AI coding tools live in CLAUDE.md and AGENTS.md. Read them before changing code.
app/globals.css)supabase/migrationsvercel.json)extension/npm install # also installs the git hooks
cp .env.example .env.local
npm run dev
Fill .env.local from .env.example. Without Supabase, AI, and LinkedIn credentials, the marketing site renders but app features will fail.
| Command | Purpose |
|---|---|
npm run dev | Local dev server |
npm run build | Production build. prebuild blocks the build if any local migration is not applied to the configured database |
npm run typecheck | Regenerates route types, then runs tsc |
npm run lint | ESLint |
npm test | Vitest unit and integration tests (__tests__/) |
npx playwright test | Browser tests (tests/) |
npm run check:dashes | Blocks em and en dashes (also runs as a pre-commit hook) |
npm run check:rls | Audits database RLS policies and grants |
npm run check:migrations | Verifies every local migration is applied |
npm run eval:prompts | Prompt contract evals |
| Path | What lives there |
|---|---|
app/ | Marketing pages, SEO landing pages, free tools, legal, blog |
app/(app)/ | Signed-in app: writer, library, calendar, analytics, approvals, voice, carousels, career, agency, desk, passport |
app/connect, app/drop, app/proof, app/pitch | Client-facing token pages for agencies (no Qalam account needed) |
app/api/ | Route handlers, including webhooks and cron jobs |
app/admin/ | Platform admin area |
components/ | Shared UI, app shell, agency components |
lib/ | Business logic, prompts, pricing, SEO content |
lib/server/ | Server-only helpers: auth, workspace, LinkedIn, payments, Supabase, agency |
proxy.ts | Host routing, route protection, security headers |
supabase/migrations/ | Database schema history |
docs/ | Product, positioning, design, and audit documents |
scripts/ | Readiness checks, git hooks, evals |
| Concern | File |
|---|---|
| Plans, prices, plan features | lib/pricing.ts |
| Career add-on catalog | lib/career-pricing.ts |
| Product and use-case copy | lib/site-content.ts |
| SEO constants and route inventory | lib/seo.ts |
| Global metadata and JSON-LD | app/layout.tsx |
| Protected app routes | lib/protected-routes.ts |
| Domain types | types/domain.ts |