@benglo/notesy
v1.2.0
Published
Fast CLI for capturing notes as markdown with Notion sync
Maintainers
Readme
notesy
A fast CLI tool for capturing notes on the fly. Perfect for jotting down ideas while working without breaking your flow.
Notes are saved as markdown files locally, with optional sync to Notion.
Installation
npm install -g @benglo/notesyQuick Start
# Capture a quick note
notesy Fix the authentication bug in login flow
# That's it! Your note is saved.Usage
Capture Notes
# Simple note
notesy Remember to refactor the database queries
# Note with tags
notesy -t bug,urgent Fix redirect issue on mobile
# Multi-word notes work without quotes
notesy Add dark mode support to settings pageManage Notes
# List all notes
notesy --list
notesy -l
# Read a specific note (by number or filename)
notesy --read 1
notesy -r 2025-01-15T10-30-00
# Delete a note
notesy --delete 1
notesy -d 1Push to Notion
Send any markdown file to Notion as a properly formatted page:
notesy --push ./my-notes.md
notesy -p ./README.mdThe markdown is converted to native Notion blocks (headings, lists, code blocks, etc.).
Browse & Push Files
Interactively browse directories, preview files, and push to Notion:
# Browse current directory
notesy --browse
notesy -b
# Browse a specific directory
notesy --browse ./docsUse arrow keys to navigate folders, select a file, then choose an action:
- Push to Notion (with destination selection)
- Preview contents
- Copy path
Multiple Notion Destinations
Save multiple Notion pages as destinations for quick access:
# Manage destinations
notesy --destinations
# Add, view, or delete saved destinations interactivelyWhen pushing via --browse, you can choose which destination to push to.
Notion Setup
To enable Notion sync:
1. Create a Notion Integration
- Go to notion.so/my-integrations
- Click "New integration"
- Give it a name (e.g., "notesy")
- Copy the API key
2. Share a Page with Your Integration
- Open the Notion page where you want notes to appear
- Click "..." menu → "Connections" → Add your integration
- Copy the page ID from the URL:
notion.so/Page-Name-{PAGE_ID}
3. Configure notesy
notesy --config --notion-key YOUR_API_KEY
notesy --config --notion-page YOUR_PAGE_ID4. Push Files
notesy --push ./notes.mdConfiguration
View current config:
notesy --configConfig options:
| Option | Description |
|--------|-------------|
| --notion-key <key> | Notion API key |
| --notion-page <id> | Notion parent page ID |
| --storage <local\|notion> | Storage backend (default: local) |
Config is stored in ~/.notesy/config.json
File Storage
By default, notes are stored as markdown files in ~/.notesy/notes/
Each note includes:
- Timestamp
- Tags (if provided)
- Your note content
Markdown to Notion Conversion
When pushing to Notion, the following markdown elements are converted:
#,##,###→ Headings-,*,+→ Bullet lists1.,2.→ Numbered lists```→ Code blocks (with syntax highlighting)>→ Blockquotes---→ Dividers**bold**,*italic*,`code`→ Formatted text[text](url)→ Links (absolute URLs only)
Examples
# Quick idea capture
notesy Add caching to the API endpoints
# Bug tracking
notesy -t bug,p1 Login fails on Safari when cookies disabled
# Feature ideas
notesy -t feature,v2 Add keyboard shortcuts for power users
# Push meeting notes to Notion
notesy --push ./meetings/2025-01-15.mdWhy notesy?
- Fast: Just type
notesy+ your thought - Non-disruptive: Capture ideas without switching context
- Markdown: Notes are plain text, easy to search and version
- Notion sync: Push any markdown to Notion with proper formatting
License
MIT
