Pinodock โ Everything, from your new tab.
Pinodock replaces your new tab with a keyboard-first command centre. This guide covers every feature: the launcher, all 20+ commands, dashboards, plugins, todos, habits, and settings.
๐ Getting started
- 1Install from the Chrome Web Store. Click "Add to Chrome" on the Pinodock listing. Chrome will confirm the permissions it needs.
- 2Open a new tab. Pinodock replaces Chrome's default new tab page immediately. You'll see the first-run welcome screen.
- 3Set your name and theme. The welcome overlay takes 30 seconds. You can skip it and change everything later in Settings.
- 4Start typing to search. The launcher is always focused on load. Type anything โ URLs, commands, bookmarks, tabs โ to get started.
โจ๏ธ Launcher & commands
The launcher bar is the heart of Pinodock. It works like a command palette โ start typing and it searches across bookmarks, open tabs, history, and all built-in commands at once.
Navigation prefixes
AI commands (Gemini Nano)
These commands run entirely on-device using Chrome's built-in Gemini Nano model (Chrome 127+). No API key, no internet, no data sent anywhere.
/summarize.Developer & productivity tools
rgb(r,g,b). /color alone generates a random hex.source=x medium=y key-value pairs. Copies on Enter./time Asia/Seoul shows any IANA timezone.Quick-action commands
URL aliases & shortcuts
Pinodock ships with 40+ built-in aliases: gh โ GitHub, yt โ YouTube, mdn โ MDN docs, npm โ npmjs.com, and many more. Type the alias followed by a space and a search term โ e.g. npm react searches npm for React.
Create your own in Settings โ Shortcuts. Use {query} in the URL for substitution โ e.g. prefix jira with URL https://yourco.atlassian.net/browse/{query} lets you type jira MAD-1234 to jump straight to that ticket.
โจ๏ธ Keyboard shortcuts
Launcher
| Action | Shortcut |
|---|---|
| Focus launcher | Enter or any key from empty page |
| Clear launcher | Esc |
| Navigate suggestions | โ / โ |
| Open selection | Enter |
| Open in new tab | Cmd Enter |
Navigation tabs
| Tab | Shortcut |
|---|---|
| Todos | Cmd 1 |
| Habits | Cmd 2 |
| Usage | Cmd 3 |
| Snippets | Cmd 4 |
| Settings | Cmd 5 |
| Back to home | Esc |
Todos
| Action | Shortcut |
|---|---|
| Add new todo | N (when input focused) |
| Complete todo | Space on item |
| Delete todo | Del on item |
๐๏ธ Dashboards
Pinodock supports up to 6 named dashboards. Each dashboard has its own plugin set, layout preset, and widget visibility. Switch between them using the pill buttons at the top of the home screen.
Preset dashboards
- Work ๐ผ โ Google Calendar, Gmail, GitHub, Todoist in a 2-column layout. Quick Links and Scratch Pad on. Pomodoro on.
- Creator ๐ฌ โ YouTube Studio, Spotify, Reddit. Quote widget on. Quick Links on.
- Developer โจ๏ธ โ GitHub, Hacker News, AWS Console, Crypto Prices in compact 3-column. Quick Links and Scratch Pad on.
- Personal ๐ฟ โ Spotify, Crypto, Reddit in a single spacious column. Quote on. Scratch Pad on.
Adding a custom dashboard
- 1Click the + button next to the dashboard pills on the home screen.
- 2Type a name and press Add.
- 3Go to Settings โ Plugins to enable plugins for the new dashboard.
- 4The layout preset defaults to Balanced. Change it in Settings โ Dashboard.
Layout presets
- Compact โ 3-column grid. Best for 4+ small widgets (Dev dashboard).
- Balanced โ 2-column grid. Best for most use cases.
- Spacious โ Full-width single column. Best for rich widgets like Calendar or Todoist.
๐ Plugins
Plugins add live data widgets to your dashboard. There are two types:
- Live plugins โ call public APIs directly. No auth, no setup. (Hacker News, Crypto Prices, Reddit Feed)
- Connected plugins โ read from a tab you have open in another window. No OAuth, no API keys โ just keep the relevant site open. (Spotify, Gmail, Google Calendar, YouTube Studio, AWS Console, GitHub, Todoist)
Enabling a plugin
- 1Open Settings โ Plugins from the top navigation.
- 2Click Add on the plugin you want. It will appear as a widget on the active dashboard.
- 3For connected plugins (Gmail, GitHub, Spotify, etc.), the widget shows a "Grant access" button on first use. Click it โ Chrome will show a one-time native permission dialog. This is the only moment Pinodock requests host access for that site.
- 4After granting, open the relevant service in any Chrome tab (e.g.
mail.google.comfor Gmail). Return to your new tab โ the widget populates within seconds.
chrome://extensions).โก Custom plugins
Beyond the built-in plugins, you can write any JavaScript snippet that fetches data and returns it as a dashboard widget. Custom plugins run in a sandboxed iframe โ they can call fetch() but cannot touch chrome.* APIs, your storage, or your open tabs.
Writing your first plugin
Go to Settings โ Plugins โ Custom (Advanced) and click + Add custom plugin. The editor accepts any async JavaScript. Return either a plain string or a { title, items } object:
// Returns a key-value table widget
const res = await fetch('https://open.er-api.com/v6/latest/USD')
const data = await res.json()
return {
title: 'FX rates',
items: [
{ label: 'EUR', value: data.rates.EUR.toFixed(4) },
{ label: 'GBP', value: data.rates.GBP.toFixed(4) },
]
}
Return format
- Plain string โ displayed as a single text paragraph in the widget.
{ title, items: [{label, value}] }โ rendered as a labelled table with a title header.{ title, text }โ title plus a body paragraph.
Useful public APIs (no key needed)
| API | What it returns |
|---|---|
api.coindesk.com/v1/bpi/currentprice.json | Bitcoin price in USD, EUR, GBP |
open.er-api.com/v6/latest/USD | Foreign exchange rates vs USD |
ipapi.co/json/ | Your public IP, city, country, ISP |
api.dictionaryapi.dev/api/v2/entries/en/{word} | Dictionary definitions |
en.wikipedia.org/api/rest_v1/feed/onthisday/events/{m}/{d} | Historical events for today |
hacker-news.firebaseio.com/v0/topstories.json | Hacker News top story IDs |
For a full gallery of copy-paste examples, see the Custom Plugins section on the Plugins page โ
โ Todos
The Todos tab is a lightweight task manager with projects, priorities, due dates, and recurring tasks โ all stored locally.
Features
- Projects โ group todos into named lists. Create a new project with the + button in the sidebar.
- Priority flags โ High (red), Medium (orange), Low (grey). Set via the flag icon on each todo.
- Due dates โ click the calendar icon on a todo. Overdue items are highlighted automatically.
- Subtasks โ expand a todo to add nested sub-items.
- Recurring todos โ set a task to repeat daily, weekly, or monthly. It resets automatically on completion.
- Drag to reorder โ drag the handle on any todo to change its position.
๐ฅ Habit tracker
Track daily habits with a streak-based visual calendar. Every habit shows a heat map of the past 90 days.
Creating a habit
- 1Open the Habits tab from the top navigation.
- 2Click + New habit. Give it a name and choose an emoji icon.
- 3Set the target frequency โ daily (default), weekdays only, or a specific number of days per week.
- 4Check it off each day with a single click.
Reading the calendar
- Each square is one day. Filled squares = completed. Empty squares = missed.
- The streak counter shows your current unbroken run and all-time best.
- Hover any square to see the date and completion note.
๐ Pomodoro timer
The Pomodoro widget lives in the bottom-left corner of every new tab and persists across navigation. It survives tab switches and fires a desktop notification when the session ends.
How to use it
- Click the tomato icon at the bottom-left to expand the timer.
- Press Start to begin a 25-minute work session.
- After the session, a 5-minute short break starts automatically.
- After 4 pomodoros, a 15-minute long break is suggested.
Customisation
Change session durations in Settings โ Productivity. You can set work sessions from 5 to 60 minutes, short breaks from 1 to 15 minutes, and long breaks from 10 to 45 minutes.
/focus or Settings โ Focus Mode) during a Pomodoro to hide the navigation bar and all non-essential widgets โ just the timer, the search bar, and your work.๐ Snippets
Snippets are reusable text templates you can paste anywhere with a short trigger name. They're saved in chrome.storage.sync by default so they follow you across devices.
Creating a snippet
- 1Open the Snippets tab from the navigation bar.
- 2Click + New snippet. Give it a short trigger name (e.g.
sig) and the full body text. - 3Save it.
Using a snippet
In the launcher, type /snip sig (replace sig with your trigger name). The snippet body is copied to your clipboard and a confirmation toast appears. Paste it anywhere with Cmd+V.
โ๏ธ Settings reference
Appearance
- Theme โ Dark (default) or Light.
- Accent colour โ eight presets or a custom colour picker.
- Font size โ Small, Medium (default), Large.
- Layout preset โ Compact / Balanced / Spacious for the plugin widget grid.
- Focus mode โ hides all navigation and widgets, leaving only the clock and launcher.
- Background photo โ four source options:
- Daily โ a free landscape from Picsum Photos, changes daily. Use โป New image on the home screen to shuffle.
- Unsplash โ random photo by topic (landscape, space, city, etc.) via the Unsplash API. Requires your free API key from unsplash.com/developers.
- Custom URL โ paste any direct
https://image link. - Local file โ upload from your device. Compressed to 1280px JPEG and stored only on your machine.
- Daily quote โ toggle the inspirational quote below the launcher.
Dashboard
- User name โ adds a personalised time-of-day greeting above the launcher.
- Weather widget โ shows current conditions in the bottom-right corner. Leave city blank to auto-detect.
- Timezone โ IANA timezone string used for
/timeand world clock display (e.g.Europe/London). - Search history โ shows your recent launcher searches when the input is empty.
- Clipboard history โ enable
/clipto access your last 50 copied items. - Pomodoro work duration โ set work session length from 10 to 60 minutes via the slider.
Plugins
- Enable/disable individual plugins per dashboard from Settings โ Plugins.
- Subreddit โ configure which subreddit the Reddit Feed plugin reads from.
- Custom plugins โ write JavaScript snippets that fetch data and render as dashboard widgets. Code runs in an isolated sandboxed frame with no access to extension APIs.
Data
- Usage tracking โ opt in to track personal productivity metrics (searches, todos, pomodoros). Stored locally, never sent anywhere.
- Export backup โ downloads all Pinodock data (todos, habits, snippets, settings, aliases) as a JSON file.
- Import backup โ restores from a previously exported JSON backup file.
- Firebase Analytics โ opt-in anonymous donation click events only. Disabled by default.
๐ Privacy & your data
All Pinodock data โ todos, habits, clipboard history, plugin cache โ lives in your browser's local storage. Nothing is sent to PencilCard's servers because PencilCard has no servers.
- Uninstalling the extension removes all data automatically.
- Export your data at any time: Settings โ Data โ Export.
- Plugin data is cached for 5 minutes then overwritten on next refresh.