Back to Blog

How NoteSynth Works: A Behind-the-Scenes Look

February 20267 min read

Ever wondered how NoteSynth transforms video lectures into perfectly formatted study notes? In this post, we'll walk you through the entire processβ€”from entering your Udemy cookie to downloading your organized notes.

The 5-Step Process

1

Authentication

When you paste your Udemy cookie, NoteSynth uses it to access the Udemy API on your behalf. This is the same cookie your browser uses when you watch coursesβ€”no password required.

πŸ“ Note: Your cookie is stored only in your browser's local storage. It never leaves your device except to make requests directly to Udemy.

2

Course Discovery

Once authenticated, NoteSynth fetches your enrolled courses from Udemy's API, including:

Course titles & thumbnails
Your progress on each course
Curriculum (chapters & lectures)
3

Lecture Selection

You choose which lectures you want notes for. Select individual lectures, entire chapters, or choose "Select All" for the complete course.

πŸ’‘ Tip: For large courses, we recommend generating notes chapter-by-chapter to avoid timeouts.

4

Configure Settings (Optional)

Tailor the output to your liking by visiting the Settings page:

Custom Prompt

Edit the AI instructions to change formatting, add sections, or adjust note style.

Output Format

Choose between individual files per chapter or combined files with Table of Contents.

5

Caption Extraction & AI Processing

This is where the magic happens! For each selected lecture:

1

Caption Fetch - NoteSynth retrieves the English captions from Udemy

2

VTT Parsing - The raw caption file is cleaned up, removing timestamps

3

AI Enhancement - The transcript is sent to Groq or Gemini

Example Output
## Lecture Title

Key concept explanation with proper formatting...

- πŸ“Œ **Example:** Real-world application
- πŸ’‘ **Tip:** Best practice suggestion
- ⚠️ **Warning:** Common mistake to avoid

```python
def example():
    return "formatted nicely"
```
6

ZIP Generation & Download

After all lectures are processed:

Notes organized into folders matching course structure
Files named with indices for proper ordering
Everything compressed into a single ZIP file
Browser downloads the file automatically

Technical Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Browser   │────▢│  Next.js    │────▢│  Udemy API  β”‚
β”‚  (React)    β”‚     β”‚  API Routes β”‚     β”‚             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                           β”‚
                           β–Ό
                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚  AI Service β”‚
                    β”‚ (Groq/Gemini)β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key Technologies:

Frontend:Next.js 15 with React
Styling:Tailwind CSS with glassmorphism
AI:Groq (Llama 3.3) & Gemini 1.5 Flash
ZIP Generation:JSZip library

Performance Optimizations

⚑ Parallel Processing

Instead of processing lectures one-by-one, we use concurrent requests with intelligent rate limiting:

Groq3 concurrent, 2s interval
Gemini5 concurrent, 1s interval

10 lectures: ~20 seconds (vs 50+ seconds)

πŸ”„ Smart Retry Logic

Rate limits happen. NoteSynth automatically:

  • Detects 429 Too Many Requests errors
  • Waits with exponential backoff
  • Falls back to alternate AI provider

Privacy & Security

We take your privacy seriously:

DataStored WhereDuration
Udemy CookieBrowser localStorageUntil you clear it
Course DataBrowser memoryCurrent session only
Generated NotesYour downloads folderYou control it

We never store: Your cookies on our servers, your course content, your generated notes, or any personal information.

Ready to try it?

NoteSynth is 100% open source under the MIT license.