Initial commit
This commit is contained in:
43
.github/ISSUE_TEMPLATE/bookmarklet-request.md
vendored
Normal file
43
.github/ISSUE_TEMPLATE/bookmarklet-request.md
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
---
|
||||
name: 🔖 Bookmarklet Request
|
||||
about: Idea for a new bookmarklet or browser utility
|
||||
title: "[BOOKMARKLET] "
|
||||
labels: ["bookmarklet", "enhancement"]
|
||||
assignees: ""
|
||||
---
|
||||
|
||||
## Purpose
|
||||
|
||||
<!-- What should this bookmarklet do? -->
|
||||
|
||||
## Use Case
|
||||
|
||||
<!-- When/where would you use this? -->
|
||||
|
||||
## Behavior
|
||||
|
||||
<!-- Describe the expected behavior -->
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
## Technical Considerations
|
||||
|
||||
<!-- Any specific requirements or constraints? -->
|
||||
|
||||
- Browser compatibility:
|
||||
- Required permissions:
|
||||
- Dependencies: None (bookmarklets should be self-contained)
|
||||
|
||||
## Inspiration
|
||||
|
||||
<!-- Any existing tools or examples? -->
|
||||
|
||||
-
|
||||
|
||||
## Implementation Notes
|
||||
|
||||
<!-- Technical approach or ideas -->
|
||||
|
||||
-
|
||||
40
.github/ISSUE_TEMPLATE/bug-report.md
vendored
Normal file
40
.github/ISSUE_TEMPLATE/bug-report.md
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
name: 🐛 Bug/Issue
|
||||
about: Report a problem with code or documentation
|
||||
title: "[BUG] "
|
||||
labels: ["bug"]
|
||||
assignees: ""
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
<!-- Clear description of the issue -->
|
||||
|
||||
## Location
|
||||
|
||||
<!-- Where is the problem? -->
|
||||
|
||||
- File:
|
||||
- Section:
|
||||
|
||||
## Expected Behavior
|
||||
|
||||
<!-- What should happen? -->
|
||||
|
||||
## Actual Behavior
|
||||
|
||||
<!-- What actually happens? -->
|
||||
|
||||
## Steps to Reproduce
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
## Possible Fix
|
||||
|
||||
<!-- If you have ideas on how to fix it -->
|
||||
|
||||
## Additional Context
|
||||
|
||||
<!-- Screenshots, error messages, etc. -->
|
||||
46
.github/ISSUE_TEMPLATE/code-experiment.md
vendored
Normal file
46
.github/ISSUE_TEMPLATE/code-experiment.md
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
---
|
||||
name: 🧪 Code Experiment
|
||||
about: Track a code experiment or prototype
|
||||
title: "[EXPERIMENT] "
|
||||
labels: ["experiment", "code"]
|
||||
assignees: ""
|
||||
---
|
||||
|
||||
## Experiment Goal
|
||||
|
||||
<!-- What are you trying to learn or build? -->
|
||||
|
||||
## Language/Stack
|
||||
|
||||
<!-- Python, JavaScript, TypeScript, etc. -->
|
||||
|
||||
-
|
||||
|
||||
## Hypothesis
|
||||
|
||||
<!-- What do you expect to discover or achieve? -->
|
||||
|
||||
## Steps
|
||||
|
||||
<!-- Outline the experiment -->
|
||||
|
||||
- [ ] Setup/preparation
|
||||
- [ ] Implementation
|
||||
- [ ] Testing
|
||||
- [ ] Documentation
|
||||
|
||||
## Location
|
||||
|
||||
<!-- Where will this code live? -->
|
||||
|
||||
- Path: `/code/scratchpad/`
|
||||
|
||||
## Success Criteria
|
||||
|
||||
<!-- How will you know if this experiment succeeded? -->
|
||||
|
||||
-
|
||||
|
||||
## Notes
|
||||
|
||||
<!-- Any additional context or considerations -->
|
||||
36
.github/ISSUE_TEMPLATE/concept-idea.md
vendored
Normal file
36
.github/ISSUE_TEMPLATE/concept-idea.md
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
---
|
||||
name: 💡 Concept/Idea
|
||||
about: Capture a new concept or idea to develop
|
||||
title: "[CONCEPT] "
|
||||
labels: ["concept", "documentation"]
|
||||
assignees: ""
|
||||
---
|
||||
|
||||
## Concept Summary
|
||||
|
||||
<!-- Brief description of the concept or idea -->
|
||||
|
||||
## Context
|
||||
|
||||
<!-- Where did this idea come from? What problem does it address? -->
|
||||
|
||||
## Related Concepts
|
||||
|
||||
<!-- Link to related notes or concepts -->
|
||||
|
||||
-
|
||||
|
||||
## Actions
|
||||
|
||||
<!-- What needs to be done to develop this concept? -->
|
||||
|
||||
- [ ] Create initial note in `/docs/fleeting/` or `/docs/concepts/`
|
||||
- [ ] Research and gather information
|
||||
- [ ] Link to related concepts
|
||||
- [ ] Refine and expand
|
||||
|
||||
## Resources
|
||||
|
||||
<!-- Links, references, inspiration -->
|
||||
|
||||
-
|
||||
16
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
16
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
name: Choose a template
|
||||
description: Select the appropriate issue template for your needs
|
||||
title: ""
|
||||
labels: []
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
## Welcome to Memory Palace Issues!
|
||||
|
||||
Choose the template that best fits your need:
|
||||
- 💡 **Concept/Idea** - Capture new concepts or ideas
|
||||
- 🔖 **Bookmarklet** - Request or plan a browser utility
|
||||
- 🧪 **Code Experiment** - Track experiments and prototypes
|
||||
- 📚 **Project** - Document larger projects
|
||||
- 🐛 **Bug/Issue** - Report problems
|
||||
55
.github/ISSUE_TEMPLATE/project-documentation.md
vendored
Normal file
55
.github/ISSUE_TEMPLATE/project-documentation.md
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
---
|
||||
name: 📚 Project Documentation
|
||||
about: Track documentation for a larger project
|
||||
title: "[PROJECT] "
|
||||
labels: ["project", "documentation"]
|
||||
assignees: ""
|
||||
---
|
||||
|
||||
## Project Name
|
||||
|
||||
<!-- What is this project? -->
|
||||
|
||||
## Description
|
||||
|
||||
<!-- Brief overview -->
|
||||
|
||||
## Goals
|
||||
|
||||
<!-- What are you trying to accomplish? -->
|
||||
|
||||
-
|
||||
-
|
||||
|
||||
## Documentation Structure
|
||||
|
||||
- [ ] Create project folder in `/docs/projects/`
|
||||
- [ ] Project overview/README
|
||||
- [ ] Technical documentation
|
||||
- [ ] Decision log
|
||||
- [ ] Resources and references
|
||||
|
||||
## Related Code
|
||||
|
||||
<!-- Any code components? -->
|
||||
|
||||
- Location:
|
||||
|
||||
## Status
|
||||
|
||||
<!-- Current state of the project -->
|
||||
|
||||
- [ ] Planning
|
||||
- [ ] In Progress
|
||||
- [ ] Paused
|
||||
- [ ] Completed
|
||||
- [ ] Archived
|
||||
|
||||
## Next Steps
|
||||
|
||||
- [ ]
|
||||
- [ ]
|
||||
|
||||
## Links & Resources
|
||||
|
||||
-
|
||||
44
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
44
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
## Description
|
||||
|
||||
<!-- Brief description of changes -->
|
||||
|
||||
## Type of Change
|
||||
|
||||
<!-- Mark the relevant option -->
|
||||
|
||||
- [ ] 📝 Documentation (notes, concepts, project docs)
|
||||
- [ ] 🔖 Bookmarklet (new or updated browser utility)
|
||||
- [ ] 🧪 Code (scratchpad experiments, templates)
|
||||
- [ ] 🔧 Configuration (settings, tools, structure)
|
||||
- [ ] 🐛 Bug fix
|
||||
|
||||
## Changes Made
|
||||
|
||||
<!-- List specific changes -->
|
||||
|
||||
-
|
||||
-
|
||||
|
||||
## Related Issues
|
||||
|
||||
<!-- Link any related issues -->
|
||||
|
||||
Closes #
|
||||
|
||||
## Files Changed
|
||||
|
||||
<!-- Key files or areas affected -->
|
||||
|
||||
-
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] Changes are documented
|
||||
- [ ] Code is tested (if applicable)
|
||||
- [ ] Links are valid
|
||||
- [ ] Follows project conventions
|
||||
- [ ] Commits follow conventional format
|
||||
|
||||
## Notes
|
||||
|
||||
<!-- Any additional context or considerations -->
|
||||
69
.github/README.md
vendored
Normal file
69
.github/README.md
vendored
Normal file
@@ -0,0 +1,69 @@
|
||||
# Memory Palace - GitHub Structure
|
||||
|
||||
This directory contains templates and configurations for GitHub.
|
||||
|
||||
## 📁 Structure
|
||||
|
||||
### `copilot-instructions.md`
|
||||
|
||||
GitHub Copilot instructions that guide AI assistance for this workspace. Defines:
|
||||
|
||||
- Project overview and structure
|
||||
- Documentation and code conventions
|
||||
- File organization and naming
|
||||
- Commit practices
|
||||
|
||||
### `ISSUE_TEMPLATE/`
|
||||
|
||||
Issue templates for tracking:
|
||||
|
||||
- **concept-idea.md** - New concepts and ideas
|
||||
- **bookmarklet-request.md** - Browser utility requests
|
||||
- **code-experiment.md** - Code experiments and prototypes
|
||||
- **project-documentation.md** - Larger project tracking
|
||||
- **bug-report.md** - Bug reports and issues
|
||||
- **config.yml** - Template configuration
|
||||
|
||||
### `PULL_REQUEST_TEMPLATE.md`
|
||||
|
||||
Template for pull requests (if collaborating or tracking larger changes)
|
||||
|
||||
## 🎯 Usage
|
||||
|
||||
### For Issues
|
||||
|
||||
Use issues to track:
|
||||
|
||||
- Ideas you want to develop into notes
|
||||
- Bookmarklets you want to build
|
||||
- Code experiments
|
||||
- Project planning
|
||||
- Problems to fix
|
||||
|
||||
### For Copilot
|
||||
|
||||
The instructions file helps Copilot:
|
||||
|
||||
- Understand your project structure
|
||||
- Suggest appropriate file locations
|
||||
- Follow your naming conventions
|
||||
- Generate code matching your style
|
||||
- Create documentation in your format
|
||||
|
||||
## 🔧 Customization
|
||||
|
||||
Feel free to:
|
||||
|
||||
- Add new issue templates for your workflows
|
||||
- Modify the copilot instructions as your needs evolve
|
||||
- Create additional GitHub workflows
|
||||
- Add labels in the repository settings
|
||||
|
||||
## 📝 Future Additions
|
||||
|
||||
Consider adding:
|
||||
|
||||
- `workflows/` - GitHub Actions for automation
|
||||
- `CODEOWNERS` - If you collaborate with others
|
||||
- `FUNDING.yml` - If you want to add sponsorship options
|
||||
- Label definitions and automation
|
||||
188
.github/copilot-instructions.md
vendored
Normal file
188
.github/copilot-instructions.md
vendored
Normal file
@@ -0,0 +1,188 @@
|
||||
# GitHub Copilot Instructions for Memory Palace
|
||||
|
||||
## Project Overview
|
||||
|
||||
This is a hybrid workspace combining:
|
||||
|
||||
- **Documentation**: Obsidian-style knowledge management with wiki-links and backlinks
|
||||
- **Code Development**: Bookmarklets, scratchpad code, and project prototypes
|
||||
|
||||
## Documentation Guidelines
|
||||
|
||||
### Writing Style
|
||||
|
||||
- Use clear, concise markdown
|
||||
- Employ wiki-style `[[links]]` for connecting notes
|
||||
- Include frontmatter metadata in notes (date, type, tags)
|
||||
- Keep daily notes in `/docs/daily/` with format `daily-YYYY-MM-DD.md`
|
||||
- Place evergreen concept notes in `/docs/concepts/`
|
||||
|
||||
### Note Structure
|
||||
|
||||
```markdown
|
||||
---
|
||||
type: concept|project|fleeting
|
||||
created: YYYY-MM-DD
|
||||
tags: []
|
||||
---
|
||||
|
||||
# Title
|
||||
|
||||
## Overview
|
||||
|
||||
Brief summary
|
||||
|
||||
## Content
|
||||
|
||||
Main content with [[links]]
|
||||
|
||||
## Related
|
||||
|
||||
- [[other-note]]
|
||||
```
|
||||
|
||||
## Code Development Guidelines
|
||||
|
||||
### Bookmarklets (`/code/bookmarklets/`)
|
||||
|
||||
- Write as regular Node.js-compatible JavaScript files
|
||||
- Use modern ES6+ syntax, let/const, etc. (will be minified)
|
||||
- Include JSDoc comments for documentation (removed in final bookmarklet)
|
||||
- Write clear, readable code - the generator handles minification
|
||||
- Use descriptive variable and function names
|
||||
- Test logic in Node.js if possible before converting
|
||||
|
||||
**Conversion Process:**
|
||||
|
||||
1. Write bookmarklet as normal `.js` file in `/code/bookmarklets/`
|
||||
2. Run: `npm run bookmarklet -- code/bookmarklets/your-file.js`
|
||||
3. Generator automatically:
|
||||
- Removes all comments
|
||||
- Minifies code
|
||||
- Wraps in IIFE: `javascript:(function(){...})();`
|
||||
- Copies to clipboard
|
||||
4. Paste into browser bookmark URL field
|
||||
|
||||
### Scratchpad Code (`/code/scratchpad/`)
|
||||
|
||||
- This is experimental space - be creative
|
||||
- Add `TODO:` comments for work in progress
|
||||
- Use descriptive variable names
|
||||
- Include usage examples
|
||||
- Python: Follow PEP 8 style
|
||||
- JavaScript/TypeScript: Use modern ES6+ syntax
|
||||
|
||||
### Code Style
|
||||
|
||||
- **Python**: PEP 8, type hints preferred
|
||||
- **JavaScript**: Modern ES6+, const/let over var, **ES modules (import/export)**
|
||||
- **TypeScript**: Explicit types, interfaces over types
|
||||
- Comments: Explain _why_, not _what_
|
||||
- Functions: Single responsibility, descriptive names
|
||||
|
||||
### Module System
|
||||
|
||||
**This project uses ES modules (import/export), not CommonJS (require).**
|
||||
|
||||
- Use `import` for dependencies: `import fs from 'fs';`
|
||||
- Use `export` for exporting: `export default myFunction;` or `export { myFunction };`
|
||||
- Package.json is configured with `"type": "module"`
|
||||
- Use `.js` extension for ES modules
|
||||
- For Node.js built-ins requiring special handling: `import { fileURLToPath } from 'url';`
|
||||
|
||||
## File Organization
|
||||
|
||||
### When to Create Files
|
||||
|
||||
- **Fleeting notes**: Quick captures, temporary thoughts → `/docs/fleeting/`
|
||||
- **Concept notes**: Refined ideas, evergreen content → `/docs/concepts/`
|
||||
- **Project docs**: Specific project documentation → `/docs/projects/`
|
||||
- **Bookmarklets**: Browser utilities → `/code/bookmarklets/`
|
||||
- **Experiments**: Testing/learning → `/code/scratchpad/`
|
||||
|
||||
### Naming Conventions
|
||||
|
||||
- Documentation: `kebab-case.md` (e.g., `my-note.md`)
|
||||
- JavaScript: `kebab-case.js` (e.g., `my-bookmarklet.js`)
|
||||
- Python: `snake_case.py` (e.g., `my_script.py`)
|
||||
- TypeScript: `kebab-case.ts` (e.g., `my-module.ts`)
|
||||
|
||||
## Git Commit Practices
|
||||
|
||||
GitDoc auto-commits on save. For manual commits:
|
||||
|
||||
- Use conventional commits: `type: description`
|
||||
- Types: `docs:`, `feat:`, `fix:`, `refactor:`, `chore:`
|
||||
- Examples:
|
||||
- `docs: add note on memory techniques`
|
||||
- `feat: create bookmark highlighter bookmarklet`
|
||||
- `fix: correct regex in search bookmarklet`
|
||||
|
||||
## Special Considerations
|
||||
|
||||
### Cross-Linking
|
||||
|
||||
When suggesting note connections:
|
||||
|
||||
- Look for conceptual relationships
|
||||
- Suggest bidirectional links
|
||||
- Consider creating index notes for related topics
|
||||
|
||||
### Code Reusability
|
||||
|
||||
- Create templates in `/code/templates/` for common patterns
|
||||
- Extract reusable functions into utility modules
|
||||
- Document APIs and interfaces
|
||||
|
||||
### Search & Discovery
|
||||
|
||||
- Use descriptive titles and headers
|
||||
- Include relevant tags in frontmatter
|
||||
- Add aliases for alternative terms
|
||||
- Consider TODO tags: `TODO:`, `FIXME:`, `NOTE:`, `IDEA:`
|
||||
|
||||
## Preferences
|
||||
|
||||
- **Brevity**: Favor concise, clear explanations
|
||||
- **Examples**: Include practical examples in code
|
||||
- **Context**: Assume this is a personal knowledge workspace
|
||||
- **Flexibility**: This is a scratchpad - prioritize exploration over perfection
|
||||
- **Learning**: Explain concepts when introducing new patterns or techniques
|
||||
|
||||
## README Maintenance
|
||||
|
||||
**IMPORTANT**: Keep README files synchronized with project structure changes.
|
||||
|
||||
### When to Update READMEs
|
||||
|
||||
Update relevant README.md files whenever you:
|
||||
|
||||
- Add or remove folders
|
||||
- Change file organization
|
||||
- Add new tools or utilities
|
||||
- Modify workflows or conventions
|
||||
- Add new features or capabilities
|
||||
|
||||
### README Locations
|
||||
|
||||
- `/README.md` - Main project overview and quick start
|
||||
- `/docs/README.md` - Documentation hub and note-taking guide
|
||||
- `/code/README.md` - Code section overview
|
||||
- `/code/bookmarklets/README.md` - Bookmarklet creation guide
|
||||
- `/.github/README.md` - GitHub templates and structure
|
||||
|
||||
### Update Guidelines
|
||||
|
||||
- Keep structure diagrams accurate
|
||||
- Update examples to reflect current patterns
|
||||
- Maintain consistency across all READMEs
|
||||
- Add new sections before implementation when adding major features
|
||||
- Remove outdated information immediately
|
||||
|
||||
## Tools & Extensions Available
|
||||
|
||||
- Foam (wiki-links, backlinks, graph)
|
||||
- Code Runner (quick code execution)
|
||||
- Todo Tree (tracks TODO comments)
|
||||
- Bookmarks (mark important code locations)
|
||||
- ESLint (JavaScript linting)
|
||||
Reference in New Issue
Block a user