{"id":13447166,"url":"https://github.com/notable/dumper","last_synced_at":"2025-08-20T10:31:13.108Z","repository":{"id":57131966,"uuid":"198123683","full_name":"notable/dumper","owner":"notable","description":"Library for extracting attachments, notes and metadata out of formats used by popular note-taking apps.","archived":false,"fork":false,"pushed_at":"2023-09-24T16:52:43.000Z","size":8287,"stargazers_count":121,"open_issues_count":18,"forks_count":8,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-05-01T12:39:29.313Z","etag":null,"topics":["attachments","dump","export","import","markdown","note-taking","notes"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/notable.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"license","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-07-22T01:20:03.000Z","updated_at":"2024-04-08T06:09:28.000Z","dependencies_parsed_at":"2024-01-14T09:01:50.851Z","dependency_job_id":null,"html_url":"https://github.com/notable/dumper","commit_stats":{"total_commits":74,"total_committers":2,"mean_commits":37.0,"dds":"0.013513513513513487","last_synced_commit":"68284096cbdc92e6f8f2544f8947374bff4e71a3"},"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/notable%2Fdumper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/notable%2Fdumper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/notable%2Fdumper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/notable%2Fdumper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/notable","download_url":"https://codeload.github.com/notable/dumper/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230415317,"owners_count":18222158,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["attachments","dump","export","import","markdown","note-taking","notes"],"created_at":"2024-07-31T05:01:09.908Z","updated_at":"2024-12-19T10:08:43.604Z","avatar_url":"https://github.com/notable.png","language":"TypeScript","funding_links":[],"categories":["JavaScript","TypeScript"],"sub_categories":[],"readme":"# Dumper\n\nLibrary for extracting attachments, notes and metadata out of formats used by popular note-taking apps.\n\n## Features\n\n- **Markdown**: all notes are converted to Markdown automatically, no matter what format each note uses.\n- **Modular**: each supported format is implemented by a \"provider\", additional providers can be implemented easily, learn more about implementing one yourself [here](https://github.com/notable/dumper/blob/master/.github/CONTRIBUTING.md).\n- **Lightweight**: extra care has been taken to ensure this library is lightweight, no external DOM implementation is loaded by default and the most lightweight dependencies are being used.\n\n## Install\n\n```sh\nnpm install --save @notable/dumper\n```\n\n## Providers\n\nThe following providers are currently implemented:\n\n- **Enex**: it can import notes exported via [Evernote](https://evernote.com).\n  - **Extensions**: `.enex`.\n- **Boostnote**: it can import notes written using [Boostnote](https://boostnote.io).\n  - **Extensions**: `.cson`.\n- **HTML**: it can import HTML notes, most popular note-taking apps can export to HTML.\n  - **Extensions**: `.html`, `.htm`.\n- **Markdown**: it can import plain Markdown notes.\n  - **Extensions**: `.md`, `.mkd`, `.mkdn`, `.mdwn`, `.mdown`, `.markdown`, `.markdn`, `.mdtxt`, `.mdtext`, `.txt`.\n\n## Usage\n\nThe following interfaces are provided:\n\n```ts\ninterface Dumper {\n  isSupported ( source: string ): boolean,\n  dump ( options: Options ): Promise\u003cvoid\u003e\n}\n\ninterface Options {\n  DOMParser?: DOMParser, // This option is only optional if you are in a browser-like environment, e.i. \"window.DOMParser\" exists\n  source: string | string[],\n  dump ( note: Note ): void | Promise\u003cvoid\u003e\n}\n\ninterface Note {\n  metadata: {\n    title: string,\n    tags: string[],\n    attachments: {\n      metadata: {\n        name: string,\n        created: Date,\n        modified: Date\n      },\n      content: Uint8Array\n    }[],\n    deleted: boolean,\n    favorited: boolean,\n    pinned: boolean,\n    created: Date,\n    modified: Date\n  },\n  content: Uint8Array\n}\n```\n\nYou can use the library like so:\n\n```ts\nimport * as path from 'path';\nimport Dumper from '@notable/dumper';\n\nDumper.dump ({\n  source: path.join ( __dirname, 'source.html' ),\n  dump ( note ) {\n    // Do something with each given note object...\n  }\n});\n```\n\n## Contributing\n\nThere are multiple ways to contribute to this project, read about them [here](https://github.com/notable/dumper/blob/master/.github/CONTRIBUTING.md).\n\n## Related\n\n- **[Notable](https://github.com/notable/notable)**: The Markdown-based note-taking app that doesn't suck.\n\n## License\n\nMIT © Fabio Spampinato\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnotable%2Fdumper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnotable%2Fdumper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnotable%2Fdumper/lists"}