explaingit

johnmaeda/js-localpage

16TypeScriptAudience · developerComplexity · 3/5Setup · moderate

TLDR

A privacy-first command-line tool that captures web pages (including pages requiring login) to Markdown and lets you summarize or question them using a locally running AI model, nothing leaves your machine.

Mindmap

mindmap
  root((LocalPage))
    What it does
      Captures web pages
      Converts to Markdown
      Local AI Q&A
    Privacy first
      No cloud services
      No external APIs
      No data collection
    Workflow
      Login and save session
      Capture URLs
      Search/list captures
      Ask questions
    Tech stack
      TypeScript
      Playwright
      Ollama
      Node.js
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Capture private internal dashboards or tools behind login to Markdown without any data leaving your machine.

USE CASE 2

Ask free-form questions about a captured web page using a local AI model running on your own hardware.

USE CASE 3

Search and browse previously captured pages stored locally in your home directory.

USE CASE 4

Reformat messy captured Markdown into a clean, readable version using a local AI model.

Tech stack

TypeScriptNode.jsPlaywrightOllama

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Node.js, Playwright with Edge browser, and Ollama with at least one AI model downloaded locally.

No license details mentioned in the explanation, check the repository for terms.

In plain English

LocalPage is a command-line tool that captures web pages from your browser, converts them to Markdown, and optionally runs them through a locally installed AI model for summarizing or question-answering. The central design principle is that nothing leaves your machine: no cloud services, no external AI APIs, and no data collection of any kind. The tool is aimed at people who work with authenticated web pages, such as internal dashboards, private documents, or tools that require login. Because those pages often contain sensitive information, the author built LocalPage to be entirely local. A browser automation library called Playwright drives your existing Edge installation to load the page, including any session cookies from your logged-in account. The page is then converted to Markdown using two standard open-source libraries. If you want to ask questions or clean up the Markdown, those requests go to Ollama, which runs AI models on your own hardware. Workflow commands include logging into sites to store session credentials, capturing a URL, listing previous captures, printing or searching them, reformatting the Markdown for readability, and asking free-form questions about the page content. The AI model used for those last two steps is strictly a text-in, text-out tool: it has no ability to call functions, access the internet, or take actions. The README is explicit that this is a deliberate design choice, not a limitation. Setup requires Node.js, Playwright (for browser control), and Ollama with at least one downloaded model. Captured pages are stored in a hidden folder in your home directory. A configuration file controls which model size to use for different tasks, ranging from a smaller faster option to a larger one for more complex pages. The project is written in TypeScript and includes a security policy file that actively warns if any configuration would attempt to send data off the machine.

Copy-paste prompts

Prompt 1
Using LocalPage, how do I log into a site that requires authentication and then capture one of its private pages to Markdown? Show me the workflow.
Prompt 2
How do I ask a question about a previously captured page using LocalPage and a local Ollama model?
Prompt 3
How do I configure LocalPage to use a larger Ollama model for complex pages and a smaller one for simple ones?
Prompt 4
How do I search through all my previously captured pages in LocalPage to find one about a specific topic?
Open on GitHub → Explain another repo

← johnmaeda on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.