-
-
Notifications
You must be signed in to change notification settings - Fork 1
Notes Export
Saiful Alam Rakib edited this page Apr 22, 2026
·
1 revision
Bill Organizer lets you download your notes in four different formats directly from the browser. No server request is made — the export runs entirely client-side using the browser's Blob API.
| Format | Extension | Best For |
|---|---|---|
| JSON | .json |
Data backup, migration, programmatic use |
| Markdown | .md |
Documentation, sharing, version control |
| CSV | .csv |
Spreadsheet analysis, data processing |
| Plain Text | .txt |
Simple viewing and printing |
Export all notes at once from the Notes index page header.
Steps:
- Navigate to Notes
- Click the Export Notes button (only visible when notes exist)
- Select a format from the dropdown
- The file downloads automatically
File naming: notes-export-YYYY-MM-DD.{ext}
Export a single note directly from the notes list.
Steps:
- Click the ⋮ (three-dot menu) on any note card
- Hover over Export
- Select a format
- The file downloads with the note's title as the filename
Export from inside the note detail view.
Steps:
- Click View on any note card
- In the dialog footer, click Export
- Select a format from the dropdown
Contains the complete note object:
{
"id": 1,
"title": "Payment Reminder",
"content": "Remember to update payment method",
"created_at": "2026-02-01T00:00:00.000Z",
"updated_at": "2026-02-05T10:00:00.000Z",
"is_pinned": true,
"user_id": 1,
"team_id": null,
"related": []
}- Formatted with 2-space indentation
- Includes all metadata fields
# Payment Reminder
**Created:** February 1, 2026
**Updated:** February 5, 2026
**Pinned:** Yes
**Team:** Personal
---
Remember to update payment method- Preserves original Markdown content
- Includes metadata header block
- Related items appended at the bottom
Title,Content,Created,Updated,Pinned,Team,Related Items
"Payment Reminder","Remember to update payment method","2026-02-01","2026-02-05","Yes","Personal",""
- Values properly escaped for commas and double quotes
- One row per note (bulk export) or single-row file (per-note export)
Payment Reminder
================
Created: February 1, 2026
Updated: February 5, 2026
Pinned: Yes
Team: Personal
---
Remember to update payment method
| File | Role |
|---|---|
resources/js/composables/useNoteExport.ts |
Core export composable with all format generators |
resources/js/pages/Notes/Index.vue |
Bulk export button |
resources/js/components/notes/NoteCard.vue |
Per-note card dropdown |
resources/js/components/notes/NoteViewDialog.vue |
Per-note dialog footer |
| Function | Description |
|---|---|
exportNote(note, format) |
Export a single note in the given format |
exportNotes(notes, format) |
Export multiple notes in the given format |
generateMarkdown(note) |
Generate Markdown string for a note |
generateCSV(notes) |
Generate CSV string for one or more notes |
generateTextFile(note) |
Generate plain text string for a note |
downloadFile(content, filename, mimeType) |
Trigger browser file download |
- Browser Blob API — creates in-memory file content
-
URL.createObjectURL— generates a temporary download URL - No external libraries required
- Export runs entirely on the client side — no data leaves the browser to a server
- Files contain only data the authenticated user already has access to
- Filenames are sanitized to prevent directory traversal
Works in all modern browsers:
| Browser | Support |
|---|---|
| Chrome | ✓ |
| Firefox | ✓ |
| Safari | ✓ |
| Edge | ✓ |
JavaScript must be enabled.
© Bill Organizer - Free for Personal use | Need paid license for Commercial use