inmem-memo 1.2.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -24
- package/bin/cli.js +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
[](https://www.npmjs.com/package/inmem-memo)
|
|
11
11
|
[](https://v2.tauri.app/)
|
|
12
12
|
[](https://react.dev/)
|
|
13
|
-
[](https://github.com/)
|
|
13
|
+
[](https://github.com/jakelizzI/inmem-memo)
|
|
14
14
|
[](LICENSE)
|
|
15
15
|
|
|
16
16
|
<br />
|
|
@@ -64,8 +64,9 @@ InMem Scratchpad eliminates traditional note management overhead—such as title
|
|
|
64
64
|
## 🌟 Key Features
|
|
65
65
|
|
|
66
66
|
### 1. 🛡️ Pure In-Memory Security Policy
|
|
67
|
-
- **Zero Disk Persistence for Memo Text**: Note text is kept
|
|
67
|
+
- **Zero Disk Persistence for Memo Text**: Note text is kept strictly in RAM. It is never written to disk, databases, or `localStorage`.
|
|
68
68
|
- **Complete Erasure on Process Exit**: Terminating the application (via "Quit App" in settings or tray menu) immediately releases all allocated memory back to the OS.
|
|
69
|
+
- **Robust macOS & Multi-Platform Process Termination**: Guaranteed process exit via `std::process::exit(0)` ensuring full memory cleanup across Windows, macOS, and Linux.
|
|
69
70
|
- **Unload Guard**: Built-in confirmation prompt to prevent accidental data loss while typing.
|
|
70
71
|
|
|
71
72
|
### 2. ⚡ Right Quick-Action Toolbar (JSON Format & Regex Replacements)
|
|
@@ -73,7 +74,8 @@ InMem Scratchpad eliminates traditional note management overhead—such as title
|
|
|
73
74
|
- Permanently pinned at the top. Instantly prettifies unformatted JSON payloads with clean 2-space indentation.
|
|
74
75
|
- **Custom Regular Expression Actions**:
|
|
75
76
|
- Add, edit, test, and save frequently used regex replacement rules via the Settings modal.
|
|
76
|
-
- **
|
|
77
|
+
- **Interactive Regex Flags Cheat Sheet & Help Guide**: Clear explanations for `g` (global), `m` (multiline), `i` (case-insensitive), and `s` (dot-all) with one-click quick chips (`gm`, `g`, `gi`).
|
|
78
|
+
- **Multiline Real-Time Testing Sandbox**: 2-pane interactive preview (input text ➔ live replacement output) with sample preset buttons to verify pattern replacements across multiple lines.
|
|
77
79
|
- **One-Click Presets**:
|
|
78
80
|
- "Clean Empty Lines" (`^\s*$\n` ➔ `""`)
|
|
79
81
|
- "Trim Trailing Spaces" (`[ \t]+$` ➔ `""`)
|
|
@@ -81,33 +83,32 @@ InMem Scratchpad eliminates traditional note management overhead—such as title
|
|
|
81
83
|
- "Strip HTML Tags" (`<[^>]+>` ➔ `""`)
|
|
82
84
|
- "Collapse Multiple Spaces" (`[ \t]+` ➔ `" "`)
|
|
83
85
|
|
|
84
|
-
### 3.
|
|
86
|
+
### 3. 🎨 Modern UI & 3 Themes (Midnight / OLED / Clean Light)
|
|
87
|
+
- **3 Curated Color Themes**:
|
|
88
|
+
- **Midnight Dark**: Deep gradient dark mode for night work.
|
|
89
|
+
- **OLED Pure Black**: High-contrast, power-saving true black mode.
|
|
90
|
+
- **Clean Light**: Crisp, bright light mode with soft shadows and refined readability.
|
|
91
|
+
- **Interactive Font Resizing**:
|
|
92
|
+
- Adjust editor font size via numerical input or interactively via **`Ctrl + MouseWheel`** (Mac: `Cmd + Wheel`) with smooth silent zooming.
|
|
93
|
+
- **Live Markdown Preview**: Toggle between raw text editing and sanitized Markdown rendering with one click (sanitized with DOMPurify).
|
|
94
|
+
- **Status Bar & UI Version Display**: Real-time character, word, and line count metrics along with bottom-left version badge (`v1.2.0`).
|
|
95
|
+
|
|
96
|
+
### 4. 📑 2-Column Sidebar Settings Modal
|
|
97
|
+
- Redesigned from horizontal tabs into a **macOS / VS Code style 2-column sidebar navigation** layout.
|
|
98
|
+
- Easily customize shortcuts, regex actions, appearance themes, font sizes, editor preferences, and process termination in dedicated sections.
|
|
99
|
+
|
|
100
|
+
### 5. ↩️ Full `Ctrl + Z` (Undo) & `Ctrl + Y` (Redo) History Stack
|
|
85
101
|
- Even after executing batch transformations (JSON formatting or regex replacements), pressing **`Ctrl + Z` (Mac: `Cmd + Z`)** instantly restores the exact previous text state.
|
|
86
102
|
- Redo anytime using **`Ctrl + Y`** or **`Ctrl + Shift + Z` (Mac: `Cmd + Shift + Z`)**.
|
|
87
103
|
- Visual Undo/Redo icon buttons located directly in the header bar.
|
|
88
104
|
|
|
89
|
-
###
|
|
105
|
+
### 6. ⌨️ Global Shortcut & System Tray Residency
|
|
90
106
|
- **Background Tray Standby**: Clicking the window close button (`×`) minimizes the app directly to the system tray (Windows) or menu bar (macOS).
|
|
91
107
|
- **Instant Hotkey Summon**:
|
|
92
108
|
- Press the global hotkey from any active window (IDE, browser, terminal) to instantly toggle the scratchpad on top of your screen.
|
|
93
109
|
- Default: `Ctrl + Shift + M` (Mac: `Cmd + Shift + M`).
|
|
94
110
|
- Customizable in Settings with an interactive key recorder.
|
|
95
111
|
|
|
96
|
-
### 5. ⚙️ Local Settings Persistence & Complete App Exit
|
|
97
|
-
- While memo text remains strictly in-memory, your **user preferences are safely persisted to `localStorage`**:
|
|
98
|
-
- Global shortcut key
|
|
99
|
-
- Custom regex action library
|
|
100
|
-
- Theme choice (Midnight Dark / OLED Pure Black)
|
|
101
|
-
- Editor preferences (Font size, Tab width, Word wrap)
|
|
102
|
-
- **Complete Application Exit**:
|
|
103
|
-
- Easily terminate the background tray process and completely free memory with the "Quit App" button in Settings.
|
|
104
|
-
|
|
105
|
-
### 6. 🎨 Modern Dark Glassmorphism UI & Markdown Preview
|
|
106
|
-
- **Aesthetic Dark Mode**: Curated color palette with fluid micro-animations.
|
|
107
|
-
- **Live Markdown Preview**: Toggle between raw text editing and formatted Markdown rendering with one click.
|
|
108
|
-
- **Live Statistics**: Status bar displaying real-time character, word, and line counts.
|
|
109
|
-
- **Quick Operations**: Copy all (`Copy`), export file (`Export .md`), and clear (`Clear`).
|
|
110
|
-
|
|
111
112
|
---
|
|
112
113
|
|
|
113
114
|
## ⌨️ Keyboard Shortcuts
|
|
@@ -115,6 +116,7 @@ InMem Scratchpad eliminates traditional note management overhead—such as title
|
|
|
115
116
|
| Shortcut | Action |
|
|
116
117
|
|---|---|
|
|
117
118
|
| `Ctrl + Shift + M` (Mac: `Cmd + Shift + M`) | **Global Summon** (Toggle window visibility from anywhere) |
|
|
119
|
+
| `Ctrl + MouseWheel` (Mac: `Cmd + Wheel`) | **Interactive Font Resize** (Zoom editor text seamlessly) |
|
|
118
120
|
| `Ctrl + Z` (Mac: `Cmd + Z`) | **Undo** (Revert text changes, JSON formatting, or regex replacements) |
|
|
119
121
|
| `Ctrl + Y` / `Ctrl + Shift + Z` | **Redo** (Re-apply reverted changes) |
|
|
120
122
|
| `Tab` | Insert indentation (2 or 4 spaces) |
|
|
@@ -128,17 +130,21 @@ InMem Scratchpad eliminates traditional note management overhead—such as title
|
|
|
128
130
|
- `tauri-plugin-global-shortcut`: System-wide hotkey listener
|
|
129
131
|
- `tray-icon`: System tray / menu bar residency
|
|
130
132
|
- `include_image!`: Native embedded icon binaries
|
|
131
|
-
- **Frontend**: [React 18](https://react.dev/) + [Vite 5](https://vitejs.dev/) + [Lucide Icons](https://lucide.dev/)
|
|
133
|
+
- **Frontend**: [React 18](https://react.dev/) + [Vite 5](https://vitejs.dev/) + [Lucide Icons](https://lucide.dev/) + [DOMPurify](https://github.com/cure53/DOMPurify)
|
|
132
134
|
- **Styling**: Vanilla CSS (Modern CSS Variables, Glassmorphism, Responsive Grid/Flexbox)
|
|
133
135
|
- **Distribution**:
|
|
134
|
-
- npm: Automated platform-resolving CLI runner (`inmem-memo`)
|
|
135
|
-
- GitHub Actions: Multi-platform automated builds for Windows (`.exe`), macOS (`.dmg`), and Linux (`.AppImage`)
|
|
136
|
+
- npm: Automated platform-resolving CLI runner (`inmem-memo`) with Sigstore Provenance
|
|
137
|
+
- GitHub Actions: Multi-platform automated builds for Windows (`.exe`, `.msi`), macOS (`.dmg`), and Linux (`.AppImage`, `.deb`, `.rpm`)
|
|
136
138
|
|
|
137
139
|
---
|
|
138
140
|
|
|
139
141
|
## 💻 Local Development & Building from Source
|
|
140
142
|
|
|
141
143
|
```powershell
|
|
144
|
+
# Clone repository
|
|
145
|
+
git clone https://github.com/jakelizzI/inmem-memo.git
|
|
146
|
+
cd inmem-memo
|
|
147
|
+
|
|
142
148
|
# Install frontend dependencies
|
|
143
149
|
npm install
|
|
144
150
|
|
|
@@ -156,4 +162,4 @@ npm run tauri build
|
|
|
156
162
|
|
|
157
163
|
## 📄 License
|
|
158
164
|
|
|
159
|
-
[MIT License](LICENSE) © 2026
|
|
165
|
+
[MIT License](LICENSE) © 2026 [jakelizzI](https://github.com/jakelizzI/inmem-memo)
|
package/bin/cli.js
CHANGED
|
@@ -16,7 +16,7 @@ const packageJson = JSON.parse(
|
|
|
16
16
|
);
|
|
17
17
|
|
|
18
18
|
const VERSION = packageJson.version;
|
|
19
|
-
const REPO = 'jakelizzI/
|
|
19
|
+
const REPO = 'jakelizzI/inmem-memo';
|
|
20
20
|
const CACHE_DIR = path.join(os.homedir(), '.inmem-memo', `v${VERSION}`);
|
|
21
21
|
|
|
22
22
|
function fetchJson(url) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "inmem-memo",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"description": "Ultra-Fast In-Memory Scratchpad Memo Application for Windows, macOS, and Linux",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
],
|
|
14
14
|
"repository": {
|
|
15
15
|
"type": "git",
|
|
16
|
-
"url": "git+https://github.com/jakelizzI/
|
|
16
|
+
"url": "git+https://github.com/jakelizzI/inmem-memo.git"
|
|
17
17
|
},
|
|
18
|
-
"homepage": "https://github.com/jakelizzI/
|
|
18
|
+
"homepage": "https://github.com/jakelizzI/inmem-memo#readme",
|
|
19
19
|
"bugs": {
|
|
20
|
-
"url": "https://github.com/jakelizzI/
|
|
20
|
+
"url": "https://github.com/jakelizzI/inmem-memo/issues"
|
|
21
21
|
},
|
|
22
22
|
"keywords": [
|
|
23
23
|
"scratchpad",
|