GoSeedly Yoga & Pilates Studio Kit / INSTALLATION
A clear path
to your workspace.
Bring the kit into your compatible Seedly installation, preserve existing work, and choose the starter content that fits your team.
01Start with your Seedly project.
Use your separately obtained Seedly CRM 5.8.4 installation with extension API 1, a configured backend, and working authentication. Keep a private source checkpoint, including existing customizations. Use Node.js 20 or newer.
02Run guided setup.
Extract the kit outside the Seedly source folder. From the kit directory, run node setup.mjs. The check identifies supported integration files, changed files, and destination conflicts before installation.
03Build and connect.
Deploy the included required helper from your authoritative backend source before connected edits. Follow QUICKSTART.md with your project’s existing package manager. Build the web app, sign in, and open your existing /location/YOUR_LOCATION_ID address. Verify access, navigation, and your important CRM flows.
Install the interface.
Choose the starting content.
Frontend installation and optional account content are separate. The included original studio helper is required for connected student creation and editing, the class timetable and starter setup. It checks the active account, native permissions and the current record state, preserves unrelated custom fields and unknown values, and invokes the native Seedly mutations inside one transaction. The helper exposes no stage mutation at all, so recording attendance never moves a native pipeline card. Deploy it from your authoritative backend source before connected edits. Pipeline presets and workflow drafts remain optional, and no schema migration is required. Follow QUICKSTART.md and STARTER_CONTENT.md for the exact integration. The frontend installer does not deploy your backend.
Pick your starting structure.
Starter setup offers Intro offers, Class series and memberships, Private sessions and small groups, Workshops and teacher training. Select individual pipelines and drafts, or use a suitable existing pipeline with the exact stage needed by the chosen draft.
Adapt each workflow.
All nine workflows remain inactive drafts. Review their native triggers, internal tasks, notes, timing, and assignments before publishing in Seedly. Timed waits do not check whether a task is complete or the stage has changed. These examples do not send customer messages.
Explore sample mode.
Explore twenty two fictional classes across the seven days in all five styles, and fourteen fictional students with one hundred and forty six attendance records between them. Six students record an intro offer and each one sits at a different step of the five, including one with nothing attended yet. Three classes are at capacity so the solid ring is visible, two are under half full so the thin ring is too, and four students record an active series. Example edits stay in the current page’s memory and reset on navigation or reload; sample students are never inserted into your CRM. Add ?example=1 to the home or custom-view URL. Leave sample mode to return to your real account.
INSTALLING WITH AN AI AGENT?
Give it the context.
Keep your custom work.
Existing records and unrelated custom source do not require starting over. Modified integration files need a deliberate merge.
Start with the copy-and-paste prompt in INSTALL_WITH_AI.md.
Read AGENT_INSTALL.md for routes, permissions, provider wiring, backend contracts, and compatibility requirements.
Run node setup.mjs check "/path/to/seedly" before modifying files.
Preserve existing extensions, providers, account controls, custom pages, and unrelated data.
Use a reviewed merge for changed integration files; never replace them with clean copies or bypass the installer’s fingerprints.
Deploy the required write helper from the authoritative backend source before connected edits; preserve existing functions and authorization.
Build and verify account access, original CRM modules, new screens, saving, and reload behavior before publishing.
Make the workspace
feel like your team.
Edit apps/web/components/devlaunch-yoga-pilates-studio/config.ts to set company name, descriptor, the promise line, and default pipeline name, then rebuild. The design applies to the entire web installation. Use separate web installations to evaluate different full-interface kits, rather than stacking their installers.
Starter removal, updates, and rollback
Review unused starter additions for removal in Starter setup before removing the frontend. Server checks preserve edited or published workflows and pipelines with jobs or references. The process targets recorded kit additions rather than sweeping account records.
Preserve your local configuration and source edits. Preview frontend removal with node setup.mjs remove "/path/to/seedly" --dry-run. The automatic uninstaller uses a private restoration receipt and refuses to overwrite later edits. Keep that receipt private and out of public hosting or source exports. Removing frontend files does not remove account data or undeploy backend functions.
For an update, follow the documented removal/install process and reapply your preserved changes. A manually merged installation needs its own private change ledger and reviewed source rollback.
What the workspace records
One student is a native contact-linked opportunity with a namespaced student record name, start date, intro offer label and recorded end date, converted flag and product label, teacher preference, an active series with its class total, classes remaining, expiry date and recorded price, student notes, attendance records and follow-up notes. The same person returning a year later with a new offer is a second record, because the offer and its outcome are the record. Other custom fields are preserved.
The timetable is a recurring weekday and start time somebody typed, held as one account-scoped record set rather than as opportunities. Selecting a class books nobody, a roster row is a record entered after the fact, and nothing reserves a spot, holds a place, promotes a waitlist or prevents a double booking. Spots taken counts the recorded booked and attended places for that class on that date; a late cancel freed the spot and a waitlist place never had one, so neither takes one. Classes attended is derived from the attendance log and never stored. The intro step is one shared rule used by the strip, both tables, the insights and the server’s own reading of a record. A recorded series price is a reference in integer minor units: it is never written into native opportunity value, it charges nobody, and there is no invoice, card, direct debit, refund or revenue recognition anywhere. A teacher label is text, so the kit computes no hours, rate, per-head pay or timesheet and assigns nobody to anything. Nothing connects to a watch, a ring, a strap or a health platform, and a prenatal class is a class name on a timetable: the kit records no condition, injury, clearance, consent or clinical note and makes no health or medical claim. Attendance records and follow-up notes are archive only, there is no delete anywhere in the kit, and empty values read as words rather than a dash.
The kit’s original operational screens share the frame with full CRM modules from your own Seedly source. Existing account permissions, feature gates, and configured providers still determine access to those modules.