食材相克 (Food Incompatibility) Explained: The Complete HowToCook Guide
食材相克 is a traditional Chinese dietary concept describing food combinations that may interfere with nutrient absorption, cause digestive discomfort, or theoretically produce harmful substances when consumed together.
The HowToCook repository by Anduin2017 documents practical interpretations of 食材相克 in tips/食材相克与禁忌.md. This guide explains the science behind these pairings and shows how developers can programmatically access this dietary data.
What Is 食材相克?
食材相克 translates to "food incompatibility" or "clashing ingredients." Rooted in traditional Chinese medicine and dietary culture, it identifies specific ingredient pairings that may reduce nutritional value or cause adverse reactions.
According to the HowToCook source code in tips/食材相克与禁忌.md, these interactions fall into three categories:
- Nutrient interference – Compounds in one food bind nutrients in another, reducing absorption
- Enzymatic degradation – Enzymes in one ingredient destroy vitamins in another
- Theoretical toxicity – Chemical reactions that could theoretically produce harmful substances (though often negligible in normal dietary amounts)
Common Food Incompatibility Pairs in HowToCook
The repository documents ten specific 食材相克 pairs with detailed explanations. Here are the scientifically notable combinations:
Spinach and Tofu
Spinach contains high levels of oxalic acid, which binds with calcium in tofu to form calcium oxalate—a compound poorly absorbed by the body【1†L9-L13】. The file notes that blanching spinach before cooking reduces oxalate content significantly.
Carrot and White Radish
Carrots contain enzymes that degrade vitamin C. When combined with white radish (which is rich in vitamin C), these enzymes destroy the nutrient【1†L14-L18】.
Shrimp and High-Dose Vitamin C
Shrimp contains trace amounts of pentavalent arsenic. Theoretically, excessive vitamin C could reduce this to toxic trivalent arsenic【1†L19-L23】. However, the repository emphasizes this risk is negligible with normal dietary portions.
Persimmon and Crab
Persimmon tannins precipitate crab proteins into indigestible tannin-protein complexes【1†L24-L27】, potentially causing gastrointestinal discomfort.
Milk and Chocolate
Chocolate's oxalic acid binds calcium in milk, reducing calcium bioavailability【1†L29-L32】.
Soy Milk and Egg
Uncooked soy milk contains trypsin inhibitors that hinder protein digestion, affecting the utilization of egg protein【1†L34-L38】.
Cucumber and Tomato
Similar to the carrot-radish pair, cucumber contains vitamin-C-degrading enzymes that reduce tomato's nutritional value【1†L39-L43】.
Lamb and Watermelon
From a traditional Chinese medicine perspective, lamb's warming nature conflicts with watermelon's cooling properties, potentially causing gastrointestinal upset【1†L44-L48】.
Pork and Tea
Tea tannins bind pork proteins, forming indigestible precipitates【1†L49-L53】.
Honey and Tofu
Organic acids in honey may react with tofu protein, leading to mild digestive discomfort【1†L54-L57】.
Scientific Basis and Practical Considerations
The tips/食材相克与禁忌.md file emphasizes that most 食材相克 combinations are not absolute prohibitions. Rather, they represent guidance for optimal nutrition and digestive comfort.
Key mitigating factors include:
- Cooking methods – Blanching spinach reduces oxalates【1†L12-L13】
- Portion sizes – Theoretical risks (like shrimp and vitamin C) require impractical consumption levels to become dangerous
- Individual tolerance – Digestive sensitivity varies by person
The repository concludes that a balanced, varied diet remains the cornerstone of health【1†L60-L66】, with 食材相克 serving as supplementary knowledge rather than strict rules.
Working with 食材相克 Data Programmatically
Developers can extract and utilize the food incompatibility data from the HowToCook repository for building diet-assistant tools or nutritional applications.
Extracting Pairs with Python
The following script parses tips/食材相克与禁忌.md to extract ingredient pairs using regular expressions:
import re
import pathlib
md_path = pathlib.Path(
"tips/食材相克与禁忌.md"
).resolve()
content = md_path.read_text(encoding="utf-8")
pairs = re.findall(r"\d+\.\s\*\*(.+?)\s\+\s(.+?):", content)
for a, b in pairs:
print(f"{a.strip()} ↔ {b.strip()}")
Locating Related Files
To find all files related to food incompatibility in the repository:
git ls-files | grep -i "相克"
Rendering as HTML with JavaScript
For web applications, this Node.js snippet converts the markdown list to HTML:
const fs = require('fs')
const text = fs.readFileSync('tips/食材相克与禁忌.md', 'utf8')
const lines = text.split('\n')
const html = lines
.filter(l => /^\d+\.\s/.test(l))
.map(l => `<li>${l.replace(/^.*?\*\*(.+?)\s\+\s(.+?):/, '$1 & $2')}</li>`)
.join('\n')
console.log(`<ul>\n${html}\n</ul>`)
Summary
- 食材相克 is a traditional Chinese concept identifying food combinations that may reduce nutrient absorption or cause digestive issues.
- The HowToCook repository documents ten specific pairs in
tips/食材相克与禁忌.md, including spinach+tofu (oxalate binding) and shrimp+vitamin C (theoretical arsenic reduction). - Most incompatibilities are not absolute bans; cooking methods and portion sizes mitigate risks significantly.
- Developers can extract this data programmatically using Python regex, shell commands, or JavaScript parsers for diet-assistant applications.
Frequently Asked Questions
Is 食材相克 scientifically proven?
While some 食材相克 pairs have biochemical explanations (such as oxalic acid binding calcium or enzymes degrading vitamin C), others remain theoretical or are based on traditional Chinese medicine principles rather than modern clinical evidence. The HowToCook repository emphasizes that these combinations are guidelines for optimal nutrition rather than absolute prohibitions.
Can I eat spinach and tofu together safely?
Yes, but preparation matters. According to tips/食材相克与禁忌.md, blanching spinach before cooking reduces oxalic acid content significantly, minimizing the formation of insoluble calcium oxalate when combined with tofu. This cooking method allows you to consume both ingredients while maintaining calcium bioavailability.
Are the risks from incompatible food combinations dangerous?
Most documented 食材相克 combinations pose negligible risk in normal dietary amounts. For example, the theoretical arsenic toxicity from shrimp and vitamin C requires consuming impractical quantities of both substances simultaneously. The primary concerns are usually reduced nutrient absorption or mild digestive discomfort rather than acute toxicity.
How can developers use the 食材相克 data from HowToCook?
Developers can parse the tips/食材相克与禁忌.md file using regular expressions to extract ingredient pairs, as demonstrated in the Python and JavaScript code examples above. This data can power diet-assistant applications, nutritional analysis tools, or meal-planning features that flag potentially suboptimal food combinations.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →