
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
vue-dev-notepad
Advanced tools
A floating, draggable, resizable notepad component for Vue.js developers with per-page note persistence
A floating, draggable, and resizable notepad component designed specifically for Vue.js developers with per-page note persistence.
npm install vue-dev-notepad
// main.js
import { createApp } from 'vue'
import VueDevNotepad from 'vue-dev-notepad'
import 'vue-dev-notepad/dist/style.css' // Import styles
import App from './App.vue'
const app = createApp(App)
app.use(VueDevNotepad)
app.mount('#app')
Then use in any component:
<template>
<div>
<DevNotepad />
</div>
</template>
<template>
<div>
<DevNotepad
:default-position="{ x: 50, y: 50 }"
:default-size="{ width: 350, height: 300 }"
/>
</div>
</template>
<script setup>
import { DevNotepad } from 'vue-dev-notepad'
import 'vue-dev-notepad/dist/style.css' // Import styles
</script>
| Prop | Type | Default | Description |
|---|---|---|---|
defaultPosition | Object | { x: 100, y: 100 } | Initial position when first loaded |
defaultSize | Object | { width: 300, height: 250 } | Initial size when first loaded |
minWidth | Number | 200 | Minimum width constraint |
minHeight | Number | 150 | Minimum height constraint |
maxWidth | Number | 600 | Maximum width constraint |
maxHeight | Number | 500 | Maximum height constraint |
storagePrefix | String | 'dev-notepad' | localStorage key prefix |
devOnly | Boolean | true | Only show in development environment |
By default, the notepad only appears in development and is automatically hidden in production builds. This prevents your notes from showing to end users.
<template>
<!-- Only visible during development -->
<DevNotepad />
</template>
<template>
<!-- Visible in both development and production -->
<DevNotepad :dev-only="false" />
</template>
The component uses process.env.NODE_ENV === 'development' to determine when to show the notepad.
Access these methods using template refs:
<template>
<div>
<DevNotepad ref="notepadRef" />
<button @click="clearNotes">Clear Notes</button>
<button @click="toggleNotepad">Toggle</button>
</div>
</template>
<script setup>
import { ref } from 'vue'
import { DevNotepad } from 'vue-dev-notepad'
const notepadRef = ref(null)
const clearNotes = () => {
notepadRef.value.clearNote()
}
const toggleNotepad = () => {
notepadRef.value.toggleNotepad()
}
</script>
Available methods:
openNotepad() - Show the full notepadcloseNotepad() - Collapse to buttontoggleNotepad() - Toggle between full/collapsedtoggleMinimize() - Toggle minimize state (when open)clearNote() - Clear the current note contentThe notepad automatically detects the current route and stores notes separately for each page. Notes are saved to localStorage with a key pattern:
dev-notepad-/your/route/path
This means:
/home page has its own notes/about page has its own notes/products/123 page has its own notesThe component comes with a clean, minimalistic design out of the box. If you need to customize the appearance, you can override the CSS classes:
/* Custom styling example */
.floating-notepad {
/* Your custom styles */
}
.notepad-header {
/* Header customization */
}
.notepad-textarea {
/* Textarea customization */
}
npm installnpm run devnpm run buildThe package is published on npm and ready to use:
# Install with npm
npm install vue-dev-notepad
# Install with yarn
yarn add vue-dev-notepad
# Install with pnpm
pnpm add vue-dev-notepad
After installation, follow the Usage section above to get started.
MIT License - feel free to use in your projects!
Contributions are welcome! Please feel free to submit a Pull Request.
If you find any bugs or have feature requests, please create an issue on the GitHub repository.
FAQs
A floating, draggable, resizable notepad component for Vue.js developers with per-page note persistence
We found that vue-dev-notepad demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.