<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: glensum</title>
    <description>The latest articles on DEV Community by glensum (@glenkit).</description>
    <link>https://dev.to/glenkit</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4146503%2F1e546bec-ae0f-4475-9d59-5496586039ef.png</url>
      <title>DEV Community: glensum</title>
      <link>https://dev.to/glenkit</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/glenkit"/>
    <language>en</language>
    <item>
      <title>From web page to Anki deck in one click: a flashcard workflow that stays in your browser</title>
      <dc:creator>glensum</dc:creator>
      <pubDate>Wed, 30 Sep 2026 02:09:21 +0000</pubDate>
      <link>https://dev.to/glenkit/from-web-page-to-anki-deck-in-one-click-a-flashcard-workflow-that-stays-in-your-browser-2dln</link>
      <guid>https://dev.to/glenkit/from-web-page-to-anki-deck-in-one-click-a-flashcard-workflow-that-stays-in-your-browser-2dln</guid>
      <description>&lt;p&gt;If you use &lt;a href="https://apps.ankiweb.net/" rel="noopener noreferrer"&gt;Anki&lt;/a&gt; seriously, you already know the workflow: read an article, spot a fact worth remembering, switch windows, paste it into a note template, reformat it, repeat. The reading and the card-making happen in two different worlds, and the friction quietly kills half the cards you intended to make.&lt;/p&gt;

&lt;p&gt;This post walks through a workflow that keeps everything in the browser tab: select text, generate flashcards, review them, and write them straight into your Anki decks. It uses &lt;a href="https://glenkit.com/ankimate?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=ankimate" rel="noopener noreferrer"&gt;AnkiMate&lt;/a&gt;, a Chrome and Edge extension my team built — but the setup (AnkiConnect + a capture habit) works with other tools too, so most of this post applies even if you use something else.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 60-second setup
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Install the &lt;a href="https://chromewebstore.google.com/detail/bloicodjmkmfdobmefmkijmlfkjpjjjf?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=ankimate" rel="noopener noreferrer"&gt;AnkiMate extension&lt;/a&gt; (also &lt;a href="https://microsoftedge.microsoft.com/addons/detail/cbinjkcachcgacclkpemaogiefhjgjag?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=ankimate" rel="noopener noreferrer"&gt;on Edge&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;In desktop Anki, install the AnkiConnect add-on (code &lt;code&gt;2055492159&lt;/code&gt;) and restart Anki.&lt;/li&gt;
&lt;li&gt;That's it. The extension talks to your local Anki over AnkiConnect — there is no account, no cloud sync step, no middleman.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The workflow: select → generate → review → write
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Select any text&lt;/strong&gt; on an article, lecture note, or documentation page (or use full page / PDF / YouTube transcript as input).&lt;/li&gt;
&lt;li&gt;Right-click → &lt;strong&gt;Generate flashcards&lt;/strong&gt;. A side panel opens with draft cards.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Edit or delete&lt;/strong&gt; anything you don't like. Nothing is final here — every card is editable, removable, and draft-saved.&lt;/li&gt;
&lt;li&gt;Pick a deck and hit &lt;strong&gt;Write to Anki&lt;/strong&gt;. Cards land in your collection tagged and deduplicated.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The last step is the one that saves the most time. Cards are written directly into the deck you choose, deduplicated by content hash — and if the source page changed, the card gets updated instead of duplicated. No more discovering three near-identical cards about the same fact a month later.&lt;/p&gt;

&lt;h2&gt;
  
  
  Templates tuned by subject, not one generic prompt
&lt;/h2&gt;

&lt;p&gt;A generic "make flashcards from this text" prompt produces generic cards. AnkiMate ships nine templates, each tuned for a subject:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Medicine (USMLE)&lt;/strong&gt; — expects clinical detail, not trivia&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GRE vocabulary&lt;/strong&gt; — word, definition, usage&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Language learning&lt;/strong&gt; — front/back with context, plus a reversed-vocabulary variant&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Law&lt;/strong&gt; — element-based structure&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Programming&lt;/strong&gt; — concept and code-focused cards&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;List breakdown&lt;/strong&gt; — turns enumerations into atomic cards (the classic "one fact per card" rule, enforced for you)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;General&lt;/strong&gt; — everything else&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Eight templates are free. Pro adds &lt;strong&gt;Cloze deletions&lt;/strong&gt; (fill-in-the-blank), which is the right format for definitions, dates, and anatomy.&lt;/p&gt;

&lt;h2&gt;
  
  
  Privacy: on-device AI by default, BYOK if you want more
&lt;/h2&gt;

&lt;p&gt;This matters to us, so it's the design center: &lt;strong&gt;on-device AI handles generation by default, and your selected text never leaves the browser&lt;/strong&gt;. If you want a stronger cloud model, you plug in &lt;strong&gt;your own API key&lt;/strong&gt; — and then your text goes directly from the extension to that provider, not through our servers. We never see your selections, your cards, or your key. (We wrote up &lt;a href="https://glenkit.com/blog/summarize-articles-byok-privacy?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=ankimate" rel="noopener noreferrer"&gt;why this matters&lt;/a&gt; in more detail — most "AI readers" proxy every page you visit through their own backend.)&lt;/p&gt;

&lt;h2&gt;
  
  
  Pricing, honestly
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Free, every day, no card required&lt;/strong&gt;: 3 generations per day (roughly 45–90 cards), all 8 non-Pro templates, all input types, unlimited writes to Anki. For most students this is genuinely enough.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pro · Lifetime $19.9&lt;/strong&gt; (launch price, $29.9 after): unlimited generations, batch generation of 20+ cards from long pages, and the Cloze template. One payment, no subscription — the price of two coffees for the tool you'll use every study session.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Honest limitations
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Desktop Anki (with AnkiConnect) needs to be running when you write cards — AnkiMobile/AnkiDroid alone won't receive them.&lt;/li&gt;
&lt;li&gt;Generation quality tracks source quality: a well-structured page produces great cards; a rambling forum thread needs more editing.&lt;/li&gt;
&lt;li&gt;It makes cards, not understanding. Spaced repetition still requires you to actually do the reviews.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;Install from the &lt;a href="https://chromewebstore.google.com/detail/bloicodjmkmfdobmefmkijmlfkjpjjjf?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=ankimate" rel="noopener noreferrer"&gt;Chrome Web Store&lt;/a&gt; or &lt;a href="https://microsoftedge.microsoft.com/addons/detail/cbinjkcachcgacclkpemaogiefhjgjag?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=ankimate" rel="noopener noreferrer"&gt;Edge Add-ons&lt;/a&gt;, or read more at &lt;a href="https://glenkit.com/ankimate?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=ankimate" rel="noopener noreferrer"&gt;glenkit.com/ankimate&lt;/a&gt;. If you have questions about the AnkiConnect setup or template design, leave a comment — I reply to all of them.&lt;/p&gt;

</description>
      <category>anki</category>
      <category>productivity</category>
      <category>learning</category>
      <category>browsers</category>
    </item>
    <item>
      <title>How to summarize 2-hour videos and 50-page articles without leaving the browser tab</title>
      <dc:creator>glensum</dc:creator>
      <pubDate>Tue, 29 Sep 2026 07:39:22 +0000</pubDate>
      <link>https://dev.to/glenkit/how-to-summarize-2-hour-videos-and-50-page-articles-without-leaving-the-browser-tab-ak9</link>
      <guid>https://dev.to/glenkit/how-to-summarize-2-hour-videos-and-50-page-articles-without-leaving-the-browser-tab-ak9</guid>
      <description>&lt;p&gt;A 40-minute conference talk. A 90-minute podcast. A 12-minute tutorial that could have been a blog post. Most of what's valuable in a video is its &lt;em&gt;content&lt;/em&gt; — and content can be read.&lt;/p&gt;

&lt;p&gt;I've been building &lt;a href="https://glenkit.com/glensum.html?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=summarize-long-content" rel="noopener noreferrer"&gt;GlenSum&lt;/a&gt;, a browser extension that summarizes long videos and articles directly in the tab. This post covers the three working approaches to media summarization in a browser, the privacy trade-off most people don't notice they're making, and what "long content" actually means for an LLM.&lt;/p&gt;

&lt;h2&gt;
  
  
  Three ways to summarize a YouTube video (slowest to fastest)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. The transcript, by hand
&lt;/h3&gt;

&lt;p&gt;Every video with captions has a transcript: expand the description → &lt;em&gt;Show transcript&lt;/em&gt; → select all → paste into any AI chat.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cost:&lt;/strong&gt; free&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Time:&lt;/strong&gt; 3–5 minutes of fiddly copying, and raw transcripts are messy — no punctuation, no speaker labels, timestamps everywhere&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best for:&lt;/strong&gt; one-off use when you can't install anything&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Paste the URL into an AI chat
&lt;/h3&gt;

&lt;p&gt;Some assistants accept a YouTube URL directly and fetch the transcript themselves. Paste the link, ask for key points.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cost:&lt;/strong&gt; often limited by your plan's usage quota&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Caveat:&lt;/strong&gt; availability varies by model and region — and now the video passes through yet another service&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best for:&lt;/strong&gt; occasional videos when you already pay for an assistant&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. A browser extension, one click
&lt;/h3&gt;

&lt;p&gt;Extensions built for this read the transcript from the page you already have open and generate a structured summary in a side panel. The workflow becomes: open the video → click the extension → read the summary. No copying, no tab-switching.&lt;/p&gt;

&lt;p&gt;The extras that matter: adjustable summary length, follow-up questions about the content ("what did they say about X?"), bilingual output when the talk isn't in your first language, and Markdown/PDF export so the summary lands in your notes.&lt;/p&gt;

&lt;h2&gt;
  
  
  The privacy trade-off most people miss
&lt;/h2&gt;

&lt;p&gt;Here's the part that motivated building this in the first place. When you paste a URL or transcript into a hosted summarizer, your &lt;strong&gt;reading and watching history becomes someone's dataset&lt;/strong&gt;. Article by article, video by video, a profile of what you consume accumulates on a server you don't control. That's a real cost that never shows up on the pricing page.&lt;/p&gt;

&lt;p&gt;The alternative is BYOK — bring your own key:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You paste an API key from your own AI provider (OpenAI, Google, a local gateway, anything OpenAI-compatible) into the extension once.&lt;/li&gt;
&lt;li&gt;The extension reads the page content in your browser and sends it &lt;strong&gt;directly to the provider you chose&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;There is no middleman server. No account. No logs on my side, because there is no "my side" — the extension ships as static code, and the network calls go from your browser to your provider.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The trade-off is honest: you manage your own key, and free-tier users can still use built-in free models without one. But nobody in the middle ever sees what you read.&lt;/p&gt;

&lt;h2&gt;
  
  
  What "long" actually means for an LLM
&lt;/h2&gt;

&lt;p&gt;Summarizing a 2-hour talk isn't just "paste transcript into prompt". A two-hour transcript is roughly 25,000–40,000 words — technically it may fit a modern context window, but quality degrades: the model skims, drops the middle, and blends sections together.&lt;/p&gt;

&lt;p&gt;The approach that works is &lt;strong&gt;map-reduce over chunks&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Map:&lt;/strong&gt; split the transcript (or article) into overlapping chunks at natural boundaries — chapters, speaker turns, section headings — and summarize each chunk separately.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reduce:&lt;/strong&gt; merge the chunk summaries into a final structured summary, keeping section-level detail instead of a mushy average.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is also why page-native tools beat copy-paste: the extension already knows the page structure, so it can split at real boundaries instead of arbitrary token counts.&lt;/p&gt;

&lt;h2&gt;
  
  
  When a summary is the wrong tool
&lt;/h2&gt;

&lt;p&gt;Summaries are ideal for &lt;strong&gt;inverted-pyramid content&lt;/strong&gt;: talks, podcasts, news analysis, tutorials — where information density is low and predictable. They're poor substitutes for &lt;strong&gt;demonstration content&lt;/strong&gt;: if someone is showing you how to do a three-point turn, no summary captures the steering.&lt;/p&gt;

&lt;p&gt;A good rule: summarize first to decide &lt;em&gt;whether&lt;/em&gt; to watch — not to avoid watching things worth watching.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;GlenSum is free to install and works out of the box (built-in free models, or your own key for unlimited use):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🌐 Site &amp;amp; docs: &lt;a href="https://glenkit.com/glensum.html?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=summarize-long-content" rel="noopener noreferrer"&gt;glenkit.com/glensum&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;🧩 &lt;a href="https://microsoftedge.microsoft.com/addons/detail/glensum-web-summary-ass/bpiieipdednngkkgdhmgmfbbbncepdpd" rel="noopener noreferrer"&gt;Edge Add-ons&lt;/a&gt; · &lt;a href="https://chromewebstore.google.com/detail/glensum-web-summary-assis/ppljcihchddoaoebcgkjobinhhcloaek" rel="noopener noreferrer"&gt;Chrome Web Store&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Questions about the architecture — especially around BYOK flows or chunking strategies for long transcripts — happy to answer in the comments.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>productivity</category>
      <category>chrome</category>
    </item>
  </channel>
</rss>
