convert this topic (biomolecules +bioenergetics) into a visually structured study sheet using tables ,flowchart,mindmaps,icons,and colour coded section make it easy too revise in 5 minutes
~/biomolecules-bioenergetics/study_sheet.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>Biomolecules + Bioenergetics β 5-Minute Revision Sheet</title>
<style>
:root {
--carb: #e8f5e9; --carb-h: #2e7d32;
--prot: #e3f2fd; --prot-h: #1565c0;
--lipid: #fff3e0; --lipid-h: #e65100;
--nucleic:#f3e5f5; --nucleic-h:#6a1b9a;
--energy: #fff8e1; --energy-h:#f57f17;
--atp: #fce4ec; --atp-h: #880e4f;
--etc: #e0f7fa; --etc-h: #006064;
--dark: #212121;
--card-shadow: 0 3px 10px rgba(0,0,0,.12);
}
* { box-sizing: border-box; margin:0; padding:0; }
body {
font-family: 'Segoe UI', Arial, sans-serif;
background: #f5f5f5;
color: var(--dark);
font-size: 13.5px;
line-height: 1.5;
}
/* ββ Header ββ */
header {
background: linear-gradient(135deg,#1a237e 0%,#283593 50%,#3949ab 100%);
color: #fff;
text-align: center;
padding: 24px 16px 20px;
}
header h1 { font-size: 2rem; letter-spacing: 1px; }
header p { opacity:.85; font-size:.95rem; margin-top:4px; }
.badge {
display: inline-block;
background: #ffeb3b;
color: #212121;
border-radius: 20px;
padding: 2px 14px;
font-weight: 700;
font-size:.8rem;
margin-top: 8px;
}
/* ββ Layout ββ */
.grid2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.grid3 { display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px; }
.grid4 { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.full { grid-column: 1/-1; }
main { max-width:1200px; margin:0 auto; padding:20px 16px 40px; }
section { margin-bottom: 24px; }
/* ββ Cards ββ */
.card {
background:#fff;
border-radius:12px;
box-shadow: var(--card-shadow);
padding:14px 16px;
overflow:hidden;
}
.card-header {
font-weight:700;
font-size:1rem;
padding:8px 12px;
border-radius:8px;
margin-bottom:10px;
display:flex;
align-items:center;
gap:8px;
}
.icon { font-size:1.3rem; }
/* ββ Colour themes for cards ββ */
.carb { background:var(--carb); } .carb-h { background:var(--carb); color:var(--carb-h); border-left:4px solid var(--carb-h); }
.prot { background:var(--prot); } .prot-h { background:var(--prot); color:var(--prot-h); border-left:4px solid var(--prot-h); }
.lipid { background:var(--lipid); } .lipid-h { background:var(--lipid); color:var(--lipid-h); border-left:4px solid var(--lipid-h); }
.nucleic{ background:var(--nucleic); }.nucleic-h{ background:var(--nucleic); color:var(--nucleic-h);border-left:4px solid var(--nucleic-h); }
.energy { background:var(--energy); } .energy-h { background:var(--energy); color:var(--energy-h); border-left:4px solid var(--energy-h); }
.atp { background:var(--atp); } .atp-h { background:var(--atp); color:var(--atp-h); border-left:4px solid var(--atp-h); }
.etc { background:var(--etc); } .etc-h { background:var(--etc); color:var(--etc-h); border-left:4px solid var(--etc-h); }
/* ββ Tables ββ */
table { width:100%; border-collapse:collapse; font-size:12.5px; margin-top:6px; }
th { padding:7px 9px; text-align:left; font-weight:700; font-size:12px; }
td { padding:6px 9px; border-bottom:1px solid rgba(0,0,0,.07); }
tr:last-child td { border-bottom:none; }
.tbl-carb th { background:var(--carb-h); color:#fff; }
.tbl-prot th { background:var(--prot-h); color:#fff; }
.tbl-lipid th { background:var(--lipid-h); color:#fff; }
.tbl-nuc th { background:var(--nucleic-h); color:#fff; }
.tbl-atp th { background:var(--atp-h); color:#fff; }
.tbl-etc th { background:var(--etc-h); color:#fff; }
.tbl-energy th { background:var(--energy-h); color:#fff; }
tr:nth-child(even) td { background:rgba(0,0,0,.025); }
/* ββ Flowchart ββ */
.flow-wrap { display:flex; align-items:center; flex-wrap:wrap; gap:0; justify-content:center; }
.flow-box {
background:#fff;
border:2px solid;
border-radius:10px;
padding:8px 14px;
text-align:center;
font-size:12px;
font-weight:600;
min-width:90px;
position:relative;
}
.flow-arrow {
font-size:1.4rem;
padding:0 6px;
color:#546e7a;
font-weight:900;
}
.flow-sub { font-size:10px; font-weight:400; display:block; }
/* ββ Mind-map ββ */
.mindmap {
background:#fff;
border-radius:14px;
padding:20px;
box-shadow: var(--card-shadow);
position:relative;
overflow:visible;
}
.mm-center {
background:#1a237e;
color:#fff;
border-radius:50%;
width:110px;
height:110px;
display:flex;
align-items:center;
justify-content:center;
font-size:.75rem;
font-weight:700;
text-align:center;
margin:0 auto 0;
box-shadow:0 4px 12px rgba(26,35,126,.4);
line-height:1.3;
padding:6px;
}
.mm-grid {
display:grid;
grid-template-columns:1fr 130px 1fr;
grid-template-rows:auto auto auto;
gap:0;
align-items:center;
justify-items:center;
}
.mm-branch {
border-radius:10px;
padding:9px 12px;
font-size:11.5px;
font-weight:600;
text-align:center;
box-shadow:0 2px 6px rgba(0,0,0,.1);
width:100%;
}
.mm-line {
width:100%;
height:2px;
background:linear-gradient(to right,transparent,#90a4ae,transparent);
}
.mm-line-v {
width:2px;
background:linear-gradient(to bottom,transparent,#90a4ae,transparent);
height:30px;
margin:0 auto;
}
/* ββ Key equation box ββ */
.eq-box {
background:#1a237e;
color:#fff;
border-radius:10px;
padding:10px 16px;
font-size:1rem;
font-weight:700;
text-align:center;
letter-spacing:.5px;
margin:8px 0;
}
.eq-sub { font-size:.7rem; font-weight:400; opacity:.8; display:block; margin-top:2px; }
/* ββ Bullet list ββ */
ul.dot { padding-left:18px; }
ul.dot li { margin-bottom:4px; }
/* ββ Tags / Chips ββ */
.chip {
display:inline-block;
border-radius:20px;
padding:2px 10px;
font-size:11px;
font-weight:600;
margin:2px 2px 2px 0;
}
.chip-g { background:#c8e6c9; color:#1b5e20; }
.chip-b { background:#bbdefb; color:#0d47a1; }
.chip-o { background:#ffe0b2; color:#bf360c; }
.chip-p { background:#e1bee7; color:#4a148c; }
.chip-r { background:#ffcdd2; color:#b71c1c; }
.chip-t { background:#b2ebf2; color:#004d40; }
/* ββ Section title ββ */
.section-title {
font-size:1.25rem;
font-weight:800;
padding:6px 0 10px;
border-bottom:3px solid;
margin-bottom:16px;
display:flex;
align-items:center;
gap:8px;
}
/* ββ Remember boxes ββ */
.remember {
border-left:5px solid;
background:#fff;
border-radius:0 10px 10px 0;
padding:10px 14px;
margin-top:10px;
font-size:12px;
}
.r-gold { border-color:#fdd835; background:#fffde7; }
.r-red { border-color:#e53935; background:#ffebee; }
.r-green { border-color:#43a047; background:#f1f8e9; }
.r-blue { border-color:#1e88e5; background:#e3f2fd; }
/* ββ ETC Complex strip ββ */
.etc-strip {
display:flex;
align-items:stretch;
border-radius:12px;
overflow:hidden;
box-shadow: var(--card-shadow);
margin-top:8px;
}
.etc-block {
flex:1;
text-align:center;
padding:12px 8px;
font-size:11.5px;
font-weight:600;
}
.etc-arrow {
display:flex;
align-items:center;
font-size:1.5rem;
color:#fff;
background:#37474f;
padding:0 6px;
}
.c1 { background:#ef9a9a; color:#b71c1c; }
.c2 { background:#ffcc80; color:#e65100; }
.c3 { background:#a5d6a7; color:#1b5e20; }
.c4 { background:#90caf9; color:#0d47a1; }
.c5 { background:#ce93d8; color:#4a148c; }
/* ββ ATP yield strip ββ */
.yield-bar {
display:flex;
border-radius:10px;
overflow:hidden;
height:36px;
box-shadow:var(--card-shadow);
font-size:12px;
font-weight:700;
margin-top:8px;
}
.yb { display:flex; align-items:center; justify-content:center; }
/* ββ Responsive ββ */
@media(max-width:820px){
.grid2,.grid3,.grid4 { grid-template-columns:1fr 1fr; }
}
@media(max-width:560px){
.grid2,.grid3,.grid4 { grid-template-columns:1fr; }
.mm-grid { grid-template-columns:1fr; }
}
/* ββ Print ββ */
@media print {
body { font-size:11px; background:#fff; }
header { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
.card,.etc-strip,.yield-bar { box-shadow:none; }
}
</style>
</head>
<body>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ HEADER ββ -->
<header>
<h1>𧬠Biomolecules + Bioenergetics</h1>
<p>Biochemistry Rapid Revision β Harper's & Lippincott Illustrated Reviews</p>
<span class="badge">β‘ 5-Minute Revision Sheet</span>
</header>
<main>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ SECTION 1: MIND MAP ββ -->
<section>
<div class="section-title" style="color:#1a237e;border-color:#1a237e;">
π§ Section 1 β Big Picture Mind Map
</div>
<div class="mindmap">
<div class="mm-grid">
<!-- Top row -->
<div class="mm-branch carb" style="color:var(--carb-h);">π Carbohydrates<br/><span style="font-weight:400;font-size:10px;">Monosaccharides β Polysaccharides<br/>Energy source, cell signals</span></div>
<div></div>
<div class="mm-branch prot" style="color:var(--prot-h);">π§© Proteins<br/><span style="font-weight:400;font-size:10px;">Amino acids β Polypeptides<br/>Structure, enzymes, transport</span></div>
<!-- Lines row -->
<div class="mm-line"></div>
<div></div>
<div class="mm-line"></div>
<!-- Center row -->
<div style="display:flex;flex-direction:column;align-items:flex-end;gap:16px;width:100%;">
<div class="mm-branch lipid" style="color:var(--lipid-h);text-align:right;">π§ Lipids<br/><span style="font-weight:400;font-size:10px;">FA, Triglycerides, Phospholipids<br/>Energy storage, membranes</span></div>
<div class="mm-branch atp" style="color:var(--atp-h);text-align:right;">β‘ ATP & Bioenergetics<br/><span style="font-weight:400;font-size:10px;">ΞG, Keq, Free Energy<br/>Coupled reactions</span></div>
</div>
<div>
<div class="mm-center">BIOCHEMISTRY<br/>CORE</div>
</div>
<div style="display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%;">
<div class="mm-branch nucleic" style="color:var(--nucleic-h);">π¬ Nucleic Acids<br/><span style="font-weight:400;font-size:10px;">DNA & RNA<br/>Purine / Pyrimidine bases</span></div>
<div class="mm-branch etc" style="color:var(--etc-h);">π ETC & OXPHOS<br/><span style="font-weight:400;font-size:10px;">Complexes IβV<br/>32 ATP per glucose</span></div>
</div>
</div>
</div>
</section>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ SECTION 2: BIOMOLECULES TABLES ββ -->
<section>
<div class="section-title" style="color:var(--carb-h);border-color:var(--carb-h);">
π¬ Section 2 β Biomolecules at a Glance
</div>
<div class="grid2">
<!-- Carbohydrates -->
<div class="card carb">
<div class="card-header carb-h"><span class="icon">π</span> Carbohydrates</div>
<table class="tbl-carb">
<tr><th>Type</th><th>Examples</th><th>Key Feature</th></tr>
<tr><td><b>Monosaccharide</b></td><td>Glucose, Fructose, Galactose</td><td>Aldoses / Ketoses; reducing sugars</td></tr>
<tr><td><b>Disaccharide</b></td><td>Sucrose, Lactose, Maltose</td><td>Glycosidic bond (Ξ± or Ξ²)</td></tr>
<tr><td><b>Oligosaccharide</b></td><td>Raffinose, cell-surface oligosaccharides</td><td>3β10 monosaccharides</td></tr>
<tr><td><b>Polysaccharide</b></td><td>Glycogen, Starch, Cellulose</td><td>Ξ±-1,4 (+ Ξ±-1,6 branches in glycogen)</td></tr>
</table>
<div class="remember r-green"><b>π’ Remember:</b> Glucose is the primary fuel; brain is 100% glucose-dependent under normal conditions.</div>
</div>
<!-- Proteins -->
<div class="card prot">
<div class="card-header prot-h"><span class="icon">π§©</span> Proteins β Amino Acid Levels</div>
<table class="tbl-prot">
<tr><th>Level</th><th>Description</th><th>Forces</th></tr>
<tr><td><b>1Β° (Primary)</b></td><td>AA sequence; peptide bonds</td><td>Covalent (peptide bond)</td></tr>
<tr><td><b>2Β° (Secondary)</b></td><td>Ξ±-helix, Ξ²-sheet, turns</td><td>H-bonds along backbone</td></tr>
<tr><td><b>3Β° (Tertiary)</b></td><td>Full 3D fold of polypeptide</td><td>H-bonds, Van der Waals, hydrophobic, disulfide</td></tr>
<tr><td><b>4Β° (Quaternary)</b></td><td>Multiple subunits (e.g. Hb)</td><td>Same as 3Β°; no covalent bonds (mostly)</td></tr>
</table>
<div class="remember r-blue"><b>π΅ Key:</b> Hydrophobic AA cluster in protein interior; charged/polar AA on the surface in contact with water.</div>
</div>
<!-- Lipids -->
<div class="card lipid">
<div class="card-header lipid-h"><span class="icon">π§</span> Lipids</div>
<table class="tbl-lipid">
<tr><th>Class</th><th>Components</th><th>Function</th></tr>
<tr><td><b>Fatty Acids</b></td><td>Saturated / Unsaturated chains</td><td>Energy substrate (Ξ²-oxidation)</td></tr>
<tr><td><b>Triglycerides</b></td><td>Glycerol + 3 FA</td><td>Long-term energy storage (adipose)</td></tr>
<tr><td><b>Phospholipids</b></td><td>Glycerol + 2 FA + phosphate head</td><td>Membrane bilayer; amphipathic</td></tr>
<tr><td><b>Cholesterol</b></td><td>Sterol ring</td><td>Membrane fluidity, precursor to steroids</td></tr>
<tr><td><b>Sphingolipids</b></td><td>Sphingosine + FA</td><td>Cell signalling, myelin sheath</td></tr>
</table>
<div class="remember r-gold"><b>π‘ Key:</b> Phospholipids are amphipathic β hydrophilic head groups face water, hydrophobic tails cluster together.</div>
</div>
<!-- Nucleic Acids -->
<div class="card nucleic">
<div class="card-header nucleic-h"><span class="icon">π¬</span> Nucleic Acids</div>
<table class="tbl-nuc">
<tr><th>Feature</th><th>DNA</th><th>RNA</th></tr>
<tr><td>Sugar</td><td>2'-Deoxyribose</td><td>Ribose</td></tr>
<tr><td>Bases</td><td>A, T, G, C</td><td>A, U, G, C</td></tr>
<tr><td>Structure</td><td>Double helix</td><td>Single strand</td></tr>
<tr><td>Purines</td><td colspan="2">Adenine (A), Guanine (G) β double ring</td></tr>
<tr><td>Pyrimidines</td><td colspan="2">Cytosine (C), Thymine/Uracil β single ring</td></tr>
<tr><td>Bonds</td><td>A=T (2 H-bonds)</td><td>A=U (2 H-bonds)</td></tr>
<tr><td></td><td>Gβ‘C (3 H-bonds)</td><td>Gβ‘C (3 H-bonds)</td></tr>
</table>
<div class="remember r-blue"><b>π΅ Mnemonic:</b> <b>PURe As Gold</b> = Purines: Adenine, Guanine. <b>CUT the PY</b> = Pyrimidines: Cytosine, Uracil, Thymine.</div>
</div>
</div><!-- end grid2 -->
<!-- Bond energies quick reference -->
<div style="margin-top:16px;">
<div class="card" style="background:#fafafa;">
<div class="card-header" style="background:#eceff1;color:#37474f;border-left:4px solid #607d8b;">
<span class="icon">π</span> Covalent Bond Energies (Biological Significance)
</div>
<table>
<tr><th style="background:#546e7a;color:#fff;">Bond</th><th style="background:#546e7a;color:#fff;">Energy (kcal/mol)</th><th style="background:#546e7a;color:#fff;">Bond</th><th style="background:#546e7a;color:#fff;">Energy (kcal/mol)</th><th style="background:#546e7a;color:#fff;">Biological Role</th></tr>
<tr><td>OβO</td><td>34</td><td>CβH</td><td>99</td><td rowspan="4">Form backbone of organic molecules; peptide bond ~CβN</td></tr>
<tr><td>SβS</td><td>51 <span class="chip chip-r">disulfide</span></td><td>CβS</td><td>108</td></tr>
<tr><td>CβN</td><td>70</td><td>OβH</td><td>110</td></tr>
<tr><td>NβH</td><td>94</td><td>C=O</td><td>164</td></tr>
</table>
<p style="font-size:11px;color:#555;margin-top:6px;">Non-covalent forces (H-bonds, Van der Waals, hydrophobic interactions) are weaker individually but collectively stabilize macromolecular structure.</p>
</div>
</div>
</section>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ SECTION 3: BIOENERGETICS ββ -->
<section>
<div class="section-title" style="color:var(--energy-h);border-color:var(--energy-h);">
β‘ Section 3 β Bioenergetics Core Concepts
</div>
<div class="grid3">
<!-- Free energy -->
<div class="card energy">
<div class="card-header energy-h"><span class="icon">π‘οΈ</span> Free Energy (ΞG)</div>
<div class="eq-box" style="background:#f57f17;">
ΞG = ΞH β TΞS
<span class="eq-sub">ΞH = enthalpy change | T = temperature (K) | ΞS = entropy change</span>
</div>
<table class="tbl-energy" style="margin-top:8px;">
<tr><th>ΞG Sign</th><th>Meaning</th><th>Reaction Type</th></tr>
<tr><td><span class="chip chip-g">ΞG < 0</span></td><td>Spontaneous; energy released</td><td>Exergonic β
</td></tr>
<tr><td><span class="chip chip-r">ΞG > 0</span></td><td>Non-spontaneous; energy required</td><td>Endergonic β</td></tr>
<tr><td><span class="chip chip-b">ΞG = 0</span></td><td>System at equilibrium</td><td>No net change βοΈ</td></tr>
</table>
<div class="remember r-gold"><b>π‘ Key:</b> ΞGΒ° = standard free energy change at 1 mol/L, pH 7.0. ΞGΒ° = βRT ln Keq</div>
</div>
<!-- ATP -->
<div class="card atp">
<div class="card-header atp-h"><span class="icon">β‘</span> ATP β The Energy Currency</div>
<ul class="dot">
<li>Adenosine + <b>3 phosphate</b> groups</li>
<li>Hydrolysis of each terminal phosphate: <b>ΞGΒ° β β7.3 kcal/mol</b></li>
<li>ATP β ADP + Pi (most common)</li>
<li>ATP β AMP + PPi (adenylyl cyclase reactions)</li>
<li>Functions as <b>MgΒ²βΊ complex</b> in cells</li>
<li>NOT an energy store β turned over rapidly</li>
</ul>
<div class="eq-box" style="background:#880e4f;margin-top:10px;">
2 ADP β ATP + AMP
<span class="eq-sub">Adenylate kinase β keeps adenine nucleotide pool balanced</span>
</div>
<div class="remember r-red"><b>π΄ Exam trap:</b> ATP has 2 high-energy bonds (between Ξ²βΞ³ and Ξ±βΞ² phosphates), NOT 3!</div>
</div>
<!-- Coupled reactions -->
<div class="card" style="background:#f9fbe7;">
<div class="card-header" style="background:#f9fbe7;color:#558b2f;border-left:4px solid #558b2f;"><span class="icon">π</span> Coupled Reactions</div>
<ul class="dot">
<li>Endergonic reactions are driven by coupling to exergonic ATP hydrolysis</li>
<li>Share a <b>common intermediate</b></li>
<li>ΞGΒ° values are <b>additive</b> in sequential reactions</li>
<li>If total ΞGΒ° is negative β overall reaction is spontaneous</li>
</ul>
<div style="margin-top:10px;background:#dcedc8;border-radius:8px;padding:8px 12px;font-size:12px;">
<b>Example:</b><br/>
Glucose + Pi β Glucose-6-P <span class="chip chip-r">ΞGΒ°= +3.3</span><br/>
ATP β ADP + Pi <span class="chip chip-g">ΞGΒ°= β7.3</span><br/>
<hr style="margin:4px 0;border:1px dashed #aaa;"/>
<b>Net:</b> Glucose + ATP β G-6-P + ADP <span class="chip chip-g">ΞGΒ°= β4.0 β
</span>
</div>
</div>
</div>
</section>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ SECTION 4: FLOWCHART β GLUCOSE METABOLISM ββ -->
<section>
<div class="section-title" style="color:#00695c;border-color:#00695c;">
π Section 4 β Glucose β ATP Flowchart
</div>
<div class="card" style="background:#e8f5e9;padding:20px;">
<div class="flow-wrap">
<div class="flow-box" style="border-color:#2e7d32;background:#a5d6a7;color:#1b5e20;">
π <b>Glucose</b>
<span class="flow-sub">CβHββOβ</span>
</div>
<div class="flow-arrow">β</div>
<div style="text-align:center;">
<div class="flow-box" style="border-color:#f57f17;background:#ffe082;color:#e65100;">
<b>Glycolysis</b>
<span class="flow-sub">Cytoplasm</span>
<span class="flow-sub">2 ATP net</span>
<span class="flow-sub">2 NADH</span>
</div>
</div>
<div class="flow-arrow">β</div>
<div style="text-align:center;">
<div class="flow-box" style="border-color:#6a1b9a;background:#e1bee7;color:#4a148c;">
<b>Pyruvate</b>
<span class="flow-sub">Decarboxylation</span>
<span class="flow-sub">β Acetyl-CoA</span>
<span class="flow-sub">2 NADH + 2 COβ</span>
</div>
</div>
<div class="flow-arrow">β</div>
<div style="text-align:center;">
<div class="flow-box" style="border-color:#1565c0;background:#bbdefb;color:#0d47a1;">
<b>TCA Cycle</b>
<span class="flow-sub">Krebs Cycle</span>
<span class="flow-sub">Mitochondria</span>
<span class="flow-sub">6 NADH, 2 FADHβ</span>
<span class="flow-sub">2 GTP</span>
</div>
</div>
<div class="flow-arrow">β</div>
<div style="text-align:center;">
<div class="flow-box" style="border-color:#006064;background:#80deea;color:#004d40;">
<b>ETC</b>
<span class="flow-sub">Inner mitochondrial</span>
<span class="flow-sub">membrane</span>
<span class="flow-sub">Complexes IβIV</span>
<span class="flow-sub">Proton gradient</span>
</div>
</div>
<div class="flow-arrow">β</div>
<div style="text-align:center;">
<div class="flow-box" style="border-color:#880e4f;background:#f48fb1;color:#880e4f;">
<b>ATP Synthase</b>
<span class="flow-sub">Complex V</span>
<span class="flow-sub">ADP + Pi β ATP</span>
<span class="flow-sub">~32 ATP total</span>
</div>
</div>
<div class="flow-arrow">β</div>
<div style="text-align:center;">
<div class="flow-box" style="border-color:#37474f;background:#b0bec5;color:#212121;">
<b>COβ + HβO</b>
<span class="flow-sub">Final products</span>
</div>
</div>
</div>
<!-- ATP Yield bar -->
<div style="margin-top:16px;">
<p style="font-weight:700;font-size:12.5px;margin-bottom:6px;text-align:center;">β‘ Total ATP Yield from 1 Glucose (aerobic)</p>
<div class="yield-bar">
<div class="yb" style="flex:2;background:#a5d6a7;color:#1b5e20;">Glycolysis<br/>2 ATP</div>
<div class="yb" style="flex:2;background:#ffe082;color:#e65100;">Pyruvate Decarboxylation<br/>~5 ATP</div>
<div class="yb" style="flex:4;background:#bbdefb;color:#0d47a1;">TCA Cycle<br/>~20 ATP</div>
<div class="yb" style="flex:3;background:#ce93d8;color:#4a148c;">FADHβ (ETC)<br/>~3 ATP</div>
<div class="yb" style="flex:3;background:#f48fb1;color:#880e4f;">GTP/misc<br/>~2 ATP</div>
<div class="yb" style="flex:2;background:#37474f;color:#fff;font-size:14px;font-weight:800;">β 32 ATP</div>
</div>
</div>
</div>
</section>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ SECTION 5: ETC COMPLEXES ββ -->
<section>
<div class="section-title" style="color:var(--etc-h);border-color:var(--etc-h);">
π Section 5 β Electron Transport Chain (ETC) Complexes
</div>
<div class="etc-strip">
<div class="etc-block c1">
<div style="font-size:1.3rem;">β
</div>
<b>NADH Dehydrogenase</b><br/>
<span style="font-size:10px;">NADH β NADβΊ<br/>Pumps <b>4HβΊ</b><br/>Contains FMN<br/>Fe-S clusters</span>
</div>
<div class="etc-arrow">βΆ</div>
<div class="etc-block c2">
<div style="font-size:1.3rem;">β
‘</div>
<b>Succinate Dehydrogenase</b><br/>
<span style="font-size:10px;">FADHβ β FAD<br/><b>No HβΊ pump</b><br/>Links TCA to ETC<br/>Fe-S clusters</span>
</div>
<div class="etc-arrow">βΆ</div>
<div class="etc-block c3">
<div style="font-size:1.3rem;">β
’</div>
<b>Cytochrome bcβ</b><br/>
<span style="font-size:10px;">CoQ β Cyt c<br/>Pumps <b>4HβΊ</b><br/>Q cycle<br/>Cytochromes b, cβ</span>
</div>
<div class="etc-arrow">βΆ</div>
<div class="etc-block c4">
<div style="font-size:1.3rem;">β
£</div>
<b>Cytochrome c Oxidase</b><br/>
<span style="font-size:10px;">Cyt c β Oβ<br/>Pumps <b>2HβΊ</b><br/>Oβ β HβO<br/>Cu, heme a, aβ</span>
</div>
<div class="etc-arrow">βΆ</div>
<div class="etc-block c5">
<div style="font-size:1.3rem;">β
€</div>
<b>ATP Synthase</b><br/>
<span style="font-size:10px;">ADP + Pi β ATP<br/>HβΊ flows back<br/>Fβ motor / Fβ head<br/>~3 ATP per NADH</span>
</div>
</div>
<div class="grid2" style="margin-top:16px;">
<div class="card etc">
<div class="card-header etc-h"><span class="icon">π¬</span> Mobile Electron Carriers</div>
<table class="tbl-etc">
<tr><th>Carrier</th><th>Location</th><th>Carries</th></tr>
<tr><td><b>CoQ (Ubiquinone)</b></td><td>Lipid bilayer (mobile)</td><td>2 electrons + 2HβΊ</td></tr>
<tr><td><b>Cytochrome c</b></td><td>Intermembrane space</td><td>1 electron only</td></tr>
<tr><td><b>NADH</b></td><td>Matrix (from Complex I)</td><td>2 electrons (as Hβ»)</td></tr>
<tr><td><b>FADHβ</b></td><td>Bound to Complex II</td><td>2 electrons</td></tr>
</table>
</div>
<div class="card atp">
<div class="card-header atp-h"><span class="icon">π</span> ETC Inhibitors β High Yield</div>
<table class="tbl-atp">
<tr><th>Inhibitor</th><th>Target</th><th>Effect</th></tr>
<tr><td><b>Rotenone / Amytal</b></td><td>Complex I</td><td>Blocks NADH oxidation</td></tr>
<tr><td><b>Malonate</b></td><td>Complex II</td><td>Competitive succinate inhibitor</td></tr>
<tr><td><b>Antimycin A</b></td><td>Complex III</td><td>Blocks Q cycle</td></tr>
<tr><td><b>Cyanide / CO / HβS</b></td><td>Complex IV</td><td>Bind heme aβ; block Oβ binding</td></tr>
<tr><td><b>Oligomycin</b></td><td>Complex V (Fβ)</td><td>Blocks HβΊ channel; stops ATP synthesis</td></tr>
<tr><td><b>DNP / Thermogenin</b></td><td>Inner membrane</td><td>Uncoupler β dissipates HβΊ gradient as heat</td></tr>
</table>
</div>
</div>
<div class="remember r-red" style="margin-top:10px;font-size:12.5px;">
<b>π΄ Exam Tip β Uncouplers vs Inhibitors:</b> Inhibitors stop both electron transport AND ATP synthesis. Uncouplers (e.g. DNP) allow electron transport to continue but dissipate the proton gradient as heat β ATP synthesis stops but Oβ consumption INCREASES.
</div>
</section>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ SECTION 6: COENZYME TABLE ββ -->
<section>
<div class="section-title" style="color:#00796b;border-color:#00796b;">
π§ͺ Section 6 β Key Coenzymes & Vitamins
</div>
<div class="card">
<table>
<tr>
<th style="background:#00695c;color:#fff;">Coenzyme</th>
<th style="background:#00695c;color:#fff;">Vitamin Precursor</th>
<th style="background:#00695c;color:#fff;">Oxidised Form</th>
<th style="background:#00695c;color:#fff;">Reduced Form</th>
<th style="background:#00695c;color:#fff;">ETC Complex</th>
<th style="background:#00695c;color:#fff;">ATP Yield</th>
</tr>
<tr><td><b>NADβΊ</b></td><td>Niacin (Bβ)</td><td>NADβΊ</td><td>NADH</td><td>Complex I β III β IV β V</td><td><span class="chip chip-g">~2.5 ATP</span></td></tr>
<tr><td><b>FAD</b></td><td>Riboflavin (Bβ)</td><td>FAD</td><td>FADHβ</td><td>Complex II β III β IV β V</td><td><span class="chip chip-o">~1.5 ATP</span></td></tr>
<tr><td><b>CoA</b></td><td>Pantothenic acid (Bβ
)</td><td colspan="2">Acyl-CoA, Acetyl-CoA</td><td>Carries acyl groups</td><td>β</td></tr>
<tr><td><b>TPP</b></td><td>Thiamine (Bβ)</td><td colspan="2">Active form</td><td>Decarboxylation reactions</td><td>β</td></tr>
<tr><td><b>Biotin</b></td><td>Biotin (Bβ)</td><td colspan="2">Active form</td><td>COβ carrier (carboxylations)</td><td>β</td></tr>
<tr><td><b>PLP</b></td><td>Pyridoxine (Bβ)</td><td colspan="2">Active form</td><td>Amino acid metabolism (transamination)</td><td>β</td></tr>
</table>
<div class="remember r-green" style="margin-top:8px;"><b>π’ Mnemonic:</b> <b>NAD = 2.5 ATP | FADHβ = 1.5 ATP</b> (P/O ratios, chemiosmotic coupling)</div>
</div>
</section>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ SECTION 7: QUICK RECALL ββ -->
<section>
<div class="section-title" style="color:#c62828;border-color:#c62828;">
π― Section 7 β Last-Minute High-Yield Facts
</div>
<div class="grid4">
<div class="card" style="background:#fff3e0;border-top:4px solid #ef6c00;">
<div style="font-size:1.5rem;text-align:center;">π</div>
<p style="font-weight:700;text-align:center;color:#e65100;">Carbs</p>
<ul class="dot" style="font-size:11.5px;">
<li>Reducing sugar = free anomeric βOH</li>
<li>Glycogen = Ξ±-1,4 + Ξ±-1,6 (liver & muscle)</li>
<li>Cellulose = Ξ²-1,4 (not digestible)</li>
<li>Glycoproteins: N-linked (Asn) & O-linked (Ser/Thr)</li>
</ul>
</div>
<div class="card" style="background:#e3f2fd;border-top:4px solid #1565c0;">
<div style="font-size:1.5rem;text-align:center;">π§©</div>
<p style="font-weight:700;text-align:center;color:#1565c0;">Proteins</p>
<ul class="dot" style="font-size:11.5px;">
<li>20 standard amino acids</li>
<li>9 essential (cannot synthesize)</li>
<li>Disulfide bonds: CysβCys (oxidation)</li>
<li>Denaturation: disrupts 2Β°, 3Β°, 4Β° β NOT 1Β°</li>
<li>Chaperones: prevent misfolding</li>
</ul>
</div>
<div class="card" style="background:#fce4ec;border-top:4px solid #880e4f;">
<div style="font-size:1.5rem;text-align:center;">β‘</div>
<p style="font-weight:700;text-align:center;color:#880e4f;">ATP Facts</p>
<ul class="dot" style="font-size:11.5px;">
<li>ΞGΒ° hydrolysis = β7.3 kcal/mol</li>
<li>Phosphoenol pyruvate > ATP > AMP</li>
<li>In cell: [ATP] >> [ADP] (drives reactions)</li>
<li>High energy phosphoanhydride bonds</li>
<li>Creatine phosphate: muscle energy reserve</li>
</ul>
</div>
<div class="card" style="background:#e0f7fa;border-top:4px solid #006064;">
<div style="font-size:1.5rem;text-align:center;">π</div>
<p style="font-weight:700;text-align:center;color:#006064;">ETC Numbers</p>
<ul class="dot" style="font-size:11.5px;">
<li>NADH β 2.5 ATP (enters at Complex I)</li>
<li>FADHβ β 1.5 ATP (enters at Complex II)</li>
<li>1 Glucose β ~32 ATP (aerobic)</li>
<li>1 Glucose β 2 ATP (anaerobic)</li>
<li>Cytochrome c: between III & IV</li>
<li>Oβ consumed only at Complex IV</li>
</ul>
</div>
</div>
<!-- Final comparison table -->
<div class="card" style="margin-top:16px;">
<div class="card-header" style="background:#eceff1;color:#37474f;border-left:4px solid #607d8b;">
<span class="icon">π</span> Aerobic vs Anaerobic β Side by Side
</div>
<table>
<tr>
<th style="background:#455a64;color:#fff;">Feature</th>
<th style="background:#2e7d32;color:#fff;">π¬οΈ Aerobic</th>
<th style="background:#b71c1c;color:#fff;">π« Anaerobic</th>
</tr>
<tr><td>Oβ required</td><td>β
Yes</td><td>β No</td></tr>
<tr><td>ATP yield (per glucose)</td><td>~32 ATP</td><td>2 ATP</td></tr>
<tr><td>Final electron acceptor</td><td>Oβ (β HβO)</td><td>Pyruvate (β Lactate)</td></tr>
<tr><td>Location</td><td>Cytoplasm + Mitochondria</td><td>Cytoplasm only</td></tr>
<tr><td>NADH fate</td><td>ETC β ATP</td><td>Regenerates NADβΊ</td></tr>
<tr><td>End products</td><td>COβ + HβO</td><td>Lactate (animals) / Ethanol (yeast)</td></tr>
</table>
</div>
</section>
<!-- ββββββββββββββββββββββββββββββββββββββββββββββ FOOTER ββ -->
<footer style="text-align:center;padding:20px;color:#90a4ae;font-size:11px;margin-top:16px;">
Sources: Harper's Illustrated Biochemistry 32e & Lippincott's Biochemistry 8e | Orris Study Sheet | For revision only
</footer>
</main>
</body>
</html>
cd /home/daytona/workspace/biomolecules-bioenergetics && wc -l study_sheet.html && echo "File exists and ready"
study sheet
HTML File Β· HTML
| Section | Content | Visual Type |
|---|---|---|
| 1 β Big Picture | All 6 biomolecule + energy topics linked | π§ Mind Map |
| 2 β Biomolecules | Carbs, Proteins, Lipids, Nucleic Acids with bond energies | ποΈ Colour Tables |
| 3 β Bioenergetics | ΞG, ATP structure, coupled reactions with worked example | β‘ Cards + Equations |
| 4 β Glucose β ATP | Glycolysis β Pyruvate β TCA β ETC β ATP Synthase | π Flowchart + ATP yield bar |
| 5 β ETC Complexes | Complexes IβV, mobile carriers, inhibitors (Cyanide, DNP, etc.) | π Strip diagram + tables |
| 6 β Coenzymes | NADβΊ, FAD, CoA, TPP, Biotin, PLP β vitamins + ATP yields | π§ͺ Reference table |
| 7 β High-Yield Facts | Aerobic vs Anaerobic, exam traps, mnemonics | π― Chip cards + comparison |
how to open this html file
study_sheet.htmlstudy_sheet.html β click Open.html file| Problem | Fix |
|---|---|
| File opens as raw code/text | Right-click β Open with β Browser (not Notepad) |
| Link doesn't download | Try right-click β "Save link as" |
| Looks broken/unstyled | All styles are inline β try a different browser |
this is not open in my laptop
which wkhtmltopdf && wkhtmltopdf --version
which weasyprint && weasyprint --version 2>/dev/null; which chromium-browser 2>/dev/null; which google-chrome 2>/dev/null; which chromium 2>/dev/null; python3 -c "import weasyprint; print('weasyprint ok')" 2>/dev/null; python3 -c "import pdfkit; print('pdfkit ok')" 2>/dev/null
chromium --headless --disable-gpu --no-sandbox --print-to-pdf=/home/daytona/workspace/biomolecules-bioenergetics/study_sheet.pdf --print-to-pdf-no-header "file:///home/daytona/workspace/biomolecules-bioenergetics/study_sheet.html" 2>&1 | tail -5
study sheet
PDF Document Β· PDF
this pdf will not open
python3 -c "from reportlab.lib.pagesizes import A4; print('reportlab ok')"
~/biomolecules-bioenergetics/build_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.units import cm, mm
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Table,
TableStyle, HRFlowable, KeepTogether)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_RIGHT
from reportlab.platypus.flowables import Flowable
import os
OUT = "/home/daytona/workspace/biomolecules-bioenergetics/Biomolecules_Bioenergetics_StudySheet.pdf"
# ββ Colour palette ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
C_NAVY = colors.HexColor("#1a237e")
C_CARB = colors.HexColor("#2e7d32")
C_CARB_BG = colors.HexColor("#e8f5e9")
C_PROT = colors.HexColor("#1565c0")
C_PROT_BG = colors.HexColor("#e3f2fd")
C_LIPID = colors.HexColor("#e65100")
C_LIPID_BG= colors.HexColor("#fff3e0")
C_NUC = colors.HexColor("#6a1b9a")
C_NUC_BG = colors.HexColor("#f3e5f5")
C_ATP = colors.HexColor("#880e4f")
C_ATP_BG = colors.HexColor("#fce4ec")
C_ETC = colors.HexColor("#006064")
C_ETC_BG = colors.HexColor("#e0f7fa")
C_ENERGY = colors.HexColor("#f57f17")
C_ENERGY_BG=colors.HexColor("#fff8e1")
C_GRAY = colors.HexColor("#546e7a")
C_LGRAY = colors.HexColor("#eceff1")
C_WHITE = colors.white
C_YELLOW = colors.HexColor("#fffde7")
C_YEL_BOR = colors.HexColor("#fdd835")
C_GREEN_L = colors.HexColor("#f1f8e9")
C_RED_L = colors.HexColor("#ffebee")
C_BLUE_L = colors.HexColor("#e3f2fd")
doc = SimpleDocTemplate(
OUT, pagesize=A4,
topMargin=1.2*cm, bottomMargin=1.2*cm,
leftMargin=1.4*cm, rightMargin=1.4*cm,
title="Biomolecules + Bioenergetics Study Sheet"
)
W, H = A4
CW = W - 2.8*cm # content width
styles = getSampleStyleSheet()
def S(name, **kw):
"""Quick paragraph style factory."""
base = styles["Normal"]
return ParagraphStyle(name, parent=base, **kw)
# ββ Reusable styles ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
sNormal = S("sNormal", fontSize=8, leading=11)
sBold = S("sBold", fontSize=8, leading=11, fontName="Helvetica-Bold")
sSmall = S("sSmall", fontSize=7, leading=10)
sCenter = S("sCenter", fontSize=8, leading=11, alignment=TA_CENTER)
sCenterB = S("sCenterB",fontSize=8, leading=11, alignment=TA_CENTER, fontName="Helvetica-Bold")
sTinyC = S("sTinyC", fontSize=6.5, leading=9, alignment=TA_CENTER)
def sec_title(text, color=C_NAVY):
return Paragraph(f"<font color='#{color.hexval()[2:]}' size='12'><b>{text}</b></font>",
S("st", fontSize=12, fontName="Helvetica-Bold", spaceAfter=4,
borderPadding=(0,0,3,0)))
def card_hdr(text, bg, fg=C_WHITE):
tbl = Table([[Paragraph(f"<b>{text}</b>",
S("ch", fontSize=9, fontName="Helvetica-Bold",
textColor=fg))]],
colWidths=[CW], rowHeights=[18])
tbl.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), bg),
("LEFTPADDING", (0,0), (-1,-1), 8),
("RIGHTPADDING", (0,0), (-1,-1), 8),
("TOPPADDING", (0,0), (-1,-1), 3),
("BOTTOMPADDING",(0,0), (-1,-1), 3),
("ROUNDEDCORNERS", [5]),
]))
return tbl
def remember_box(text, bg, border_color):
tbl = Table([[Paragraph(text, S("rb", fontSize=7.5, leading=10))]],
colWidths=[CW-4])
tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), bg),
("LEFTPADDING", (0,0),(-1,-1), 8),
("RIGHTPADDING", (0,0),(-1,-1), 6),
("TOPPADDING", (0,0),(-1,-1), 5),
("BOTTOMPADDING",(0,0),(-1,-1), 5),
("LINEBEFOREBOX",(0,0),(-1,-1), 4, border_color),
("BOX", (0,0),(-1,-1), 0.5, border_color),
]))
return tbl
def hr(color=C_NAVY, thickness=1.5):
return HRFlowable(width="100%", thickness=thickness, color=color, spaceAfter=4, spaceBefore=2)
def sp(h=6):
return Spacer(1, h)
# ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
story = []
# ββββββββββββββ HEADER ββββββββββββββββββββββββββββββββββββββββββββββββββββββ
hdr_data = [[
Paragraph("<font color='white' size='18'><b>𧬠Biomolecules + Bioenergetics</b></font>",
S("h1", fontSize=18, fontName="Helvetica-Bold", alignment=TA_CENTER, textColor=C_WHITE)),
],[
Paragraph("<font color='white' size='9'>Biochemistry Rapid Revision | Harper's 32e & Lippincott's 8e</font>",
S("h2", fontSize=9, alignment=TA_CENTER, textColor=C_WHITE)),
],[
Paragraph("<font color='#212121' size='8'><b>β‘ 5-Minute Revision Sheet</b></font>",
S("badge", fontSize=8, fontName="Helvetica-Bold", alignment=TA_CENTER)),
]]
hdr = Table(hdr_data, colWidths=[CW])
hdr.setStyle(TableStyle([
("BACKGROUND", (0,0),(0,1), C_NAVY),
("BACKGROUND", (0,2),(0,2), colors.HexColor("#ffeb3b")),
("TOPPADDING", (0,0),(-1,-1), 8),
("BOTTOMPADDING",(0,0),(-1,-1), 6),
("ALIGN", (0,0),(-1,-1), "CENTER"),
("ROUNDEDCORNERS", [8]),
]))
story += [hdr, sp(10)]
# ββββββββββββββ SECTION 1 β MIND MAP (as a colour grid) βββββββββββββββββββββ
story += [sec_title("π§ Section 1 β Big Picture Mind Map", C_NAVY), hr(C_NAVY)]
mm_data = [
[
Paragraph("<b>π Carbohydrates</b><br/><font size='7'>MonosaccharidesβPolysaccharides<br/>Energy source, cell signals</font>",
S("mm", fontSize=8, leading=11, alignment=TA_CENTER)),
Paragraph("<b>π§© Proteins</b><br/><font size='7'>Amino acidsβPolypeptides<br/>Structure, enzymes, transport</font>",
S("mm2", fontSize=8, leading=11, alignment=TA_CENTER)),
Paragraph("<b>π§ Lipids</b><br/><font size='7'>FA, Triglycerides, Phospholipids<br/>Energy storage, membranes</font>",
S("mm3", fontSize=8, leading=11, alignment=TA_CENTER)),
],
[
Paragraph("<b>π¬ Nucleic Acids</b><br/><font size='7'>DNA & RNA<br/>Purine/Pyrimidine bases</font>",
S("mm4", fontSize=8, leading=11, alignment=TA_CENTER)),
Paragraph("<font color='white' size='9'><b>BIOCHEMISTRY\nCORE</b></font>",
S("mmc", fontSize=9, fontName="Helvetica-Bold", alignment=TA_CENTER, textColor=C_WHITE, leading=14)),
Paragraph("<b>β‘ ATP & Bioenergetics</b><br/><font size='7'>ΞG, Keq, Free Energy<br/>Coupled reactions</font>",
S("mm5", fontSize=8, leading=11, alignment=TA_CENTER)),
],
[
Paragraph("<b>π ETC & OXPHOS</b><br/><font size='7'>Complexes IβV<br/>32 ATP per glucose</font>",
S("mm6", fontSize=8, leading=11, alignment=TA_CENTER)),
Paragraph("<font size='7'>All pathways converge<br/>on ATP production</font>",
S("mm7", fontSize=7, leading=10, alignment=TA_CENTER)),
Paragraph("<b>π§ͺ Coenzymes</b><br/><font size='7'>NAD+, FAD, CoA<br/>Vitamin-derived carriers</font>",
S("mm8", fontSize=8, leading=11, alignment=TA_CENTER)),
],
]
col_w = CW / 3
mm_tbl = Table(mm_data, colWidths=[col_w]*3, rowHeights=[38, 45, 38])
mm_tbl.setStyle(TableStyle([
# row 0
("BACKGROUND", (0,0),(0,0), C_CARB_BG),
("BACKGROUND", (1,0),(1,0), C_PROT_BG),
("BACKGROUND", (2,0),(2,0), C_LIPID_BG),
# row 1
("BACKGROUND", (0,1),(0,1), C_NUC_BG),
("BACKGROUND", (1,1),(1,1), C_NAVY),
("BACKGROUND", (2,1),(2,1), C_ATP_BG),
# row 2
("BACKGROUND", (0,2),(0,2), C_ETC_BG),
("BACKGROUND", (1,2),(1,2), C_LGRAY),
("BACKGROUND", (2,2),(2,2), C_ENERGY_BG),
("ALIGN", (0,0),(-1,-1), "CENTER"),
("VALIGN", (0,0),(-1,-1), "MIDDLE"),
("GRID", (0,0),(-1,-1), 0.5, C_WHITE),
("TOPPADDING", (0,0),(-1,-1), 5),
("BOTTOMPADDING",(0,0),(-1,-1), 5),
("ROUNDEDCORNERS", [6]),
]))
story += [mm_tbl, sp(12)]
# ββββββββββββββ SECTION 2 β BIOMOLECULES ββββββββββββββββββββββββββββββββββββ
story += [sec_title("π¬ Section 2 β Biomolecules at a Glance", C_CARB), hr(C_CARB)]
# ββ Carbohydrates ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
story += [card_hdr("π Carbohydrates", C_CARB), sp(2)]
carb_data = [
["Type", "Examples", "Key Feature"],
["Monosaccharide", "Glucose, Fructose, Galactose", "Aldoses/Ketoses; reducing sugars"],
["Disaccharide", "Sucrose, Lactose, Maltose", "Glycosidic bond (Ξ± or Ξ²)"],
["Oligosaccharide","Raffinose, cell-surface", "3β10 monosaccharides"],
["Polysaccharide", "Glycogen, Starch, Cellulose", "Ξ±-1,4 (+ Ξ±-1,6 branches in glycogen)"],
]
carb_tbl = Table(carb_data, colWidths=[CW*0.22, CW*0.38, CW*0.40])
carb_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), C_CARB),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_CARB_BG, C_WHITE]),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#c8e6c9")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
]))
story += [carb_tbl, sp(3)]
story += [remember_box("<b>Remember:</b> Glycogen = Ξ±-1,4 backbone + Ξ±-1,6 branch points (liver & muscle). "
"Cellulose = Ξ²-1,4 (not digestible). Brain is 100% glucose-dependent normally.",
C_GREEN_L, C_CARB), sp(8)]
# ββ Proteins βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
story += [card_hdr("π§© Proteins β Structural Levels", C_PROT), sp(2)]
prot_data = [
["Level", "Description", "Stabilising Forces"],
["1Β° Primary", "AA sequence; peptide bonds", "Covalent (peptide bond)"],
["2Β° Secondary", "Ξ±-helix, Ξ²-sheet, turns", "H-bonds along backbone"],
["3Β° Tertiary", "Full 3D fold of polypeptide", "H-bonds, Van der Waals, hydrophobic, disulfide"],
["4Β° Quaternary","Multiple subunits (e.g. Haemoglobin)", "Same as 3Β° (mostly non-covalent)"],
]
prot_tbl = Table(prot_data, colWidths=[CW*0.18, CW*0.35, CW*0.47])
prot_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), C_PROT),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_PROT_BG, C_WHITE]),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#bbdefb")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
]))
story += [prot_tbl, sp(3)]
story += [remember_box("<b>Key:</b> Hydrophobic AA cluster in protein interior; charged/polar AA on surface. "
"Denaturation disrupts 2Β°/3Β°/4Β° β NOT primary structure (peptide bonds remain).",
C_BLUE_L, C_PROT), sp(8)]
# ββ Lipids + Nucleic acids side by side ββββββββββββββββββββββββββββββββββββββ
story += [card_hdr("π§ Lipids", C_LIPID), sp(2)]
lipid_data = [
["Class", "Components", "Function"],
["Fatty Acids", "Saturated/Unsaturated chains", "Energy substrate (Ξ²-oxidation)"],
["Triglycerides", "Glycerol + 3 FA", "Long-term energy storage (adipose)"],
["Phospholipids", "Glycerol + 2 FA + phosphate", "Membrane bilayer; amphipathic"],
["Cholesterol", "Sterol ring", "Membrane fluidity; steroid precursor"],
["Sphingolipids", "Sphingosine + FA", "Cell signalling; myelin sheath"],
]
lipid_tbl = Table(lipid_data, colWidths=[CW*0.22, CW*0.38, CW*0.40])
lipid_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), C_LIPID),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_LIPID_BG, C_WHITE]),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#ffe0b2")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
]))
story += [lipid_tbl, sp(3)]
story += [remember_box("<b>Key:</b> Phospholipids are amphipathic β hydrophilic head groups face water, "
"hydrophobic fatty acyl tails cluster together (bilayer).",
C_YELLOW, C_YEL_BOR), sp(8)]
story += [card_hdr("π¬ Nucleic Acids β DNA vs RNA", C_NUC), sp(2)]
nuc_data = [
["Feature", "DNA", "RNA"],
["Sugar", "2'-Deoxyribose", "Ribose"],
["Bases", "A, T, G, C", "A, U, G, C"],
["Structure", "Double helix (B-form)", "Single strand (mostly)"],
["Purines", "Adenine (A), Guanine (G)", "Same β double ring"],
["Pyrimidines", "Cytosine (C), Thymine (T)", "Cytosine (C), Uracil (U) β single ring"],
["H-bonds", "A=T (2 bonds), Gβ‘C (3 bonds)", "A=U (2), Gβ‘C (3)"],
]
nuc_tbl = Table(nuc_data, colWidths=[CW*0.22, CW*0.39, CW*0.39])
nuc_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), C_NUC),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_NUC_BG, C_WHITE]),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#e1bee7")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
]))
story += [nuc_tbl, sp(3)]
story += [remember_box("<b>Mnemonic:</b> PURe As Gold = Purines: Adenine, Guanine (double ring). "
"CUT the PY = Pyrimidines: Cytosine, Uracil, Thymine (single ring).",
C_BLUE_L, C_NUC), sp(10)]
# ββββββββββββββ SECTION 3 β BIOENERGETICS βββββββββββββββββββββββββββββββββββ
story += [sec_title("β‘ Section 3 β Bioenergetics Core Concepts", C_ENERGY), hr(C_ENERGY)]
# Free energy table
story += [card_hdr("π‘οΈ Free Energy (ΞG) β ΞG = ΞH β TΞS", C_ENERGY, fg=colors.HexColor("#212121")), sp(2)]
dg_data = [
["ΞG Sign", "Meaning", "Reaction Type", "Spontaneous?"],
["ΞG < 0", "Energy released", "Exergonic", "YES β"],
["ΞG > 0", "Energy required", "Endergonic", "NO β"],
["ΞG = 0", "System at equilibrium", "Equilibrium","No net change"],
]
dg_tbl = Table(dg_data, colWidths=[CW*0.18, CW*0.35, CW*0.25, CW*0.22])
dg_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), C_ENERGY),
("TEXTCOLOR", (0,0),(-1,0), colors.HexColor("#212121")),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("BACKGROUND", (0,1),(-1,1), colors.HexColor("#c8e6c9")),
("BACKGROUND", (0,2),(-1,2), colors.HexColor("#ffcdd2")),
("BACKGROUND", (0,3),(-1,3), colors.HexColor("#bbdefb")),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("GRID", (0,0),(-1,-1), 0.3, C_LGRAY),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("FONTNAME", (0,1),(0,-1), "Helvetica-Bold"),
]))
story += [dg_tbl, sp(3)]
story += [remember_box("<b>Key equations:</b> ΞGΒ° = βRT ln Keq | ΞG = ΞGΒ° + RT ln [products]/[reactants] | "
"ΞGΒ° values are ADDITIVE in sequential reactions.",
C_YELLOW, C_YEL_BOR), sp(8)]
# ATP card
story += [card_hdr("β‘ ATP β The Energy Currency", C_ATP), sp(2)]
atp_data = [
["ATP Property", "Detail"],
["Structure", "Adenosine + 3 phosphate groups"],
["ΞGΒ° of hydrolysis (ATPβADP+Pi)", "β7.3 kcal/mol"],
["ΞGΒ° of hydrolysis (ATPβAMP+PPi)", "β7.3 kcal/mol (+ PPiβ2Pi adds ~β4 more)"],
["High-energy bonds", "2 phosphoanhydride bonds (Ξ²βΞ³ and Ξ±βΞ²)"],
["In-cell form", "MgΒ²βΊ complex (Mg-ATP)"],
["Adenylate kinase rxn", "2 ADP β ATP + AMP (keeps pool balanced)"],
["NOT used as", "Long-term energy store (turned over rapidly)"],
]
atp_tbl = Table(atp_data, colWidths=[CW*0.42, CW*0.58])
atp_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), C_ATP),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_ATP_BG, C_WHITE]),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#f8bbd0")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("FONTNAME", (0,1),(0,-1), "Helvetica-Bold"),
]))
story += [atp_tbl, sp(3)]
story += [remember_box("<b>EXAM TRAP:</b> ATP has 2 high-energy bonds (Ξ²βΞ³ and Ξ±βΞ² phosphoanhydride), NOT 3! "
"The Ξ±-phosphate bond to ribose is NOT high-energy.",
C_RED_L, colors.HexColor("#e53935")), sp(10)]
# ββββββββββββββ SECTION 4 β FLOWCHART ββββββββββββββββββββββββββββββββββββββββ
story += [sec_title("π Section 4 β Glucose β ATP Flowchart", colors.HexColor("#00695c")), hr(colors.HexColor("#00695c"))]
flow_data = [[
Paragraph("<b>π Glucose</b>\nCβHββOβ", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>Glycolysis</b>\nCytoplasm\n2 ATP net\n2 NADH", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>Pyruvate\nDecarboxylation</b>\nβ Acetyl-CoA\n2 NADH+2COβ", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>TCA Cycle</b>\n(Krebs)\nMitochondria\n6NADH,2FADHβ\n2 GTP", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>ETC</b>\nComplexes IβIV\nInner mito.\nmembrane\nHβΊ gradient", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>ATP Synthase</b>\nComplex V\nADP+PiβATP\n~32 ATP total", sTinyC),
]]
flow_tbl = Table(flow_data,
colWidths=[CW*0.10, CW*0.04, CW*0.12, CW*0.04,
CW*0.14, CW*0.04, CW*0.14, CW*0.04,
CW*0.14, CW*0.04, CW*0.12])
flow_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(0,0), colors.HexColor("#a5d6a7")),
("BACKGROUND", (2,0),(2,0), colors.HexColor("#ffe082")),
("BACKGROUND", (4,0),(4,0), colors.HexColor("#e1bee7")),
("BACKGROUND", (6,0),(6,0), colors.HexColor("#bbdefb")),
("BACKGROUND", (8,0),(8,0), colors.HexColor("#80deea")),
("BACKGROUND", (10,0),(10,0),colors.HexColor("#f48fb1")),
("BACKGROUND", (1,0),(1,0), C_LGRAY),
("BACKGROUND", (3,0),(3,0), C_LGRAY),
("BACKGROUND", (5,0),(5,0), C_LGRAY),
("BACKGROUND", (7,0),(7,0), C_LGRAY),
("BACKGROUND", (9,0),(9,0), C_LGRAY),
("ALIGN", (0,0),(-1,-1),"CENTER"),
("VALIGN", (0,0),(-1,-1),"MIDDLE"),
("TOPPADDING", (0,0),(-1,-1), 6),
("BOTTOMPADDING",(0,0),(-1,-1),6),
("FONTSIZE", (0,0),(-1,-1), 6.5),
("GRID", (0,0),(-1,-1), 0.3, C_WHITE),
("ROUNDEDCORNERS", [4]),
]))
story += [flow_tbl, sp(6)]
# ATP Yield bar
yield_data = [[
Paragraph("<b>Glycolysis</b>\n2 ATP", sTinyC),
Paragraph("<b>Pyruvate\nDecarb.</b>\n~5 ATP", sTinyC),
Paragraph("<b>TCA Cycle\n(NADH)</b>\n~20 ATP", sTinyC),
Paragraph("<b>FADHβ\n(ETC)</b>\n~3 ATP", sTinyC),
Paragraph("<b>GTP /\nmisc</b>\n~2 ATP", sTinyC),
Paragraph("<font color='white'><b>TOTAL\nβ32 ATP</b></font>", sTinyC),
]]
yield_tbl = Table(yield_data, colWidths=[CW*0.13, CW*0.13, CW*0.22, CW*0.13, CW*0.13, CW*0.13],
rowHeights=[32])
yield_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(0,0), colors.HexColor("#a5d6a7")),
("BACKGROUND", (1,0),(1,0), colors.HexColor("#ffe082")),
("BACKGROUND", (2,0),(2,0), colors.HexColor("#bbdefb")),
("BACKGROUND", (3,0),(3,0), colors.HexColor("#ce93d8")),
("BACKGROUND", (4,0),(4,0), colors.HexColor("#f48fb1")),
("BACKGROUND", (5,0),(5,0), colors.HexColor("#37474f")),
("ALIGN", (0,0),(-1,-1),"CENTER"),
("VALIGN", (0,0),(-1,-1),"MIDDLE"),
("FONTSIZE", (0,0),(-1,-1), 7),
("FONTNAME", (5,0),(5,0), "Helvetica-Bold"),
("GRID", (0,0),(-1,-1), 0.5, C_WHITE),
("ROUNDEDCORNERS", [4]),
]))
story += [yield_tbl, sp(10)]
# ββββββββββββββ SECTION 5 β ETC ββββββββββββββββββββββββββββββββββββββββββββββ
story += [sec_title("π Section 5 β Electron Transport Chain Complexes", C_ETC), hr(C_ETC)]
etc_data = [[
Paragraph("<b>Complex I</b>\nNADH\nDehydrogenase\nNADHβNADβΊ\nPumps 4HβΊ\nContains FMN", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>Complex II</b>\nSuccinate\nDehydrogenase\nFADHββFAD\nNO HβΊ pump!\nLinks TCAβETC", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>Complex III</b>\nCytochrome bcβ\nCoQβCyt c\nPumps 4HβΊ\nQ cycle", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>Complex IV</b>\nCyt c Oxidase\nCyt cβOβ\nPumps 2HβΊ\nOββHβO\nCu,heme a,aβ", sTinyC),
Paragraph("β", sCenterB),
Paragraph("<b>Complex V</b>\nATP Synthase\nADP+PiβATP\nHβΊ flows back\nFβ motor/Fβ\n~3 ATP/NADH", sTinyC),
]]
etc_tbl = Table(etc_data,
colWidths=[CW*0.18, CW*0.04, CW*0.18, CW*0.04,
CW*0.15, CW*0.04, CW*0.18, CW*0.04, CW*0.15],
rowHeights=[62])
etc_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(0,0), colors.HexColor("#ef9a9a")),
("BACKGROUND", (2,0),(2,0), colors.HexColor("#ffcc80")),
("BACKGROUND", (4,0),(4,0), colors.HexColor("#a5d6a7")),
("BACKGROUND", (6,0),(6,0), colors.HexColor("#90caf9")),
("BACKGROUND", (8,0),(8,0), colors.HexColor("#ce93d8")),
("BACKGROUND", (1,0),(1,0), C_LGRAY),
("BACKGROUND", (3,0),(3,0), C_LGRAY),
("BACKGROUND", (5,0),(5,0), C_LGRAY),
("BACKGROUND", (7,0),(7,0), C_LGRAY),
("ALIGN", (0,0),(-1,-1), "CENTER"),
("VALIGN", (0,0),(-1,-1), "MIDDLE"),
("FONTSIZE", (0,0),(-1,-1), 6.5),
("GRID", (0,0),(-1,-1), 0.4, C_WHITE),
("ROUNDEDCORNERS", [4]),
]))
story += [etc_tbl, sp(6)]
# ETC Inhibitors
story += [card_hdr("π ETC Inhibitors β High Yield", C_ATP), sp(2)]
inh_data = [
["Inhibitor", "Target", "Mechanism"],
["Rotenone / Amytal", "Complex I", "Blocks NADH oxidation"],
["Malonate", "Complex II", "Competitive inhibitor of succinate"],
["Antimycin A", "Complex III", "Blocks Q cycle (Cyt b β Cyt cβ)"],
["Cyanide / CO / HβS", "Complex IV", "Bind heme aβ; block Oβ binding β DEATH"],
["Oligomycin", "Complex V (Fβ)", "Blocks HβΊ channel; stops ATP synthesis"],
["DNP / Thermogenin (UCP-1)","Inner membrane","Uncoupler: dissipates HβΊ gradient as heat"],
]
inh_tbl = Table(inh_data, colWidths=[CW*0.30, CW*0.22, CW*0.48])
inh_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), C_ATP),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_ATP_BG, C_WHITE]),
("BACKGROUND", (0,6),(-1,6), colors.HexColor("#fff9c4")),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#f8bbd0")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("FONTNAME", (0,1),(0,-1), "Helvetica-Bold"),
]))
story += [inh_tbl, sp(3)]
story += [remember_box("<b>EXAM TRAP β Uncouplers vs Inhibitors:</b> Inhibitors stop BOTH electron transport "
"AND ATP synthesis. Uncouplers (DNP, Thermogenin) allow electron transport to continue "
"but dissipate the proton gradient as heat β ATP synthesis stops but Oβ consumption INCREASES.",
C_RED_L, colors.HexColor("#e53935")), sp(10)]
# ββββββββββββββ SECTION 6 β COENZYMES ββββββββββββββββββββββββββββββββββββββββ
story += [sec_title("π§ͺ Section 6 β Key Coenzymes & Vitamins", colors.HexColor("#00796b")), hr(colors.HexColor("#00796b"))]
coen_data = [
["Coenzyme", "Vitamin Precursor", "Oxidised Form", "Reduced Form", "ETC Entry", "ATP Yield"],
["NADβΊ", "Niacin (Bβ)", "NADβΊ", "NADH", "Complex I", "~2.5 ATP"],
["FAD", "Riboflavin (Bβ)", "FAD", "FADHβ", "Complex II", "~1.5 ATP"],
["CoA", "Pantothenic acid (Bβ
)","Active","Acyl-CoA","Acyl carrier","β"],
["TPP", "Thiamine (Bβ)", "Active", "Active", "Decarboxylations","β"],
["Biotin","Biotin (Bβ)", "Active", "Active", "COβ carrier", "β"],
["PLP", "Pyridoxine (Bβ)", "Active", "Active", "Transamination","β"],
]
coen_tbl = Table(coen_data,
colWidths=[CW*0.10, CW*0.22, CW*0.13, CW*0.13, CW*0.25, CW*0.17])
coen_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), colors.HexColor("#00695c")),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_ETC_BG, C_WHITE]),
("BACKGROUND", (0,1),(-1,1), colors.HexColor("#b2dfdb")),
("BACKGROUND", (0,2),(-1,2), colors.HexColor("#e0f2f1")),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#b2dfdb")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("FONTNAME", (0,1),(0,-1), "Helvetica-Bold"),
]))
story += [coen_tbl, sp(3)]
story += [remember_box("<b>Numbers to burn in:</b> NADH β 2.5 ATP | FADHβ β 1.5 ATP | "
"P/O ratio reflects chemiosmotic coupling efficiency (Mitchell hypothesis).",
C_GREEN_L, colors.HexColor("#43a047")), sp(10)]
# ββββββββββββββ SECTION 7 β HIGH YIELD + COMPARISON βββββββββββββββββββββββββ
story += [sec_title("π― Section 7 β Last-Minute High-Yield Facts", colors.HexColor("#c62828")), hr(colors.HexColor("#c62828"))]
# 4-column quick facts
qf_data = [[
Paragraph("<b>π Carbs</b>\n\n"
"β’ Reducing sugar =\n free anomeric -OH\n"
"β’ Glycogen: liver+\n muscle\n"
"β’ Cellulose: Ξ²-1,4\n (not digestible)\n"
"β’ Glycoproteins:\n N-linked (Asn)\n O-linked (Ser/Thr)", sSmall),
Paragraph("<b>π§© Proteins</b>\n\n"
"β’ 20 standard AAs\n"
"β’ 9 are essential\n (cannot synthesise)\n"
"β’ Disulfide bonds:\n Cys-Cys (oxidation)\n"
"β’ Chaperones prevent\n misfolding\n"
"β’ Zymogen = inactive\n enzyme precursor", sSmall),
Paragraph("<b>β‘ ATP Facts</b>\n\n"
"β’ ΞGΒ°= -7.3 kcal/mol\n"
"β’ PEP > ATP > AMP\n (energy hierarchy)\n"
"β’ Creatine phosphate:\n muscle energy reserve\n"
"β’ [ATP]>>[ADP] in cell\n drives reactions\n"
"β’ Substrate-level vs\n oxidative phosphorylation", sSmall),
Paragraph("<b>π ETC Numbers</b>\n\n"
"β’ NADH β 2.5 ATP\n"
"β’ FADHβ β 1.5 ATP\n"
"β’ 1 Glucose β ~32 ATP\n (aerobic)\n"
"β’ 1 Glucose β 2 ATP\n (anaerobic)\n"
"β’ Oβ consumed only\n at Complex IV\n"
"β’ Cyt c: between III & IV", sSmall),
]]
qf_tbl = Table(qf_data, colWidths=[CW/4]*4, rowHeights=[130])
qf_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(0,0), colors.HexColor("#fff3e0")),
("BACKGROUND", (1,0),(1,0), colors.HexColor("#e3f2fd")),
("BACKGROUND", (2,0),(2,0), colors.HexColor("#fce4ec")),
("BACKGROUND", (3,0),(3,0), colors.HexColor("#e0f7fa")),
("LINEABOVE", (0,0),(0,0), 4, C_LIPID),
("LINEABOVE", (1,0),(1,0), 4, C_PROT),
("LINEABOVE", (2,0),(2,0), 4, C_ATP),
("LINEABOVE", (3,0),(3,0), 4, C_ETC),
("VALIGN", (0,0),(-1,-1), "TOP"),
("TOPPADDING", (0,0),(-1,-1), 8),
("LEFTPADDING",(0,0),(-1,-1), 8),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("GRID", (0,0),(-1,-1), 0.5, C_WHITE),
("ROUNDEDCORNERS", [4]),
]))
story += [qf_tbl, sp(8)]
# Aerobic vs Anaerobic
story += [card_hdr("π Aerobic vs Anaerobic β Side by Side", C_GRAY), sp(2)]
vs_data = [
["Feature", "AEROBIC", "ANAEROBIC"],
["Oβ required", "Yes", "No"],
["ATP yield (per glucose)","~32 ATP", "2 ATP"],
["Final electron acceptor","Oβ (β HβO)", "Pyruvate (β Lactate)"],
["Location", "Cytoplasm + Mitochondria","Cytoplasm only"],
["NADH fate", "ETC β ATP synthesis", "Regenerates NADβΊ"],
["End products", "COβ + HβO", "Lactate (animals) / Ethanol (yeast)"],
["Speed", "Slow but efficient", "Fast but inefficient"],
]
vs_tbl = Table(vs_data, colWidths=[CW*0.32, CW*0.34, CW*0.34])
vs_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(0,0), colors.HexColor("#455a64")),
("BACKGROUND", (1,0),(1,0), colors.HexColor("#2e7d32")),
("BACKGROUND", (2,0),(2,0), colors.HexColor("#b71c1c")),
("TEXTCOLOR", (0,0),(-1,0), C_WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 7.5),
("ROWBACKGROUNDS",(0,1),(-1,-1), [C_LGRAY, C_WHITE]),
("GRID", (0,0),(-1,-1), 0.3, colors.HexColor("#cfd8dc")),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("FONTNAME", (0,1),(0,-1), "Helvetica-Bold"),
]))
story += [vs_tbl, sp(8)]
# ββββββββββββββ FOOTER βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
story += [
hr(C_LGRAY, 0.5),
Paragraph("<font color='#90a4ae' size='7'>Sources: Harper's Illustrated Biochemistry 32e & "
"Lippincott's Biochemistry 8e | Orris Study Sheet | For revision purposes only</font>",
S("footer", fontSize=7, alignment=TA_CENTER, textColor=colors.HexColor("#90a4ae"))),
]
# ββββββββββββββ BUILD ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
doc.build(story)
print(f"PDF written to: {OUT}")
print(f"File size: {os.path.getsize(OUT):,} bytes")
python3 /home/daytona/workspace/biomolecules-bioenergetics/build_pdf.py 2>&1
Biomolecules Bioenergetics StudySheet
PDF Document Β· PDF
Give me all interface in chat section
π CARBOHYDRATES π§© PROTEINS
MonosaccharidesβPolysaccharides AAβPolypeptides
Energy source, cell signals Structure, enzymes
\ /
\ /
π§ LIPIDS βββββββββ [ BIOCHEMISTRY CORE ] βββββββββ π¬ NUCLEIC ACIDS
FA, TG, Phospholipids β¬β¬ DNA & RNA, Purines/Pyrimidines
Energy storage, membranes / \
/ \
β‘ ATP & BIOENERGETICS π ETC & OXPHOS
ΞG, Keq, Coupled rxns Complexes IβV, 32 ATP
| Type | Examples | Key Feature |
|---|---|---|
| Monosaccharide | Glucose, Fructose, Galactose | Aldoses/Ketoses; reducing sugars |
| Disaccharide | Sucrose, Lactose, Maltose | Glycosidic bond (Ξ± or Ξ²) |
| Oligosaccharide | Raffinose, cell-surface oligosaccharides | 3β10 monosaccharides |
| Polysaccharide | Glycogen, Starch, Cellulose | Ξ±-1,4 (+ Ξ±-1,6 branch in Glycogen) |
π’ Remember: Glycogen = Ξ±-1,4 backbone + Ξ±-1,6 branch points (liver & muscle). Cellulose = Ξ²-1,4 (NOT digestible). Brain = 100% glucose-dependent normally.
| Level | Description | Stabilising Forces |
|---|---|---|
| 1Β° Primary | AA sequence; peptide bonds | Covalent (peptide bond) |
| 2Β° Secondary | Ξ±-helix, Ξ²-sheet, turns | H-bonds along backbone |
| 3Β° Tertiary | Full 3D fold of polypeptide | H-bonds, Van der Waals, hydrophobic, disulfide |
| 4Β° Quaternary | Multiple subunits (e.g. Hb) | Same as 3Β° (mostly non-covalent) |
π΅ Key: Hydrophobic AA cluster inside the protein; charged/polar AA on the surface. Denaturation disrupts 2Β°/3Β°/4Β° β NOT 1Β° (peptide bonds remain intact).
| Class | Components | Function |
|---|---|---|
| Fatty Acids | Saturated / Unsaturated chains | Energy substrate (Ξ²-oxidation) |
| Triglycerides | Glycerol + 3 FA | Long-term energy storage (adipose) |
| Phospholipids | Glycerol + 2 FA + phosphate head | Membrane bilayer; amphipathic |
| Cholesterol | Sterol ring | Membrane fluidity; steroid precursor |
| Sphingolipids | Sphingosine + FA | Cell signalling; myelin sheath |
π‘ Key: Phospholipids are amphipathic β hydrophilic heads face water, hydrophobic tails cluster together to form the bilayer.
| Feature | DNA | RNA |
|---|---|---|
| Sugar | 2'-Deoxyribose | Ribose |
| Bases | A, T, G, C | A, U, G, C |
| Structure | Double helix | Single strand |
| Purines | Adenine (A), Guanine (G) β double ring | Same |
| Pyrimidines | Cytosine (C), Thymine (T) β single ring | Cytosine (C), Uracil (U) |
| H-bonds | A=T (2 bonds), Gβ‘C (3 bonds) | A=U (2), Gβ‘C (3) |
π£ Mnemonic: PURe As Gold = Purines: Adenine, Guanine. CUT the PY = Pyrimidines: Cytosine, Uracil, Thymine.
| Bond | Energy (kcal/mol) | Bond | Energy (kcal/mol) |
|---|---|---|---|
| OβO | 34 | CβH | 99 |
| SβS (disulfide) | 51 | CβS | 108 |
| CβN | 70 | OβH | 110 |
| NβH | 94 | C=O | 164 |
ΞG = ΞH β TΒ·ΞS
β β β
β Enthalpy Entropy Γ Temp (K)
Free energy change
| ΞG Sign | Meaning | Reaction Type | Spontaneous? |
|---|---|---|---|
| ΞG < 0 β | Energy released | Exergonic | YES |
| ΞG > 0 β | Energy required | Endergonic | NO |
| ΞG = 0 βοΈ | Equilibrium | No net change | β |
ΞGΒ° = βRT ln KeqΞG = ΞGΒ° + RT ln [Products]/[Reactants]π‘ Key: ΞGΒ° = βRT ln Keq. If Keq > 1 β ΞGΒ° < 0 (favourable). If Keq < 1 β ΞGΒ° > 0 (unfavourable).
| ATP Property | Detail |
|---|---|
| Structure | Adenosine + 3 phosphate groups |
| ΞGΒ° of hydrolysis (ATPβADP+Pi) | β7.3 kcal/mol |
| High-energy bonds | 2 phosphoanhydride bonds (Ξ²βΞ³ and Ξ±βΞ²) |
| In-cell form | MgΒ²βΊ complex (Mg-ATP) |
| Adenylate kinase | 2 ADP β ATP + AMP |
| NOT used as | Long-term energy store (turned over rapidly) |
| Creatine phosphate | Muscle energy reserve (ΞGΒ° = β10.3 kcal/mol) |
π΄ EXAM TRAP: ATP has 2 high-energy bonds (Ξ²βΞ³ and Ξ±βΞ² phosphoanhydride), NOT 3! The Ξ±βribose bond is NOT high-energy.
Glucose + Pi β Glucose-6-P ΞGΒ° = +3.3 kcal/mol β (unfavourable)
ATP β ADP + Pi ΞGΒ° = β7.3 kcal/mol β
(favourable)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
NET: Glucose + ATP β G-6-P + ADP ΞGΒ° = β4.0 kcal/mol β
SPONTANEOUS
π GLUCOSE
β
βΌ βββββββββββββββββββββββββββββββββββββββββ
GLYCOLYSIS (Cytoplasm)
β’ 2 ATP net (substrate-level phosphorylation)
β’ 2 NADH produced
β’ Glucose (C6) β 2 Pyruvate (C3)
β
βΌ βββββββββββββββββββββββββββββββββββββββββ
PYRUVATE DECARBOXYLATION (Mitochondrial matrix)
β’ Pyruvate β Acetyl-CoA
β’ 2 NADH + 2 COβ released
β’ Enzyme: Pyruvate dehydrogenase complex (needs Bβ/TPP)
β
βΌ βββββββββββββββββββββββββββββββββββββββββ
TCA CYCLE / KREBS CYCLE (Mitochondrial matrix)
β’ Per glucose: 6 NADH, 2 FADHβ, 2 GTP
β’ Produces: 4 COβ
β’ Key intermediates: Citrate β Isocitrate β Ξ±-KG
β Succinyl-CoA β Succinate β Fumarate β Malate β OAA
β
βΌ βββββββββββββββββββββββββββββββββββββββββ
ELECTRON TRANSPORT CHAIN (Inner mitochondrial membrane)
β’ NADH & FADHβ donate electrons to Complexes IβIV
β’ Creates HβΊ gradient across inner membrane
β
βΌ βββββββββββββββββββββββββββββββββββββββββ
ATP SYNTHASE β Complex V
β’ HβΊ flows back through FβFβ ATPase
β’ ADP + Pi β ATP
β
βΌ βββββββββββββββββββββββββββββββββββββββββ
COβ + HβO + ~32 ATP π
| Stage | NADH | FADHβ | Direct ATP | ATP Equivalent |
|---|---|---|---|---|
| Glycolysis | 2 | β | 2 | ~7 |
| Pyruvate decarboxylation | 2 | β | β | ~5 |
| TCA Cycle | 6 | 2 | 2 (GTP) | ~20 |
| TOTAL | 10 | 2 | 4 | ~32 ATP |
NADH = 2.5 ATP each | FADHβ = 1.5 ATP each
| Complex | Name | Substrate | HβΊ Pumped | Key Components |
|---|---|---|---|---|
| I | NADH Dehydrogenase | NADH β NADβΊ | 4 HβΊ | FMN, Fe-S clusters |
| II | Succinate Dehydrogenase | FADHβ β FAD | 0 HβΊ β οΈ | Fe-S, FAD; links TCAβETC |
| III | Cytochrome bcβ | CoQ β Cyt c | 4 HβΊ | Q cycle, Cyt b, cβ |
| IV | Cytochrome c Oxidase | Cyt c β Oβ | 2 HβΊ | Cu, heme a, aβ; OββHβO |
| V | ATP Synthase | HβΊ gradient β ATP | (HβΊ re-enters) | Fβ motor, Fβ head |
| Carrier | Location | Carries |
|---|---|---|
| CoQ (Ubiquinone) | Lipid bilayer (mobile) | 2 electrons + 2HβΊ |
| Cytochrome c | Intermembrane space | 1 electron only |
| Inhibitor | Target | Mechanism | Effect |
|---|---|---|---|
| Rotenone / Amytal | Complex I | Blocks NADH oxidation | β ATP, β Oβ use |
| Malonate | Complex II | Competitive vs succinate | β FADHβ oxidation |
| Antimycin A | Complex III | Blocks Q cycle | β ATP, β Oβ use |
| Cyanide / CO / HβS | Complex IV | Binds heme aβ; blocks Oβ | FATAL β stops ETC |
| Oligomycin | Complex V (Fβ) | Blocks HβΊ channel | β ATP, β Oβ use |
| DNP / Thermogenin | Inner membrane | Dissipates HβΊ gradient | ATPβ, Oβ use INCREASES |
π΄ EXAM TRAP: Uncouplers (DNP, Thermogenin/UCP-1) = ETC keeps running + Oβ consumption INCREASES, but ATP synthesis STOPS β energy released as heat. Inhibitors stop both.
| Coenzyme | Vitamin Precursor | Reduced Form | Role | ATP Yield |
|---|---|---|---|---|
| NADβΊ | Niacin (Bβ) | NADH | Electron carrier β Complex I | ~2.5 ATP |
| FAD | Riboflavin (Bβ) | FADHβ | Electron carrier β Complex II | ~1.5 ATP |
| CoA | Pantothenic acid (Bβ ) | Acyl-CoA | Acyl group carrier | β |
| TPP | Thiamine (Bβ) | Active form | Decarboxylation reactions | β |
| Biotin | Biotin (Bβ) | Carboxybiotin | COβ carrier (carboxylations) | β |
| PLP | Pyridoxine (Bβ) | Active form | Transamination (AA metabolism) | β |
| Lipoamide | Lipoic acid | Dihydrolipoamide | PDH & Ξ±-KG dehydrogenase | β |
π’ Mnemonic for B-vitamins in metabolism: The Ripe Nectarine Provides Body's Life = Thiamine(Bβ), Riboflavin(Bβ), Niacin(Bβ), Pantothenic(Bβ ), Biotin(Bβ), Lipoic acid
| π Carbs | π§© Proteins | β‘ ATP | π ETC |
|---|---|---|---|
| Reducing sugar = free anomeric βOH | 20 standard AAs | ΞGΒ° = β7.3 kcal/mol | NADH β 2.5 ATP |
| Glycogen: Ξ±-1,4 + Ξ±-1,6 | 9 are essential | PEP > ATP > AMP (energy) | FADHβ β 1.5 ATP |
| Cellulose: Ξ²-1,4 (indigestible) | Disulfide = Cys-Cys | MgΒ²βΊ complex in cells | 1 Glucose β ~32 ATP |
| Starch: amylose + amylopectin | Chaperones prevent misfolding | Creatine-P = muscle reserve | Oβ only at Complex IV |
| N-glycan β Asn; O-glycan β Ser/Thr | Zymogen = inactive precursor | 2 ADP β ATP + AMP | Cyt c between III & IV |
| Feature | π¬οΈ AEROBIC | π« ANAEROBIC |
|---|---|---|
| Oβ required | Yes | No |
| ATP yield | ~32 ATP | 2 ATP |
| Final eβ» acceptor | Oβ β HβO | Pyruvate β Lactate |
| Location | Cytoplasm + Mitochondria | Cytoplasm only |
| NADH fate | ETC β ATP | Regenerates NADβΊ |
| End products | COβ + HβO | Lactate (humans) / Ethanol (yeast) |
| Speed | Slow but efficient | Fast but inefficient |
| When used | Rest / aerobic exercise | Sprinting, hypoxia, RBCs |
show me all formet in this chat section
**text**
Italic text β use *text*
Bold and italic β use ***text***
~~text~~
Inline code β use backticks
==Highlight== (may not render in all clients)| Column 1 | Column 2 | Column 3 |
|---|---|---|
| Cell A | Cell B | Cell C |
| Cell D | Cell E | Cell F |
| Left | Center | Right |
|---|---|---|
| text | text | text |
| 123 | 456 | 789 |
Single blockquote β use>
Nested blockquote:Level 2Level 3
π’ Tip box style Use for key facts or warnings
print("hello")def atp_yield(nadh, fadh2):
return (nadh * 2.5) + (fadh2 * 1.5)
print(atp_yield(10, 2)) # Output: 28.0
Glucose β Pyruvate β Acetyl-CoA β TCA β ETC β ATP
const delta_g = (dH, T, dS) => dH - T * dS;
python3 build_pdf.py
{ "molecule": "ATP", "bonds": 2, "dG": -7.3 }
---***___βββββββββββ βββββββββββ βββββββββββ
β Glucose ββββββΆβGlycolysisββββββΆβ Pyruvateβ
βββββββββββ βββββββββββ βββββββββββ
β
βΌ
βββββββββββββββ
β Acetyl-CoA β
βββββββββββββββ
[Topic]
/ | \
/ | \
[A] [B] [C]
| | |
[a1] [b1] [c1]
ATP Yield:
Glycolysis ββββββββββ 2 ATP
Pyruvate ββββββββββ 5 ATP
TCA Cycle ββββββββββ 20 ATP
TOTAL ββββββββββ 32 ATP
| Feature | Status |
|---|---|
HTML tags (<div>, <span>) | β Not rendered |
| CSS styling | β Not rendered |
| Images (uploaded) | β Works |
LaTeX math ($\Delta G$) | β Not rendered |
| Colour text | β Not rendered |
| Custom fonts | β Not rendered |
| Animations | β Not rendered |
| Embedded video | β Not rendered |
| Format | Best Used For |
|---|---|
| Tables | Comparisons, data, drug lists |
| Code blocks | Flowcharts, equations, structured text |
| Blockquotes | Tips, warnings, mnemonics |
| Bold/Italic | Key terms, exam traps |
| Ordered lists | Steps, protocols |
| Unordered lists | Facts, bullet points |
| Emoji | Visual colour-coding, section headers |
| Headings | Navigation, section titles |
| ASCII diagrams | Flowcharts, mind maps, pathways |
| Horizontal rules | Separating sections |