Javis OS
Javis OS는 기업가를 돕는 에이전시 AI로, 업무를 지원하고 함께 성장합니다
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Marketing website for Greencaller, a business VoIP telephone system with an AI receptionist.
Built with Next.js 15 (App Router), React 19, TypeScript and Tailwind CSS v4, and statically rendered for SEO and speed.
npm install
npm run dev # http://localhost:3000
npm run build # production build (79 static pages)
npm start # serve the production build
The palette is derived from the supplied logo. The green was sampled directly from
greencaller-logo.png / greencallericon2.png:
| Token | Value | Use |
|---|---|---|
brand-500 | #00D16C | The logo green. Primary buttons, accents, active states |
brand-600/700/800 | #00B45C → #04723E | Hover states, icons on light backgrounds, accessible text |
brand-50/100/200 | #E8FDF2 → #90F2C2 | Tinted panels, badges, washes |
ink | #08211A | Body and heading text — a green-cast near-black so the page reads as one family |
deep | #04241A | Dark sections, announcement bar, CTA block |
cream | #FAFCFB | Alternating section backgrounds |
line | #DDE7E2 | Borders and dividers |
All tokens are defined once in app/globals.css under @theme, so changing the brand green
there updates the entire site.
Type: Schibsted Grotesk for display headings (tight tracking, weight 600), Inter for body —
both self-hosted via next/font with no layout shift.
| File | Purpose |
|---|---|
public/greencaller-logo.png | Header and footer wordmark (supplied) |
app/icon.png | Favicon, 64×64 — downscaled from greencallericon2.png |
app/apple-icon.png | Apple touch icon, 180×180 |
public/greencaller-icon-{192,512}.png | PWA manifest icons |
app/opengraph-image.tsx | Social share card, generated at build time via next/og |
The original 2000×2000 source files are kept at the repo root. The favicon is generated from
greencallericon2.png, so a 54 KB image is not shipped as a tab icon.
app/
layout.tsx Root layout: fonts, metadata, Organization + WebSite JSON-LD
page.tsx Home page (FAQPage + SoftwareApplication JSON-LD)
globals.css Tailwind v4 theme, design tokens, component classes
opengraph-image.tsx Generated OG image
sitemap.ts robots.ts manifest.ts
features/[slug]/ 15 feature pages (generateStaticParams)
solutions/[slug]/ 14 solution pages (by use case and by industry)
integrations/[slug]/ 14 integration pages
resources/[slug]/ 4 long-form guides
legal/[slug]/ Privacy, terms, cookies, legal notice
pricing/ compare/ contact/ demo/ signup/ login/ about/ product/
blog/ customers/ help/ changelog/ careers/ partners/ reviews/ download/
components/ Header (mega menu), Hero, feature sections, FAQ, Footer, …
lib/
site.ts Company details and navigation trees
content.ts Home page copy
pages.ts Feature / solution / integration page content
Content lives in lib/, not in JSX — editing copy or adding a feature page means editing one
data file, and the route, sitemap entry and nav link follow automatically.
Organization and WebSite sitewide; FAQPage on the home page
and every detail page; SoftwareApplication with AggregateRating on the home page;
Product / AggregateOffer on pricing; BreadcrumbList on all nested pages; ContactPage
and Article where relevant.sitemap.xml generated from the same nav data that renders the menus, so it cannot drift.robots.txt with the sitemap reference; /login and /signup are noindex.<h1> per page, ordered headings, real <nav>/<main>/<footer>
landmarks, breadcrumbs, descriptive link text and alt attributes.font-display: swap, priority hint on the logo,
no layout-shifting images, and CSS-only animations.Skip-to-content link, visible focus rings, aria-expanded on all disclosures, keyboard-operable
menus and accordions, prefers-reduced-motion honoured, and text contrast checked against the
brand palette (the green is used as a background behind dark ink, never as light-on-white body
text).
lib/site.ts holds the phone number, email addresses, registered address and social URLs —
these are placeholders and need replacing with the real details.components/LeadForm.tsx at
your CRM or form endpoint.lib/site.ts (site.domain); it drives canonicals, the sitemap
and Open Graph URLs.