Skip to content
View packages

GoSeedly Dog Trainer 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.

01

Start 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.

02

Run 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.

03

Build 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 dog record helper is required for connected creation, editing and starter setup. It preserves native account permissions and unrelated custom fields, keeps the six skills a fixed ordered set, re-checks every cross-field rule, and compares the current record state before saving. It exposes no stage mutation at all, so pipeline stages stay in your CRM’s own views under your existing roles. Deploy the helper from your authoritative backend source before connected edits. Pipeline presets and workflow drafts remain optional. 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 Evaluations and new dogs, Private training plans, Group classes and puppy programs, Board and train. 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 eleven fictional dogs, nine of them in five recorded plans and two with no plan yet, so the no-plan strip has something real to show. Their sixty-six skill entries spread across all five levels 0 to 4, so every state of the quarter-filled square is visible without editing anything, and seven of them carry the focus flag so the red ring appears in more than one row. Three packs record two or fewer sessions left, so the red plan column and the renewal words both appear. The set carries twenty-six logged session rows plus two archived rows, twelve owner notes and two trainer labels. Example edits stay in the current page’s memory and reset on navigation or reload; sample dogs 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-dog-trainer/config.ts to set company name, descriptor, 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 dog in training is a native contact-linked opportunity with a namespaced dog name, breed label, age reference, owner label, trainer label, staff notes, an evaluation (date, findings, recommended plan), a plan and pack (plan label, pack size, sessions used, purchase date, pack price), an immutable supported currency, a fixed ordered set of six skills, and two archive-only child collections with stable IDs: session rows with a date, a duration in minutes, the skills worked and a homework note, and owner note rows with a date and a note. The recorded pack price stays separate from native opportunity value. Other custom fields are preserved.

The six skills are a fixed ordered set, sit, stay, recall, loose leash, place and greeting, and a save that adds, removes, renames or reorders them is refused, because the matrix only works if every row has the same columns. A skill level is a whole number from 0 to 4 and a position on this kit’s own four step display scale: it is not a certification, a title, a test result, a standardised assessment or a claim about a dog’s behaviour in any other setting, and the level is written as a word beside every square so the display never depends on colour or shape alone. The recorded sessions used counter is a number staff type at the desk; it is not derived from the session log, and the two are reported beside each other and never reconciled or subtracted, because a trainer counts a pack down at the desk and writes the log up in the field. Cross-field rules are identical on create and on save and re-checked by the server: a recorded plan needs a recorded evaluation date, a pack purchase date may not precede the evaluation, sessions used may not exceed the pack size, a price needs a pack, a skill recorded at the top level may not also be the current focus, a recorded level needs the date it was recorded, and at most three of the six skills may carry the focus flag at once. Three non-rules are deliberate: a session date is not constrained against the pack purchase date because a dog is often seen before the pack is bought, two sessions may share a date, and skill levels are never constrained against each other or against the number of logged sessions. A recorded evaluation date, session date or trainer label reserves nobody and creates no calendar appointment: there is no scheduling engine, availability check, capacity model or calendar sync. There is no payment processing, pack selling, invoicing, refund or credit balance anywhere, no training methodology, curriculum, behaviour protocol, behaviour advice, aggression assessment or temperament test, no veterinary, medical, health, vaccination, medication or insurance record of any kind, no owner messaging of any kind, and no video, photo or media library. Recorded pack totals are grouped by currency and never added across currencies. The pipeline stage stays your CRM’s own: the helper exposes no stage mutation at all, so recording a skill level never moves a card and moving a card never changes a skill level.

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.