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+Pand 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
/codefolders for development - Use
Cmd+Shift+P→ "Code Runner: Run Code" to execute scripts - Bookmarks extension:
Cmd+Alt+Kto 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+Pfor quick file navigation Cmd+Shift+Ffor workspace-wide search- Todo Tree automatically finds TODO, FIXME, NOTE, IDEA tags
📝 Note-Taking Tips
- Use descriptive filenames (automatically slugified)
- Start with fleeting notes, refine into concepts
- Link liberally - connections create value
- Review backlinks regularly to discover patterns
💡 Bookmarklet Development
- Write bookmarklets as regular JavaScript in
/code/bookmarklets/ - Run
npm run bookmarklet -- code/bookmarklets/your-file.js - Generator removes comments, minifies, and copies to clipboard
- 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.jsonis configured with"type": "module"- Use
importandexportstatements 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!
Description
Languages
JavaScript
98.2%
Python
1.8%