Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CMH Cleveland — Static Site

Redesigned static site for Chevrah Mevakshei Hashem (cmhcle.com), a Cleveland Heights beis medrash. Replaces the previous Wix site with a hand-built, brand-owned shell. Donations remain on Shul Station; email signups go to Netlify Forms.

Stack

  • Plain HTML, one file per page, no JS framework.
  • Tailwind CSS compiled locally to site/assets/css/tailwind.css (not the Play CDN — the CDN script ships a console.error in production that we deliberately avoid).
  • Small vanilla JS for the mobile nav drawer (site/assets/js/nav.js) and an optional AJAX wrapper around the newsletter form (site/assets/js/newsletter.js).
  • Deploy target: Netlify (for Netlify Forms).

Layout

/
  index.html               served at /
  src.css                  Tailwind entry (compiled into site/assets/css/tailwind.css)
  tailwind.config.js       theme tokens (navy / gold / cream palette, Frank Ruhl Libre for Hebrew + serif)
  README.md
/site
  index.html               canonical home (publish dir root)
  netlify.toml             headers, redirects, form notification docs
  /pages
    events.html
    donate.html
    donate-oz-vehadar-shas.html
    donate-sponsor-shabbos.html
    donate-chai-club.html
    donate-toameha.html
    donate-kiddish.html
    donate-shalosh-sudos.html
    donate-kinyan-seforim.html
    contact.html
    gallery.html
    mikvah.html
    zmanim.html
    thanks.html
  /assets
    /css   tailwind.css (compiled), site.css (small overrides)
    /js    nav.js, newsletter.js
    /img   logo.png, hero.jpg, og-card.jpg, banner.jpg, home-bg.jpg, frankel-logo.png
           campaigns/<slug>.jpg (one per donate page)
           gallery/01.jpg ... 06.jpg
           events/<slug>.jpg
    /docs  seforim-list.pdf

netlify.toml sets publish = "." from the site/ directory, so the deploy roots at site/ and the URLs are /, /pages/donate.html, etc.

Local development

No build step required to view the site:

npx serve site/
# or
npx http-server site/ -p 4173

Open http://localhost:3000 (or whichever port the server picks).

Rebuilding Tailwind

Only needed when you add new Tailwind utility classes to any HTML file. The compiled CSS is committed.

npx tailwindcss@3 -i ./src.css -o ./site/assets/css/tailwind.css --minify

Or watch mode while editing:

npx tailwindcss@3 -i ./src.css -o ./site/assets/css/tailwind.css --watch

Donations

All seven campaigns link out to Shul Station (https://shulstation.com/cmh). Card data, tokenization (Accept.blue), and receipts stay 100% on Shul Station's side — PCI scope does not enter this repo.

Why not an iframe? Shul Station sends X-Frame-Options: DENY (confirmed against the live origin), so browsers refuse to render the donation page inside our shell. The donate pages therefore use a styled link-out CTA. The button is brand-matched so the handoff feels designed, not orphaned.

Do not add a card form to this repo. If Shul Station ever supports framing, the iframe approach is documented in the original plan and can be swapped back in.

Zmanim

Same constraint as donations: shulstation.com/cmh cannot be iframed. site/pages/zmanim.html is a styled link-out to the Shul Station portal where zmanim are actually calculated and rendered.

Email list — Netlify Forms

Two forms are wired up:

  • newsletter — lives in the footer of every page.
  • contact — lives on pages/contact.html.

Both use data-netlify="true" plus a netlify-honeypot="bot-field" to deflect spam. Submissions land in the Netlify dashboard at Site → Forms.

After the first deploy, configure email notifications so a human at CMH actually sees signups:

  1. Netlify dashboard → Site SettingsFormsForm notificationsAdd notificationEmail notification.
  2. Event: New form submission.
  3. Form: newsletter. Email: chevrahmh@gmail.com. Subject: New CMH newsletter signup.
  4. Repeat for form: contact. Email: chevrahmh@gmail.com. Subject: New CMH contact message.

Free Netlify tier: 100 form submissions / month. CSV export available from the dashboard.

Editing content

  • Events: edit site/pages/events.html directly. There is no CMS. Each event is a <article> block — copy an existing one and change the date, title, and copy.
  • Photos: drop JPGs into site/assets/img/gallery/ named 01.jpg, 02.jpg, ... then add a corresponding <figure> block to site/pages/gallery.html. Keep images under ~1MB; ~1200px on the long edge is plenty for retina.
  • Campaign copy: edit site/pages/donate-<slug>.html directly. Each donate page is a self-contained file with header, hero, copy block, and a "Donate via Shul Station" CTA.
  • Footer / contact info / EIN: updates need to land in every HTML file (no shared template at runtime). Search for 3650 Severn Road to find every footer and update them together.

Deploying

Option A — git push (recommended): connect this repo to Netlify in the dashboard. Netlify auto-deploys on main push. No build command needed (Tailwind is already compiled and committed); publish dir is site (from netlify.toml).

Option B — CLI:

npx netlify-cli deploy --prod --dir=site

Contact / org info

Out of scope (Shul Station owns these)

  • Card processing / Accept.blue tokenization
  • Member portal / login
  • Zmanim calculation
  • Men's Mikvah booking flow (link out to the existing booking page)

Image attribution

Every image in site/assets/img/ was migrated from the prior cmhcle.com Wix site. Two portfolio photos hosted under non-fb637b Wix paths returned 403 on direct fetch — gallery is currently 6 photos. Drop additional photos into gallery/ and add <figure> blocks to gallery.html as more arrive.

About

Website for Chevrah Mevakshei Hashem — a Cleveland Heights beis medrash devoted to Torah and tefilla

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages