Plant Database

veggie.farm needs a structured plant database behind the articles.

Articles explain how to think. Data helps readers compare crops, plan beds, filter by season, understand spacing, and eventually build calendars around frost dates and growing zones.

Current schema

The first records focus on practical growing conditions:

The newer external import uses a more explicit provenance model. Every record keeps its source URL, discovery path, imported timestamp, parsed growing fields, and a reference to the original source image URL without copying the image file.

Curated records

These records are hand-reviewed examples. They are small on purpose: they set the shape and tone for article-ready plant data.

Rare Seeds import

Rare Seeds is useful for cultivar-level growing facts: sun exposure, germination window, ideal germination temperature, seed depth, plant spacing, frost hardiness, plant size, and sometimes direct-sow or indoor-start notes.

The current import is a broad catalog pass, not a hand-picked sample. It covers vegetables, herbs, flowers, grains, perennial seed crops, and unusual edible plants. That breadth matters because future tools should be able to reason about pollinator plantings, cover crops, seed-starting conditions, ornamentals near vegetable beds, and crop rotations from one common data layer.

The import is deliberately fact-focused. It does not republish catalog descriptions. It does not copy product images into this repository. Source image URLs are retained only so a human editor can review the original page later.

Catalog breadth

The category labels come from Rare Seeds store sections where each product was discovered. They are not final veggie.farm taxonomy, but they show the current import covers far more than the small curated vegetable and fruit pages.

Field coverage

Imported plant facts

This table is a working dataset, not final editorial copy. It is meant to feed future crop pages, comparison tables, planting calendars, and planner tools after review.

Source policy

Seed catalog pages are useful sources for factual growing conditions. The site should not become a copy of catalog prose.

For third-party sources, store facts and source URLs. Write original veggie.farm notes. Do not republish product descriptions or product photography unless licensing permits it.

Source candidates

Source Best use Current status
Rare Seeds Seed depth, germination, ideal temperature, spacing, frost hardiness, botanical names Broad import created with source URLs and fact-only fields
Garden.org plant database Cultivar-level plant facts and botanical references Candidate source; example page was unavailable during review
Atami journal article Journal fields, observation rhythm, measurement ideas Used as app inspiration, not plant data
GrowVeg planner page Planner features and data requirements Used as app inspiration, not copied UI or datasets

Import workflow

Rare Seeds category and product pages can be converted into draft JSON records with a full pass:

node scripts/import-rareseeds.mjs --delay-ms=180 --fetch-timeout-ms=15000 --resume=false --quiet

For a slower, more conservative pass:

node scripts/import-rareseeds.mjs --delay-ms=900 --quiet

The output is written to src/data/external/rareseeds-products.json, with an import summary in src/data/external/rareseeds-summary.json. Records should still be reviewed before they are promoted into curated crop pages or src/data/plants.json.

Garden.org plant pages can be probed with:

node scripts/import-gardenorg-page.mjs https://garden.org/plants/view/112242/Carrot-Daucus-carota-var-sativus-Danvers-Half-Long/

If the source page is unavailable, the script returns a structured unavailable status rather than failing the workflow.

Field notes

Data is only useful when it can be trusted. Each imported record should keep its source, retrieval date, and enough context to review later.