Want to start a weight loss series what should I start with

Asking for Preferences
Good context. Since you're already active and want a structured diet and nutrition plan for general weight loss, here's where to start:
Start with a calorie deficit - but build the foundation first. Most people jump straight into restriction and fail within 2 weeks. A proper series should sequence these phases:

Phase 1 - Baseline (Week 1): Know Your Numbers

Before cutting anything, spend one week establishing your baseline:
1. Calculate your TDEE (Total Daily Energy Expenditure)
  • Use the Mifflin-St Jeor equation for BMR, then multiply by an activity factor (since you're already active, likely 1.55-1.725)
  • Your target deficit: 300-500 kcal/day below TDEE - this yields ~0.5-1 lb loss per week without tanking energy or muscle
2. Track what you currently eat - no changes yet
  • Use an app like Cronometer or MyFitnessPal for 5-7 days
  • Most people are shocked by where their calories actually come from (liquid calories, cooking oils, portions)
3. Identify your macros baseline
  • Weight loss works best when protein is high: target 1.6-2.2g protein per kg bodyweight
  • This is the single most evidence-backed lever for satiety and lean mass retention

Phase 2 - First Cut (Week 2-3): One Change at a Time

Pick one of these to start, not all at once:
StrategyBest For
Reduce ultra-processed foodsPeople eating a lot of packaged/fast food
Cut liquid calories (soda, juice, alcohol)Quick early wins, minimal effort
Increase protein per mealReducing hunger, preserving muscle
Reduce refined carbs at dinnerGood for blood sugar and sleep quality
Starting with protein increase is almost always the smartest first move - it naturally crowds out lower-quality calories and keeps hunger low.

Phase 3 - Structure (Week 4+): Build the Repeatable System

  • Design 3-5 go-to meals per slot (breakfast, lunch, dinner) that hit your targets
  • Meal prep 1-2x per week to reduce decision fatigue
  • Set a weekly weigh-in day (morning, after bathroom, same conditions) - weight fluctuates daily, trends matter

What to Do Right Now

  1. Calculate your TDEE - you can do it at TDEE Calculator
  2. Download a food tracker and log this week without changing anything
  3. Come back with your numbers - I can build a specific meal structure, macro targets, and weekly meal plan based on your actual data
Want me to build out a full Week 1 meal plan template or a macro calculator guide you can use right now?

I want to know about fibre protein than carbs and fats theory while starting a meal

Searching PubMed

food order eating sequence glucose insulin response

Searching the Web

fibre protein first before carbs fats meal order weight loss blood sugar science

Searching PubMed

meal sequence vegetable protein carbohydrate postprandial glucose

Here's the full breakdown of the Fibre → Protein → Fats → Carbs meal order theory:

What Is It?

This is called meal sequencing or food order theory. The idea: within the same meal, the order in which you eat food groups affects how your body processes them - specifically blood sugar, insulin, hunger hormones, and ultimately fat storage.
The recommended sequence is:
1. Fibre (vegetables) → 2. Protein → 3. Fats → 4. Carbohydrates

The Science Behind Each Step

Step 1 - Fibre First (Vegetables, Greens, Legumes)

When you eat fibre before anything else:
  • It forms a physical mesh in your gut that slows down how fast carbs are absorbed later
  • It triggers release of GLP-1 (glucagon-like peptide-1), a gut hormone that signals fullness and slows gastric emptying
  • Studies show vegetables eaten before rice or bread reduce post-meal blood sugar spikes by 20-30% compared to eating them together or last
Think of fibre as laying down a "speed bump" in your digestive tract.

Step 2 - Protein Second

After fibre, protein:
  • Further stimulates GLP-1 and PYY (satiety hormones), so you feel full faster
  • Requires more energy to digest (the thermic effect of food - protein burns ~25-30% of its own calories in digestion vs 5-10% for carbs)
  • Stabilises blood sugar on its own - it does NOT spike insulin the same way carbs do
  • Fills stomach volume, so by the time you get to carbs, you naturally eat less of them

Step 3 - Fats Third

Fats:
  • Slow gastric emptying even further - food moves out of the stomach more slowly
  • Don't spike blood sugar at all
  • Add satiety depth - combining fat with the protein you just ate keeps you full for 3-4 hours

Step 4 - Carbohydrates Last

By the time carbs arrive in your gut:
  • The fibre mesh is in place
  • Gastric emptying is slowed by fat and protein
  • GLP-1 is already elevated
Result: glucose enters the bloodstream gradually instead of in a spike. Lower glucose spike = lower insulin spike = less fat storage signal sent to cells.
The PATTERN study (RCT, Clinical Nutrition 2020) confirmed that macronutrient ingestion sequence significantly changes postprandial glucose, insulin, and incretin responses - eating carbs last produced the most favourable metabolic profile.
A 2025 RCT in Nutrients also found that food order combined with divided carbohydrate intake improved glycaemic control in healthy women.

Why This Matters for Weight Loss Specifically

EffectHow It Helps Weight Loss
Lower insulin spikeInsulin is the "fat storage" hormone - lower peaks = less fat locked away
Higher satiety hormonesYou eat less overall without feeling deprived
Reduced post-meal cravingsBlood sugar crash drives the "I need something sweet" urge - flatten the spike, kill the craving
Smaller carb portions naturallyYou're already partially full before carbs arrive

How to Actually Apply This at a Meal

Take a typical plate: grilled chicken + rice + broccoli + olive oil drizzle
Wrong order (most people): Rice → Chicken → Broccoli Right order: Broccoli first → Chicken → Drizzle olive oil → Rice last
You don't need to eat them in strict isolation - just start with the vegetables, let yourself chew and eat them fully, then move to protein, then finish with the carbs.

Practical Tips

  • Salads or cooked veg before the meal are an easy way to front-load fibre even before you sit down to the main plate
  • If a meal is mixed (stir fry, curry, bowl), eat around the carb-heavy components first and finish with rice/bread/noodles
  • This strategy works even at restaurants - order a side salad or soup first
  • You don't need to time it to the second - even a 5-10 minute gap between fibre/protein and carbs makes a difference
This is one of the simplest, zero-cost dietary interventions you can apply from your very next meal - no tracking, no calorie counting required. Want me to show you how to restructure a sample day of meals using this method?

Provide sources also

Reading Article

PMID: 31053510

Reading Article

PMID: 41156447

Searching PubMed

food order fiber protein carbohydrate satiety GLP-1 insulin

Searching PubMed

eating order vegetables protein before carbohydrates weight loss obesity

Reading Web Page

https://pmc.ncbi.nlm.nih.gov/articles/PMC7551485

Here is the same explanation, now with all sources cited:

Fibre → Protein → Fats → Carbs: The Science, with Sources


The Core Theory

Eating food components in a specific order within the same meal changes your postprandial (after-meal) blood glucose, insulin, and hunger hormone responses. The optimal sequence for weight loss and metabolic health is:
Fibre (vegetables) → Protein → Fats → Carbohydrates

Source 1 - The PATTERN Study (RCT, 2020)

Sun L, et al. "Postprandial glucose, insulin and incretin responses differ by test meal macronutrient ingestion sequence." Clinical Nutrition, 2020. PMID: 31053510 | DOI: 10.1016/j.clnu.2019.04.001
What they did: 16 healthy adults ate the same isocaloric meal (vegetables + chicken + white rice) in 5 different orders in a randomized crossover design.
What they found:
  • Eating vegetables first → meat → rice (V-M-R) produced the best outcome: lowest glucose spike, lowest insulin demand, and highest GLP-1 (satiety hormone) release
  • Eating rice first produced the worst outcome - highest glucose and insulin spikes
  • The V-M-R sequence attenuated postprandial glucose response significantly compared to carbs-first (p < 0.001)

Source 2 - Food Order + Divided Carbs RCT (2025)

Higuchi Y, et al. "Dietary Modification with Food Order and Divided Carbohydrate Intake Improves Glycemic Excursions in Healthy Young Women." Nutrients, 2025. PMID: 41156447 | DOI: 10.3390/nu17203194
What they did: 18 healthy women in a crossover trial - compared conventional eating (all food at once, 3 meals/day) vs. structured food order (vegetables → protein → carbs) with divided carb portions across 5 smaller meals.
What they found:
  • The food-sequencing group had significantly lower mean amplitude of glycaemic excursions (MAGE): 2.56 vs. 3.49 mmol/L (p < 0.01)
  • Lower glucose peaks after every meal (breakfast, lunch, and dinner)
  • Time spent above 7.8 mmol/L glucose was cut from 4.2% to 1.4% (p < 0.01)

Source 3 - Food Order Intervention in Prediabetes (RCT, 2023)

Shukla AP, et al. "A Randomized Controlled Pilot Study of the Food Order Behavioral Intervention in Prediabetes." Nutrients, 2023. PMID: 37892527
What they found: In prediabetic patients, a food order intervention (protein and vegetables before carbs) improved glycaemic control markers. The study highlighted food order as a practical, low-cost behavioral strategy that doesn't require calorie restriction.

Source 4 - Meal Sequence Review (NIH/PMC, 2020)

Imai S, et al. "A Review of Recent Findings on Meal Sequence: An Attractive Dietary Approach to Prevention and Management of Type 2 Diabetes." PMC Article, 2020. PMC7551485
Key conclusions from the review:
  • Preloading fibre before carbs reduces postprandial glucose elevation and may have a direct weight loss effect
  • Fibre + protein/fat sequencing before carbs has additive effects on glucose control
  • GLP-1 stimulation from food sequencing suppresses appetite via the hypothalamus (the hunger-control centre of the brain)
  • The review cautions that eating large amounts of saturated fat before carbs also raises GIP, which promotes fat storage - so fibre-first and lean protein-first is preferable

Source 5 - Ohio State University Clinical Commentary

Clinical commentary from OSU dietitians and physicians confirming that patients using vegetable-first eating report eating smaller portions of carbs naturally - a real-world satiety benefit backed by the above RCT data.

Quick Summary Table

ClaimEvidence
Vegetables first lowers glucose spikeRCT - PMID 31053510
Food order reduces insulin demandRCT - PMID 31053510
Structured food order cuts glycaemic swingsRCT - PMID 41156447
Fibre before carbs may aid weight lossReview - PMC7551485
Practical in prediabetes as a behaviour changeRCT - PMID 37892527
All studies are peer-reviewed, published in indexed journals, with no retraction flags. The evidence is strongest for blood sugar and insulin effects; direct long-term weight loss trials are still emerging, but the mechanism is well-supported.

Make a quick reference PDF I can share with clients/friends

Reading File
Reading File
Running Command

mkdir -p /home/daytona/workspace/weight-loss-series && ls /home/daytona/workspac…

Writing File

~/weight-loss-series/make_pdf.py

from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.units import mm
from reportlab.platypus import (
    SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle, HRFlowable
)
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.platypus import KeepTogether

OUTPUT = "/home/daytona/workspace/weight-loss-series/Meal_Sequence_Guide.pdf"

# ── Colours ──────────────────────────────────────────────────────────────────
GREEN_DARK  = colors.HexColor("#1B5E20")
GREEN_MED   = colors.HexColor("#2E7D32")
GREEN_LIGHT = colors.HexColor("#C8E6C9")
GREEN_PALE  = colors.HexColor("#F1F8E9")
ACCENT      = colors.HexColor("#558B2F")
TEXT_DARK   = colors.HexColor("#1A1A1A")
TEXT_MID    = colors.HexColor("#424242")
WHITE       = colors.white
GOLD        = colors.HexColor("#F9A825")

doc = SimpleDocTemplate(
    OUTPUT,
    pagesize=A4,
    leftMargin=18*mm, rightMargin=18*mm,
    topMargin=14*mm,  bottomMargin=14*mm,
)
W, H = A4
story = []

# ── Styles ────────────────────────────────────────────────────────────────────
base = getSampleStyleSheet()

def S(name, **kw):
    return ParagraphStyle(name, **kw)

title_s = S("MainTitle",
    fontSize=26, leading=32, textColor=WHITE,
    fontName="Helvetica-Bold", alignment=TA_CENTER, spaceAfter=4)

subtitle_s = S("SubTitle",
    fontSize=12, leading=16, textColor=GREEN_LIGHT,
    fontName="Helvetica", alignment=TA_CENTER, spaceAfter=0)

section_h = S("SectionH",
    fontSize=13, leading=17, textColor=GREEN_DARK,
    fontName="Helvetica-Bold", spaceBefore=10, spaceAfter=4)

body_s = S("Body",
    fontSize=9.5, leading=14, textColor=TEXT_DARK,
    fontName="Helvetica", spaceAfter=4, alignment=TA_JUSTIFY)

bullet_s = S("Bullet",
    fontSize=9.5, leading=14, textColor=TEXT_DARK,
    fontName="Helvetica", leftIndent=12, spaceAfter=3,
    bulletIndent=4, alignment=TA_LEFT)

small_s = S("Small",
    fontSize=8, leading=11, textColor=TEXT_MID,
    fontName="Helvetica", spaceAfter=2)

cite_s = S("Cite",
    fontSize=7.5, leading=10, textColor=ACCENT,
    fontName="Helvetica-Oblique", spaceAfter=2)

step_label_s = S("StepLabel",
    fontSize=10, leading=13, textColor=WHITE,
    fontName="Helvetica-Bold", alignment=TA_CENTER)

step_body_s = S("StepBody",
    fontSize=9, leading=13, textColor=TEXT_DARK,
    fontName="Helvetica", alignment=TA_LEFT)

tag_s = S("Tag",
    fontSize=8, leading=11, textColor=WHITE,
    fontName="Helvetica-Bold", alignment=TA_CENTER)

# ─────────────────────────────────────────────────────────────────────────────
# HEADER BANNER
# ─────────────────────────────────────────────────────────────────────────────
banner_text = [
    [Paragraph("The Meal Sequence Method", title_s)],
    [Paragraph("Eat in the right order. Control your blood sugar. Lose weight.", subtitle_s)],
]
banner = Table(banner_text, colWidths=[W - 36*mm])
banner.setStyle(TableStyle([
    ("BACKGROUND", (0,0), (-1,-1), GREEN_DARK),
    ("TOPPADDING",    (0,0), (-1,0), 14),
    ("BOTTOMPADDING", (0,0), (-1,0), 4),
    ("TOPPADDING",    (0,1), (-1,1), 2),
    ("BOTTOMPADDING", (0,1), (-1,1), 14),
    ("LEFTPADDING",  (0,0), (-1,-1), 10),
    ("RIGHTPADDING", (0,0), (-1,-1), 10),
    ("ROUNDEDCORNERS", [6]),
]))
story.append(banner)
story.append(Spacer(1, 8*mm))

# ─────────────────────────────────────────────────────────────────────────────
# INTRO BLURB
# ─────────────────────────────────────────────────────────────────────────────
story.append(Paragraph(
    "Research shows that <b>the order you eat food within a meal</b> significantly affects "
    "your blood sugar response, insulin levels, and how full you feel - even when the total "
    "calories are identical. This simple strategy requires no calorie counting, no special "
    "foods, and works from your very next meal.",
    body_s))
story.append(Spacer(1, 5*mm))

# ─────────────────────────────────────────────────────────────────────────────
# THE 4-STEP SEQUENCE
# ─────────────────────────────────────────────────────────────────────────────
story.append(Paragraph("The 4-Step Eating Order", section_h))
story.append(HRFlowable(width="100%", thickness=1.5, color=GREEN_MED, spaceAfter=6))

steps = [
    ("1", "FIBRE FIRST",   "Vegetables, salad, greens, legumes",
     "Forms a physical mesh in your gut that slows carb absorption. "
     "Triggers GLP-1 (satiety hormone). Reduces blood sugar spike by up to 30%."),
    ("2", "PROTEIN SECOND","Chicken, fish, eggs, tofu, legumes, dairy",
     "Further boosts GLP-1 and PYY (fullness hormones). "
     "High thermic effect - burns 25-30% of its own calories in digestion. "
     "Preserves muscle while losing fat."),
    ("3", "FATS THIRD",    "Olive oil, avocado, nuts, oily fish",
     "Slows gastric emptying further. No blood sugar spike. "
     "Adds lasting satiety - keeps you full for 3-4 hours."),
    ("4", "CARBS LAST",    "Rice, bread, pasta, potato, fruit",
     "By now: fibre mesh is in place, stomach is partially full, GLP-1 is elevated. "
     "Glucose enters bloodstream gradually - lower spike, lower insulin, less fat storage."),
]

step_colors = [GREEN_DARK, GREEN_MED, ACCENT, colors.HexColor("#33691E")]

for num, title, examples, desc in steps:
    idx = int(num) - 1
    col = step_colors[idx]

    num_cell  = Paragraph(num, S(f"N{num}", fontSize=22, leading=26,
                                  textColor=WHITE, fontName="Helvetica-Bold",
                                  alignment=TA_CENTER))
    head_cell = Paragraph(f"<b>STEP {num}: {title}</b>",
                          S(f"H{num}", fontSize=11, leading=14,
                            textColor=WHITE, fontName="Helvetica-Bold"))
    ex_cell   = Paragraph(f"<i>e.g. {examples}</i>",
                          S(f"E{num}", fontSize=8.5, leading=12,
                            textColor=GREEN_LIGHT, fontName="Helvetica-Oblique"))
    desc_cell = Paragraph(desc,
                          S(f"D{num}", fontSize=9, leading=13,
                            textColor=TEXT_DARK, fontName="Helvetica"))

    inner = Table(
        [[head_cell], [ex_cell]],
        colWidths=[120*mm]
    )
    inner.setStyle(TableStyle([
        ("TOPPADDING",    (0,0), (-1,-1), 1),
        ("BOTTOMPADDING", (0,0), (-1,-1), 1),
        ("LEFTPADDING",   (0,0), (-1,-1), 0),
        ("RIGHTPADDING",  (0,0), (-1,-1), 0),
    ]))

    row = Table(
        [[num_cell, inner, desc_cell]],
        colWidths=[14*mm, 88*mm, 68*mm]
    )
    row.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (1,0), col),
        ("BACKGROUND",    (2,0), (2,0), GREEN_PALE),
        ("VALIGN",        (0,0), (-1,-1), "MIDDLE"),
        ("TOPPADDING",    (0,0), (-1,-1), 8),
        ("BOTTOMPADDING", (0,0), (-1,-1), 8),
        ("LEFTPADDING",   (0,0), (0,0), 4),
        ("LEFTPADDING",   (1,0), (1,0), 8),
        ("LEFTPADDING",   (2,0), (2,0), 10),
        ("RIGHTPADDING",  (2,0), (2,0), 8),
        ("ROUNDEDCORNERS", [4]),
        ("BOX", (0,0), (-1,-1), 0.5, colors.HexColor("#A5D6A7")),
    ]))
    story.append(KeepTogether([row, Spacer(1, 3*mm)]))

story.append(Spacer(1, 3*mm))

# ─────────────────────────────────────────────────────────────────────────────
# WHY IT WORKS - TWO COLUMNS
# ─────────────────────────────────────────────────────────────────────────────
story.append(Paragraph("Why It Works for Weight Loss", section_h))
story.append(HRFlowable(width="100%", thickness=1.5, color=GREEN_MED, spaceAfter=6))

benefits = [
    ("Lower insulin spike",       "Insulin = fat-storage hormone. Flatten the spike, reduce fat storage."),
    ("More satiety hormones",     "GLP-1 and PYY rise earlier, so you eat less without feeling deprived."),
    ("Fewer cravings",            "Blood sugar crashes drive sweet cravings. A gradual rise = no crash."),
    ("Naturally smaller portions","You are already partially full before carbs arrive on your plate."),
    ("No calorie counting needed","The mechanism works passively - just change the order."),
    ("Reduces inflammation",      "Blunting glucose spikes lowers inflammatory immune activation over time."),
]

left_rows  = [[Paragraph(f"<b>{b[0]}</b>", S("BH", fontSize=9, leading=12,
               textColor=GREEN_DARK, fontName="Helvetica-Bold")),
               Paragraph(b[1], S("BD", fontSize=8.5, leading=12,
               textColor=TEXT_DARK, fontName="Helvetica"))]
              for b in benefits[:3]]
right_rows = [[Paragraph(f"<b>{b[0]}</b>", S("BH2", fontSize=9, leading=12,
               textColor=GREEN_DARK, fontName="Helvetica-Bold")),
               Paragraph(b[1], S("BD2", fontSize=8.5, leading=12,
               textColor=TEXT_DARK, fontName="Helvetica"))]
              for b in benefits[3:]]

def make_benefit_table(rows):
    t = Table(rows, colWidths=[42*mm, 43*mm])
    t.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,-1), GREEN_PALE),
        ("VALIGN",        (0,0), (-1,-1), "TOP"),
        ("TOPPADDING",    (0,0), (-1,-1), 5),
        ("BOTTOMPADDING", (0,0), (-1,-1), 5),
        ("LEFTPADDING",   (0,0), (0,-1), 8),
        ("LEFTPADDING",   (1,0), (1,-1), 6),
        ("RIGHTPADDING",  (0,0), (-1,-1), 6),
        ("LINEBELOW",     (0,0), (-1,-2), 0.4, colors.HexColor("#A5D6A7")),
        ("BOX",           (0,0), (-1,-1), 0.5, colors.HexColor("#A5D6A7")),
    ]))
    return t

two_col = Table(
    [[make_benefit_table(left_rows), make_benefit_table(right_rows)]],
    colWidths=[(W - 36*mm)/2 - 2*mm, (W - 36*mm)/2 - 2*mm],
    hAlign="LEFT"
)
two_col.setStyle(TableStyle([
    ("LEFTPADDING",  (0,0), (-1,-1), 0),
    ("RIGHTPADDING", (0,0), (-1,-1), 0),
    ("TOPPADDING",   (0,0), (-1,-1), 0),
    ("BOTTOMPADDING",(0,0), (-1,-1), 0),
    ("VALIGN",       (0,0), (-1,-1), "TOP"),
]))
story.append(two_col)
story.append(Spacer(1, 5*mm))

# ─────────────────────────────────────────────────────────────────────────────
# PRACTICAL TIPS
# ─────────────────────────────────────────────────────────────────────────────
story.append(Paragraph("Practical Tips", section_h))
story.append(HRFlowable(width="100%", thickness=1.5, color=GREEN_MED, spaceAfter=6))

tips = [
    "Start every meal with a side salad, raw veggies, or cooked greens before anything else.",
    "At restaurants, order a soup or salad starter - it counts as your fibre first.",
    "Mixed meals (stir fry, curry, bowls)? Eat around the veggies first, finish with rice/noodles.",
    "A 5-10 min gap between fibre/protein and carbs makes a measurable difference.",
    "Pair this with adequate protein (1.6-2.2g per kg bodyweight) for best fat-loss results.",
    "Weigh yourself weekly (same time, same conditions) - trends matter, not daily numbers.",
]

tip_data = [[Paragraph(f"<b>{i+1}.</b>  {t}", S(f"T{i}", fontSize=9, leading=13,
             textColor=TEXT_DARK, fontName="Helvetica"))]
            for i, t in enumerate(tips)]

tip_table = Table(tip_data, colWidths=[W - 36*mm])
tip_table.setStyle(TableStyle([
    ("BACKGROUND",    (0,0), (-1,-1), WHITE),
    ("BACKGROUND",    (0,0), (-1,0), GREEN_PALE),
    ("BACKGROUND",    (0,2), (-1,2), GREEN_PALE),
    ("BACKGROUND",    (0,4), (-1,4), GREEN_PALE),
    ("TOPPADDING",    (0,0), (-1,-1), 6),
    ("BOTTOMPADDING", (0,0), (-1,-1), 6),
    ("LEFTPADDING",   (0,0), (-1,-1), 10),
    ("LINEBELOW",     (0,0), (-1,-2), 0.4, colors.HexColor("#C8E6C9")),
    ("BOX",           (0,0), (-1,-1), 0.5, colors.HexColor("#A5D6A7")),
]))
story.append(tip_table)
story.append(Spacer(1, 5*mm))

# ─────────────────────────────────────────────────────────────────────────────
# SOURCES
# ─────────────────────────────────────────────────────────────────────────────
story.append(Paragraph("Evidence & Sources", section_h))
story.append(HRFlowable(width="100%", thickness=1.5, color=GREEN_MED, spaceAfter=5))

sources = [
    ("1", "Sun L et al.",
     "Postprandial glucose, insulin and incretin responses differ by test meal macronutrient "
     "ingestion sequence (PATTERN study). Clinical Nutrition, 2020.",
     "PMID: 31053510"),
    ("2", "Higuchi Y et al.",
     "Dietary Modification with Food Order and Divided Carbohydrate Intake Improves Glycemic "
     "Excursions in Healthy Young Women. Nutrients, 2025.",
     "PMID: 41156447"),
    ("3", "Shukla AP et al.",
     "A Randomized Controlled Pilot Study of the Food Order Behavioral Intervention in "
     "Prediabetes. Nutrients, 2023.",
     "PMID: 37892527"),
    ("4", "Imai S et al.",
     "A Review of Recent Findings on Meal Sequence: An Attractive Dietary Approach to "
     "Prevention and Management of Type 2 Diabetes. PMC, 2020.",
     "PMC7551485"),
]

for num, author, title_txt, pid in sources:
    row = Table(
        [[Paragraph(f"<b>[{num}]</b>", S(f"SN{num}", fontSize=8.5, leading=12,
                    textColor=ACCENT, fontName="Helvetica-Bold")),
          Paragraph(f"<b>{author}</b> {title_txt} "
                    f"<font color='#558B2F'><i>{pid}</i></font>",
                    S(f"ST{num}", fontSize=8, leading=12,
                      textColor=TEXT_MID, fontName="Helvetica"))]],
        colWidths=[10*mm, W - 46*mm]
    )
    row.setStyle(TableStyle([
        ("VALIGN",        (0,0), (-1,-1), "TOP"),
        ("TOPPADDING",    (0,0), (-1,-1), 3),
        ("BOTTOMPADDING", (0,0), (-1,-1), 3),
        ("LEFTPADDING",   (0,0), (0,0), 0),
        ("LEFTPADDING",   (1,0), (1,0), 4),
    ]))
    story.append(row)

story.append(Spacer(1, 4*mm))

# ─────────────────────────────────────────────────────────────────────────────
# FOOTER
# ─────────────────────────────────────────────────────────────────────────────
footer_data = [[
    Paragraph("This guide is for informational purposes only. Consult a registered dietitian "
              "or healthcare professional before making significant dietary changes.",
              S("Disc", fontSize=7.5, leading=11, textColor=WHITE,
                fontName="Helvetica-Oblique", alignment=TA_CENTER)),
]]
footer = Table(footer_data, colWidths=[W - 36*mm])
footer.setStyle(TableStyle([
    ("BACKGROUND",    (0,0), (-1,-1), GREEN_MED),
    ("TOPPADDING",    (0,0), (-1,-1), 7),
    ("BOTTOMPADDING", (0,0), (-1,-1), 7),
    ("LEFTPADDING",   (0,0), (-1,-1), 10),
    ("RIGHTPADDING",  (0,0), (-1,-1), 10),
    ("ROUNDEDCORNERS", [4]),
]))
story.append(footer)

# ─────────────────────────────────────────────────────────────────────────────
doc.build(story)
print(f"PDF saved to: {OUTPUT}")
Running Command

python /home/daytona/workspace/weight-loss-series/make_pdf.py

Your PDF is ready! Here's the download link:

Meal Sequence Guide

PDF Document · PDF


What's inside the PDF:
  • Header banner - title and one-line summary
  • 4-step eating order - each step (Fibre → Protein → Fats → Carbs) with examples and the mechanism explained
  • Why it works - 6 weight-loss benefits in a clean two-column layout
  • 6 practical tips - actionable, ready to use from the next meal
  • 4 peer-reviewed sources with author names, journal, year, and PubMed IDs
It's designed to be clean, shareable, and easy to read in one page - good for clients, friends, or social sharing. Let me know if you'd like to adjust the branding, add your name/logo, or create the next piece in the series!

Give a pdf for this 4 step with attractive pictures to make understand to patient

Generating Image

A beautiful overhead flat lay photo of fresh colourful vegetables and salad for a nutrition guide - broccoli, spinach, cucumber, carrots, cherry tomatoes on a white background, vibrant and appetising, clean food photography style

Generating Image

A beautiful overhead flat lay photo of high protein foods for a nutrition guide - grilled chicken breast, boiled eggs, canned tuna, tofu block, Greek yogurt, arranged neatly on a white background, clean food photography style

Generating Image

A beautiful overhead flat lay photo of healthy fats foods for a nutrition guide - avocado halves, walnuts, almonds, olive oil bottle, salmon fillet, arranged neatly on a white background, clean food photography style

Generating Image

A beautiful overhead flat lay photo of complex carbohydrate foods for a nutrition guide - brown rice bowl, whole grain bread slices, sweet potato, oats, banana, arranged neatly on a white background, clean food photography style

!

400, message: Got more than 4194304 bytes when reading: b'data: {"candidates": [{"content": {"role": "model","parts": [{"inlineData": {"mimeType": "image/png"...'.

We encountered an error while processing your request. Please try again or reach out to us for help.

This is a shared conversation. Sign in to Orris to start your own chat.