PRISM-INSIGHT
13개의 특화 AI 에이전트가 한국·미국 주식을 실시간 분석합니다. 오픈소스, 무료
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗The public marketing site for SORMALITICS, served at sormalitics.com.
The product lives at app.sormalitics.com (the SORMALITICS repo).
next build → out/). No server, no API, no cookies, no analytics.app() / APP_URL in src/lib/site.ts./api/contact/submit, /api/careers), which allows this origin via lib/http/marketingCors.ts in the app.app.sormalitics.com/pricing?plan=…&cycle=…¤cy=…;
the app's pricing page resumes checkout from those params./dashboard/*, /auth/*, /api/*, /legal/*, …)
are 308-redirected to the app by vercel.json, so emailed links and bookmarks keep working.pnpm sync here (copies from ../SORMALITICS), then pnpm type-check && pnpm build, then push.pnpm install
pnpm dev # http://localhost:3001
pnpm build # writes out/
vercel.json is the only source of security headers. With output: 'export', headers() in
next.config.mjs does nothing. If hosting or export mode changes, re-establish every header there.'unsafe-inline' on script-src/style-src: the static export emits inline hydration
scripts with no per-request nonce, and there is no server to inject one. Residual risk is low (no cookies,
no user content, tight connect-src). If dynamic/user content is ever added, switch to build-time sha256
hashes of each inline script and drop 'unsafe-inline'. Try dropping it from style-src first (test a build).https://app.sormalitics.com/api/csp-report (report-uri + report-to).
The app must implement that endpoint (accept application/csp-report and application/reports+json, return 204).preload: confirm this domain is submitted/accepted at https://hstspreload.org.includeSubDomains HSTS means a taken-over subdomain inherits trust..github/dependabot.yml) and a pnpm audit workflow (.github/workflows/audit.yml) run automatically.
The audit workflow needs a committed pnpm-lock.yaml.node scripts/verify-headers.mjs [url] compares live headers to vercel.json; the verify-headers workflow runs it
after production deploys and every 6 hours (needs Vercel's GitHub integration to emit deployment events).secret-scan workflow runs gitleaks. Also enable GitHub secret scanning + push protection in repo settings.public/.well-known/security.txt — update Expires yearly, create the security@ mailbox, and publish the /security policy page it links to.main, least-privilege
access, and keep production secrets out of Preview environment variables.SORMALITICS repo; this static site cannot validate it.NEXT_PUBLIC_APP_LIVE is unset, so every app link (Sign in, Start free, Get started,
store checkout, FISI sign-up) lands on /in-development — a "launching soon" page
that says what the visitor tried to do and offers early access by email. Old app URLs
(/dashboard, /auth/…) redirect there too. Contact and Careers open the visitor's
email client (hello@ / careers@) instead of posting to the app.
At launch (once app.sormalitics.com is up and tested):
pnpm app-live on → commit → push (switches the old-URL redirects to the app)NEXT_PUBLIC_APP_LIVE=true → redeploy
Both, or links and redirects disagree. pnpm app-live off + removing the variable reverses it.1. Ship this site to a preview
git init, commit, push to a new public repo AlloBTeQ/sorma_frontendmark.sorma_frontendmark. Framework: Next.js. No env vars needed.*.vercel.app URL and check the page, mobile included.2. Give the app its subdomain (no downtime; the root keeps serving the app)
sormalitics (app) project → Settings → Domains → add app.sormalitics.com.
If DNS is not on Vercel, add CNAME app → cname.vercel-dns.com at the DNS host.NEXTAUTH_URL → https://app.sormalitics.com/api/oauth (NextAuth is mounted at /api/oauth)APP_URL → https://app.sormalitics.com, plus any NEXT_PUBLIC_*_URL pointing at the rootCANONICAL_HOST → app.sormalitics.com (required: left as sormalitics.com it bounces every app request back to the marketing site and refuses POSTs. The staff portal stays at support.sormalitics.com.)CONTACT_EMAIL → the inbox for the Contact form (defaults to [email protected])MARKETING_ORIGINS only when testing forms from a vercel.app preview of this siteSTORAGE_PROVIDER=s3https://app.sormalitics.com
and redirect URI https://app.sormalitics.com/api/oauth/callback/google. Keep the old ones until cutover is done.https://app.sormalitics.com/api/webhooks/stripe
(/api/webhooks/stripe, same path as today). Editing keeps the signing secret. Stripe does not follow redirects,
so this must be done before step 3.sormalitics-documents-prod → Permissions → CORS → add https://app.sormalitics.com.3. Cut over the root domain
sormalitics.com and www.sormalitics.com.sormalitics.com, and www.sormalitics.com redirecting to the apex.sormalitics.com shows the landing; sormalitics.com/dashboard lands on
app.sormalitics.com/dashboard; a pricing card opens Stripe checkout; Stripe shows webhook deliveries succeeding.Users signed in on the old domain will need to sign in once more on app.sormalitics.com (cookies don't move between hosts).
app.sormalitics.com/ go to /dashboard (or login) instead of rendering the old landing; set noindex on the app.