Garden planner
Pick a growing system, add crops, get compatibility findings. Works for soil beds and hydroponic systems.
Your roster
Compatibility check
Combined feed recommendation
What else fits
What this does
Pick a growing system (deep water culture, NFT, vertical, drip, media bed, wicking, or soil bed), add the crops you want to grow, and the planner checks whether they'll get along in a shared setup.
Some combinations are physical impossibilities: a tomato in NFT just doesn't fit. Others are chemical conflicts: lettuce wants EC under 1.4 mS/cm while spinach wants EC above 1.8 , no single reservoir target satisfies both. Many are subtler: two crops that both heavily uptake potassium will starve each other even when "EC is right."
Soil bed vs hydroponic system
The chemistry rules don't fire for soil beds. Soil acts as a buffer; pH and EC don't need to be tracked daily. What still matters: light, temperature, root competition, and allelopathy. A walnut tree's juglone is the textbook example outdoors; in vegetable gardens, the practical case is tomato root exudates that can mildly inhibit some companion plants.
In hydroponic mode the planner adds checks on EC overlap, transpiration load on the reservoir, and harvest-cycle mismatch (a 45-day lettuce in the same reservoir as a 90-day tomato means the reservoir's nutrient profile shifts under the lettuce's feet halfway through its life).
What the open rules check
These fire instantly as you edit:
-
System intersection. If you pick crops with no overlapping growing-system support, the tool flags it as an error. Pick a tomato and a lettuce together with no system selected: the tool tells you they only share two compatible systems (drip and media bed) and that you'll need a substrate-based setup.
-
EC range overlap (hydro only). Pairwise check across the roster. Worst case: ranges don't overlap at all, which is an error. Narrow overlap is a warning to target the middle and accept some compromise.
-
pH range overlap. Most edibles want 5.5-6.5, so this rarely fires, but it catches the few outliers.
-
Temperature overlap. Lettuce and tomato is the classic case: lettuce wants 13-22°C, tomato wants 18-28°C. The 4°C overlap from 18-22 is workable but narrow, and the planner warns about it.
-
Light requirement conflict. If a crop is light-strict (tomato, pepper) and demands a much higher DLI than the rest of the roster, the planner flags it. You'll either underlight the strict crop or scorch the others.
-
Root mass vs system capacity. NFT channels and vertical towers fail mechanically with heavy-root crops; the planner flags this when totals exceed typical capacity.
-
Allelopathy. Crops with notable root exudates (tomato, mint) get an info note that they may affect neighbors in a shared reservoir or bed.
-
Nutrient hog conflict. If two crops both heavily uptake the same nutrient (e.g., both potassium hogs), the planner warns about deficiency symptoms in whichever is the smaller or slower crop, even at "correct" EC.
-
Transpiration overload (hydro only). High-transpiration crops shrink the reservoir fast; the planner warns when you have multiple very-heavy transpirers.
-
Cycle length mismatch (hydro only). When one crop's harvest cycle is more than twice the length of another's, they end up wanting different nutrient profiles at the same time.
Crop suggestions
Click "suggest compatible crops" and the planner recommends additions that fit your current roster. It won't suggest anything that would trigger an error, and it favors crops that complement what you already have (different harvest windows, different nutrient demands, good pH/EC overlap).
Click "Add" on any suggestion to drop it into your roster. The compatibility check re-runs immediately.
A few practical things
Soil mode is more forgiving than hydro because soil buffers everything. A tomato and a lettuce in a raised bed coexist fine; in the same DWC reservoir they don't. Most companion-planting tradition was developed for soil and translates poorly to hydroponics.
Your roster is saved in the browser, so refreshing the page doesn't lose your work.