Skip to content
View packages

GoSeedly Flooring Store 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 showroom visit helper is required for connected creation, editing and starter setup. It preserves native account permissions and unrelated custom fields, re-checks all eleven cross-field rules, 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 Showroom visits, Builder and designer accounts, Commercial bids, Installer partner handoffs. 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 twelve fictional showroom visits with 29 recorded sample rows: 22 still out, four of those overdue, and seven recorded as returned. Seven visits carry a recorded quote, three of them accepted and one declined, and three record an installer handoff across two salespeople and two installer partners. Every sample date is computed from the day you open the page, so the red overdue tags, the outstanding chips and the struck returned chips are all visible without editing anything. Example edits stay in the current page’s memory and reset on navigation or reload; sample visits 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-flooring-store/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 showroom visit is a native contact-linked opportunity with a namespaced visit name, recorded visit date, room labels, a whole square footage reference, a budget band, a salesperson label, visit notes, an immutable supported currency, a quote group of amount in minor units, quoted date, decision and decision date, an installer handoff group of partner label, handoff date and install target date, and archive-only sample rows with stable IDs carrying a product label, a category and its checked out, due back and returned dates. The recorded quote amount stays separate from native opportunity value. Other custom fields are preserved.

Eleven cross-field rules are validated by one shared implementation used by the editor, every view and the server, identically on create and on save: a board cannot be checked out before the recorded visit date, a due back or returned date cannot precede the checked out date, a recorded quote needs both an amount and a quoted date, an unquoted visit cannot hide a draft amount or date, a recorded decision needs a decision date while a quote still waiting must leave it blank, a decision date cannot precede the quoted date, a quoted date cannot precede the visit date, a handoff needs both a partner label and a handoff date, a handoff requires an accepted quote, and an install target date requires a recorded handoff it cannot precede. Four non-rules are deliberate: a returned date is never constrained against a due back date because a board that came back late is still back, two boards of one product may sit on one visit, an install target never waits for a board to come home, and a quote amount is never constrained against the square footage or the budget band. Nothing prices anything: there is no product catalog, price book, square-foot rate, markup, margin or pricing advice, and the recorded square footage is never multiplied by anything. A recorded due back date reminds nobody, because the kit sends no message, email or text of any kind and a workflow draft writes an internal task or note only. A recorded handoff reserves no installer, checks no availability, builds no install schedule and creates no calendar appointment. A sample row is a record of a board somebody took home, not a stock level: the kit holds no inventory, reads no supplier catalog and orders nothing. There is no point of sale, no invoicing and no payments. Day counts are calendar arithmetic at UTC noon, so they never shift across a daylight saving boundary. 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 returned board never moves a card and moving a card never rewrites a recorded sample, quote or handoff.

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.