Lalabase
티켓·문서·근무시간·고객대화를 한 곳에 모아 KI로 검색, 소프트웨어 기업 고객 프로젝트용, 오픈소스로 자체 서버·독일 클라우드에 배포
LodgeNet은 하나의 대시보드에서 전체 프리메이슨 로지를 관리합니다 웹사이트 회원 회의록 재무 모금 AI 스폰서 검색 상품 및 자선활동까지
LodgeNet runs the whole Masonic lodge from one dashboard: website, members, minutes you can speak, treasury, fundraisers, an AI sponsor search, merchandise and charities.
비즈니스JavaScript · HTMLGitHub @WinstonAIButler온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Masonic web hosting and organization
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A platform that gives Masonic lodges their own website, a merch store that funds their charities, a calendar for Stated Communications and public fundraisers, and a Secretary's desk for meeting minutes.
This repo currently holds the static prototype site:
index.html: home pagefeatures.html: detail on the website, store, calendar and minutes toolsdemo.html: interactive demo with a sample lodge (/demo#store, #calendar, #members, #minutes open a tab directly)pricing.html: pick a plan ("Start now" in the header lands here) and FAQowner.html: the private owner's hub at /owner (see Owner's hub below), with assets/owner.js. Not linked from the site's menulogin.html: the Login tab. Sign in, create an account, reset a password, and see "My lodges"; a lodge's account owner manages its roll and invites herestart.html: a new, blank lodge in the dashboard layout; /start?plan=starter|lodge|district (Starter hides the store)lodges/murrells-inlet-368.html: dashboard for Murrells Inlet Lodge No. 368 (served at /lodges/murrells-inlet-368). Each lodge page sets window.LODGE (name, Grand Lodge, members, officer seats, events, store items) before loading assets/demo.jsassets/styles.css and assets/demo.js: shared styles and demo logicassets/brand/: the LodgeNet logo. lodgenet-logo.png is the full crest and wordmark on a transparent background (for light backgrounds), lodgenet-crest.webp is the crest alone, used in every page's header. favicon.ico, apple-touch-icon.png, assets/brand/icon-192.png and the 1200×630 social preview og-image.png are cut from the same crest. The site's colors come from it: slate blue #3b5870 / #4e6a83, gold #c9a54e (#856823 for gold text on light backgrounds), and a diamond checkered floor; headings and the wordmark are Montserratassets/auth.js and assets/login.js: sign-in (see Accounts below); api/config.js is the one Vercel function; api/_public.js holds the live Supabase project URL and public key, used when Vercel has no SUPABASE_* variablessupabase/schema.sql: accounts database; supabase/murrells-inlet-368.sql adds that lodgeassets/vendor/supabase.umd.min.js: supabase-js 2.117.3 (MIT)assets/vendor/jspdf.umd.min.js: jsPDF 2.5.1 (MIT), loaded only when someone saves minutes as a PDFEdits on the demo and lodge pages save automatically in the viewer's browser (localStorage, one key per page). The bar under the dashboard header can Export them as JSON, Import a JSON export, or Start over. To make an export a lodge's permanent starting data, copy its values into that lodge page's window.LODGE. Checkout takes no payment.
The Secretary fills in a short form; the full Stated Communication write-up (and the PDF) is generated from it in the lodge's template wording. Each part of the minutes is a section plugin in the MS list in assets/demo.js: its fields, plus how it reads in longForm(). Opening, attendance, previous minutes and closing are always on; the rest can be switched on or off per lodge with the Sections button (saved as minuteSections). Anything left blank on the short form is left out of the write-up. Minutes saved in the old free-text format are converted on load.
Lodges sign in with Supabase (Auth for email and password, Postgres for the lodge's data). /api/config gives the browser the project URL and public key from Vercel's environment (SUPABASE_URL and SUPABASE_ANON_KEY, or the NEXT_PUBLIC_ / publishable-key names the Vercel Supabase integration sets). With neither set, the site runs browser-only exactly as before and /login says sign-in isn't switched on.
lodges holds its plan (starter, lodge or district) and its dashboard as one JSON document in data, the same shape as an Export.lodge_members gives each account a role on a lodge: owner manages the roll, officer edits, member reads. Row Level Security enforces it, and the site can only change lodges.data, so plans are set in SQL./login. The brother chooses Create account with that email, and once the email is confirmed the invite becomes a membership (claim_invites()).slug in window.LODGE and loads <script src="/assets/auth.js" data-app="/assets/demo.js">: the dashboard opens only for that lodge's members and saves to the account. The first officer to sign in carries any edits saved in their browser up to the account./login#code) and redeem_plan_code() puts the lodge on the code's plan at no charge (lodges.comped). Codes are added in the SQL editor, e.g. insert into plan_codes(code,plan,max_uses) values('LODGE-XXXX-XXXX','lodge',10), and can't be read from the site. Keep real codes out of this repo.api/billing.js sends an owner to Stripe Checkout for the $19 / month Lodge plan, opens the Stripe Customer Portal for "Manage billing", and on return reads the subscription back from Stripe into lodges.billing_status (no webhook). It needs SUPABASE_SERVICE_ROLE_KEY and a Stripe secret key: STRIPE_SECRET_KEY from Vercel's Stripe integration, or the one saved in the owner's hub. Save the Customer Portal settings once in the Stripe Dashboard before using Manage billing. Comped lodges never see Subscribe.Setup: create a Supabase project (or add the Supabase integration in Vercel, which sets the variables), run supabase/schema.sql then the lodge's SQL in the SQL editor, and under Authentication → URL Configuration set the Site URL to the live domain and add https://*.vercel.app/** as a redirect URL for previews.
/owner is the LodgeNet owner's view of every lodge (plan, no-charge flag, brethren, account owner), every account, the plan codes, and the Stripe API key. Run supabase/owner-hub.sql after schema.sql, with the owner's email in place of ADMIN_EMAIL, then sign in at /owner with that account (create it at /login first and confirm the email).
admin_* functions that refuse anyone whose confirmed email isn't in platform_admins. That table can't be read or changed from the site; add another owner in the SQL editor.lodges/<slug>.html is still added in the repo), and create or end plan codes.platform_secrets (row stripe_secret_key), which only the service role can read; the hub sees just test/live and the last four characters. Server code should use Vercel's STRIPE_SECRET_KEY when it's set and this row otherwise.The site is static, so Vercel serves it with no build step. Import this repo in Vercel (Add New → Project), keep the framework preset at "Other", and deploy. Every push to main redeploys. vercel.json turns on clean URLs, so pages are served at /features, /demo and /pricing.
Run npx serve . from the repo root (it also serves clean URLs). Opening the files directly won't resolve the /assets/... paths.