Files

4.1 KiB

Memory Palace

A hybrid workspace combining Obsidian-style knowledge management with code development.

📁 Structure

Documentation (/docs)

  • daily/ - Daily notes and journal entries
  • projects/ - Project-specific documentation
  • concepts/ - Evergreen notes and core concepts
  • fleeting/ - Quick captures and temporary notes
  • assets/ - Images, diagrams, and attachments
  • reference-material/ - Reference docs and external materials

Code (/code)

  • bookmarklets/ - Browser bookmarklets and utilities
  • junk-drawer/ - Miscellaneous code, scripts, and work-in-progress items
  • scratchpad/ - Experimental code organized by language
    • python/
    • javascript/
    • typescript/
  • templates/ - Reusable code templates
  • utils/ - Build tools and generators (bookmarklet maker, git tools, etc.)

🚀 Getting Started

New to this workspace? See SETUP.md for complete setup instructions on a new computer.

Creating Notes

  • Press Cmd+Shift+P and type "Foam: Create New Note" to create a linked note
  • Use [[wiki-style links]] to connect notes
  • Daily notes: "Foam: Open Daily Note"

Linking Notes

  • Type [[ to search and link to other notes
  • Right-click on a note to see backlinks
  • Use the graph view to visualize connections

Writing Code

  • Navigate to /code folders for development
  • Use Cmd+Shift+P → "Code Runner: Run Code" to execute scripts
  • Bookmarks extension: Cmd+Alt+K to toggle bookmarks

📚 Key Features

Documentation Features

  • Wiki-style linking - Connect ideas with [[links]]
  • Backlinks - See which notes reference the current note
  • Graph visualization - Visual map of your knowledge
  • Daily notes - Automatic daily note creation

Code Features

  • Multi-language support - Python, JavaScript, TypeScript
  • Quick execution - Run code snippets instantly
  • Code bookmarks - Mark important code sections
  • Todo tracking - Track TODOs across all files

🎯 Useful Commands

Command Shortcut Description
Create New Note - Foam: Create New Note
Open Daily Note - Foam: Open Daily Note
Show Graph - Foam: Show Graph
Run Code Ctrl+Alt+N Execute current file
Toggle Bookmark Cmd+Alt+K Mark/unmark code location
Show Todos - Todo Tree: Focus on View

🔍 Search Tips

  • Use Cmd+P for quick file navigation
  • Cmd+Shift+F for workspace-wide search
  • Todo Tree automatically finds TODO, FIXME, NOTE, IDEA tags

📝 Note-Taking Tips

  1. Use descriptive filenames (automatically slugified)
  2. Start with fleeting notes, refine into concepts
  3. Link liberally - connections create value
  4. Review backlinks regularly to discover patterns

💡 Bookmarklet Development

  1. Write bookmarklets as regular JavaScript in /code/bookmarklets/
  2. Run npm run bookmarklet -- code/bookmarklets/your-file.js
  3. Generator removes comments, minifies, and copies to clipboard
  4. Paste into browser bookmark URL field

See code/bookmarklets/README.md for detailed instructions.

🔧 Customization

Edit .vscode/settings.json to customize:

  • Daily note location and format
  • Todo tags and highlighting
  • Code execution behavior
  • Search exclusions

📦 Module System

This project uses ES modules (import/export), not CommonJS (require):

  • package.json is configured with "type": "module"
  • Use import and export statements in all JavaScript files
  • See code/templates/ for examples

🔄 Version Control

Auto-commit enabled via GitDoc:

  • Automatically commits changes 1 second after save
  • Auto-pushes after each commit
  • Pull on workspace open
  • View history with Git Graph (Cmd+Shift+P → "Git Graph")
  • Rollback using Timeline (right-click file → "Open Timeline")

See SETUP.md for git configuration and rollback instructions.


Start exploring by creating your first note or diving into the code folders!