⚡ Plan study sessions from syllabus PDFs with Gemini, Google Calendar, and Sheets

⚡ 39 views · ⚡ Personal Productivity

Description

Quick overview

This workflow downloads a syllabus PDF from Google Drive, extracts and cleans the text, uses Google Gemini to identify assignments and due dates, then creates Google Calendar events for deadlines and study sessions and logs all created events to Google Sheets.

How it works

  1. Runs manually when you click Execute workflow in n8n.
  2. Downloads the syllabus PDF from Google Drive and extracts its text content.
  3. Cleans the extracted text to remove formatting noise and improve parsing accuracy.
  4. Sends the cleaned syllabus text to Google Gemini to return a JSON list of assignments with due dates and effort estimates.
  5. Normalizes the AI output by parsing the JSON, converting due dates to ISO format, applying default hours, and assigning a priority based on how soon each due date is.
  6. Generates a study session schedule for each assignment and creates Google Calendar events for both assignment deadlines and study sessions.
  7. Merges all created event data, appends a standardized row for each event into Google Sheets, and outputs a run summary with event counts.

Setup

  1. Connect credentials for Google Drive, Google Calendar, Google Sheets, and the Gemini (Google PaLM) API in n8n.
  2. Update the Google Drive file ID to the correct syllabus PDF you want to process.
  3. Select the target Google Calendar and ensure the workflow has permission to create events in it.
  4. Set the Google Sheets document and sheet tab and make sure the sheet has columns matching: type, title, course_name, priority, start, end, due_date, description, and calendar_event_id.

Additional info

How To Customize Nodes

Add-ons

Use Case Examples

Troubleshooting Guide

IssuePossible CauseSolution
Workflow runs but no assignments are createdGemini response is not valid JSON or assignments array is emptyCheck the Parse Assignments And Deadlines node output, adjust the prompt, and verify that the syllabus text includes clear assignment lines.
Normalize Deadlines throws “Failed to parse Gemini JSON”Model output contains extra text or code fences around JSONEnsure the prompt enforces JSON-only output, and keep the markdown fence removal logic in Normalize Deadlines.
Calendar events appear with wrong or missing datesdue_date is missing or not converted to ISO formatVerify due_date values in the Gemini output and the toISO function in Normalize Deadlines; adjust parsing rules if your dates use a different format.
No rows are added to Google SheetsGoogle Sheets credentials, documentId, or sheetName are incorrectReconnect Google Sheets credentials, confirm the spreadsheet and tab IDs, and test Append row in sheet with sample data.
All events show up as unknown in Debug SummaryPrepare Events For Sheet cannot classify events as assignment_deadline or study_sessionInspect event descriptions and summaries to ensure they contain the keyword patterns used in normalize, or update the classification logic.
Study sessions do not align with expected datesGenerate Weekly Study Tasks uses a fixed offset of two days before due_dateModify the baseDate logic and sessionLengthHours to match your desired spacing or to generate multiple sessions.
Image-only syllabus PDFs produce empty or poor textExtract From File cannot read text from scanned or image-based PDFsUse text-based PDFs only, or add an OCR step outside the current workflow design to convert images into text before processing.

Need Help ?

If you need assistance setting up this workflow, adapting it to a different syllabus format or extending it with additional add-ons, you can reach out to WeblineIndia for implementation support, customization and hiring n8n developers. Whether you want to add more study session logic, integrate other calendar systems or build related academic automation workflows, our expert help is always available to get this template fit your environment and scale with your needs.

🔗 Nodes Used

Google Sheets, Google Drive, Google Calendar, Extract from File, Google Gemini

📥 Import

Download workflow.json and import into n8n: Workflow menu → Import from File

📖 Importing guide · 🔑 Credential setup