Skip to content

devhaver/kabbalahindia.com

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Kabbalah Academy India

Kabbalah Academy India

The official landing page for KAI at kabbalahindia.com.

Nuxt 4 Vue 3 TypeScript Cloudflare Pages pnpm 11


Tech stack

Getting started

Requires Node 22+ and pnpm 11+.

git clone git@github.com:DevHaver/kabbalahindia.com.git
cd kabbalahindia.com
pnpm install
cp .env.example .env   # fill in NUXT_PUBLIC_WHATSAPP_URL at minimum
pnpm dev

Open http://localhost:3000.

Scripts

Script What it does
pnpm dev Start the Nuxt dev server on 0.0.0.0:3000
pnpm build Production build (cloudflare-pages preset)
pnpm preview Preview the production build locally
pnpm test Run the vitest suite
pnpm lint nuxt typecheck + ESLint
pnpm format Prettier write across the repo

Please run pnpm lint and pnpm test before opening a PR.

Project structure

app/
  assets/css/     # design tokens (gemstone palette, typography)
  components/     # primitives + section components
  composables/    # shared composables
  pages/          # landing page
  plugins/        # client-only plugins (analytics, etc.)
server/
  api/            # API route handlers
  middleware/     # request middleware
  utils/          # server-side helpers
tests/server/     # vitest unit tests
Designs/          # design source (design.pen, generated with pencil.dev)

Environment variables

Names are prefixed NUXT_ so they bind to runtimeConfig automatically. See .env.example for the full list with inline comments.

Variable Required Purpose
NUXT_PUBLIC_WHATSAPP_URL yes WhatsApp group invite or wa.me/... link
NUXT_PUBLIC_UMAMI_WEBSITE_ID no Umami site UUID; analytics is disabled when unset
NUXT_TELEGRAM_BOT_TOKEN no Telegram bot token for signup notifications
NUXT_TELEGRAM_CHAT_ID no Telegram chat ID to deliver notifications to
NUXT_SIGNUP_WEBHOOK_URL no Optional outbound webhook for signups
NUXT_SIGNUP_WEBHOOK_TOKEN no Bearer token sent with the webhook request

Never commit a .env file. .env* is gitignored except for .env.example.

Design

The source design lives in Designs/design.pen — generated with Pencil. Keep visual changes in sync with the design file; ping a maintainer if you need access to push updates back.

Deploy

Production deploys to Cloudflare Pages. Push to main, Cloudflare picks it up from the connected GitHub repo and builds with the Nitro cloudflare-pages preset. Environment variables are configured in the Cloudflare Pages dashboard under Settings → Environment variables.

The Dockerfile at the repo root is unused in production and kept only for local container experiments.

Contributing

PRs are welcome. A few notes to make review smoother:

  1. Open an issue first for anything larger than a small fix — it's faster than a back-and-forth on a PR.
  2. One concern per PR. Mixing a refactor with a feature makes things hard to review.
  3. Run pnpm lint and pnpm test locally. CI will run them too, but it's slower.
  4. Conventional commit messages (feat:, fix:, chore:, docs:, …).
  5. Keep visual changes consistent with the design file in Designs/.

Reporting a security issue

Please do not open a public issue for security reports. Email the maintainers privately and we will respond as soon as possible. Coordinated disclosure is appreciated.


Built by DevHaver.

About

This is the landing page for the Indian specific context for the Bnei Baruch organisation.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors