Probably either too much water or a pH that is too high (alkaline). You can drown the plant by watering it too much and if the soil doesn't drain well, then excess watering will compound the problem.
You mentioned compost - that's good. But recognize that organic matter holds onto water well - that's one of its virtues - and so if you are watering it too much two things will likely happen:
First, you'll end up leaching a lot of the nutrients from the soil.
Second, you'll make the soil conditions inhospitable to your plants.
You can check if they need watering by sticking your finger into the soil maybe an inch. If it is moist, it doesn't need watering. If it is mucky... well, you're watering too much. If it is dry, then water it.
Also, don't water at night or in the heat of the day. Ideally, you'd water early in the morning when the ground can soak up the water.
Tomatoes are particularly susceptible to problems due to poor watering. A condition called "blossom end rot" can occur due to a calcium deficiency that is usually the result of inconsistent watering.
Hope that's helpful.