{"id":20551629,"url":"https://github.com/clarketm/tableexport-docs","last_synced_at":"2025-04-14T11:32:04.099Z","repository":{"id":86955445,"uuid":"120389060","full_name":"clarketm/TableExport-docs","owner":"clarketm","description":"TableExport Documentation","archived":false,"fork":false,"pushed_at":"2018-12-24T03:26:55.000Z","size":732,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T00:44:06.631Z","etag":null,"topics":["docs","tableexport"],"latest_commit_sha":null,"homepage":"https://tableexport.travismclarke.com","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clarketm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-06T02:15:15.000Z","updated_at":"2019-05-11T01:38:41.000Z","dependencies_parsed_at":"2023-05-29T23:15:40.320Z","dependency_job_id":null,"html_url":"https://github.com/clarketm/TableExport-docs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarketm%2FTableExport-docs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarketm%2FTableExport-docs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarketm%2FTableExport-docs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarketm%2FTableExport-docs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clarketm","download_url":"https://codeload.github.com/clarketm/TableExport-docs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248871817,"owners_count":21175297,"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":["docs","tableexport"],"created_at":"2024-11-16T02:32:43.932Z","updated_at":"2025-04-14T11:32:04.086Z","avatar_url":"https://github.com/clarketm.png","language":"CSS","readme":" \u003c!--[![TableExport](/Hero.png)](https://tableexport.travismclarke.com)--\u003e\n\n# [TableExport](https://tableexport.travismclarke.com)\n\nThe simple, easy-to-implement library to export HTML tables to `xlsx`, `xls`, `csv`, and `txt` files.\n\n[![GitHub release](https://img.shields.io/github/release/clarketm/tableexport.svg)]()\n[![Build Status](https://travis-ci.org/clarketm/TableExport.svg?branch=master)](https://travis-ci.org/clarketm/TableExport)\n[![Downloads](https://img.shields.io/npm/dt/tableexport.svg)]()\n[![License](https://img.shields.io/npm/l/tableexport.svg)]()\n\n## Docs\n\n- [Migrating from **3.x** to **4.x**?](MIGRATING_v3_to_v4.md)\n- [Migrating from **4.x** to **5.x**?](MIGRATING_v4_to_v5.md)\n- [`v3` docs](https://tableexport.v3.travismclarke.com/) and [README](https://github.com/clarketm/TableExport/tree/3.x.x#getting-started):\n- [`v4` docs](https://tableexport.travismclarke.com/READMEv4.html) and [README](https://github.com/clarketm/TableExport/tree/4.x.x#getting-started):\n- [`v5` docs](https://tableexport.travismclarke.com/) and [README](https://github.com/clarketm/TableExport/#getting-started):\n\n## Getting Started\n\n### Install manually using `\u003cscript\u003e` tags\n\nTo use this library, include the [FileSaver.js](https://github.com/clarketm/FileSaver.js/) library, and [TableExport](https://tableexport.travismclarke.com) library before the closing `\u003cbody\u003e` tag of your HTML document:\n\n```html\n\u003cscript src=\"FileSaver.js\"\u003e\u003c/script\u003e\n...\n\u003cscript src=\"tableexport.js\"\u003e\u003c/script\u003e\n```\n\n### Install with Bower\n\n```shell\n$ bower install tableexport.js\n```\n\n### Install with npm\n\n```shell\n$ npm install tableexport\n```\n\n### CDN\n\n|            |                         uncompressed                         |                                                                                                                                 compressed                                                                                                                                 |\n| :--------: | :----------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n|  **CSS**   | [🔗](https://unpkg.com/tableexport/dist/css/tableexport.css) |                                                                                                      [🔗](https://unpkg.com/tableexport/dist/css/tableexport.min.css)                                                                                                      |\n|   **JS**   |  [🔗](https://unpkg.com/tableexport/dist/js/tableexport.js)  |                                                                                                       [🔗](https://unpkg.com/tableexport/dist/js/tableexport.min.js)                                                                                                       |\n| **Images** |                           \u0026mdash;                            | [🔗\u003csup\u003exlsx\u003c/sup\u003e](https://unpkg.com/tableexport/dist/img/xlsx.svg)[🔗\u003csup\u003exls\u003c/sup\u003e](https://unpkg.com/tableexport/dist/img/xls.svg)[🔗\u003csup\u003ecsv\u003c/sup\u003e](https://unpkg.com/tableexport/dist/img/csv.svg)[🔗\u003csup\u003etxt\u003c/sup\u003e](https://unpkg.com/tableexport/dist/img/txt.svg) |\n\n### Dependencies\n\n#### Required:\n\n- [FileSaver.js](https://github.com/clarketm/FileSaver.js/)\n\n#### Optional:\n\n- [jQuery](https://jquery.com) (1.2.1 or higher)\n- [Bootstrap](http://getbootstrap.com/getting-started/#download) (3.1.0 or higher)\n\n#### Add-Ons:\n\nIn order to provide **Office Open XML SpreadsheetML Format ( `.xlsx` )** support, you must include the following third-party library in your project before both [FileSaver.js](https://github.com/clarketm/FileSaver.js/) and [TableExport](https://tableexport.travismclarke.com).\n\n- [xlsx.core.js](https://github.com/SheetJS/js-xlsx) by _SheetJS_\n\n\u003e Including `xlsx.core.js` is **NOT** necessary if installing with [`Bower`](#install-with-bower) or [`npm`](#install-with-npm)\n\n```html\n\u003cscript src=\"xlsx.core.js\"\u003e\u003c/script\u003e\n\u003cscript src=\"FileSaver.js\"\u003e\u003c/script\u003e\n...\n\u003cscript src=\"tableexport.js\"\u003e\u003c/script\u003e\n```\n\n#### Older Browsers:\n\nTo support legacy browsers ( **Chrome** \u003c 20, **Firefox** \u003c 13, **Opera** \u003c 12.10, **IE** \u003c 10, **Safari** \u003c 6 ) include the [Blob.js](https://github.com/clarketm/Blob.js/) polyfill before the [FileSaver.js](https://github.com/clarketm/FileSaver.js/) script.\n\n- [Blob.js](https://github.com/clarketm/Blob.js) by _eligrey_ (forked by _clarketm_)\n\n\u003e Including `Blob.js` is **NOT** necessary if installing with [`Bower`](#install-with-bower) or [`npm`](#install-with-npm)\n\n```html\n\u003cscript src=\"Blob.js\"\u003e\u003c/script\u003e\n\u003cscript src=\"FileSaver.js\"\u003e\u003c/script\u003e\n...\n\u003cscript src=\"tableexport.js\"\u003e\u003c/script\u003e\n```\n\n## Usage\n\n### JavaScript\n\nTo use this library, simple call the [`TableExport`](https://tableexport.travismclarke.com) constructor:\n\n```js\nnew TableExport(document.getElementsByTagName(\"table\"));\n\n// OR simply\n\nTableExport(document.getElementsByTagName(\"table\"));\n\n// OR using jQuery\n\n$(\"table\").tableExport();\n```\n\nAdditional properties can be passed-in to customize the look and feel of your tables, buttons, and exported data.\n\nNotice that by default, TableExport will create export buttons for three different filetypes _`xls`, `csv`, `txt`_. You can choose which buttons to generate by setting the `formats` property to the filetype(s) of your choice.\n\n```js\n/* Defaults */\nTableExport(document.getElementsByTagName(\"table\"), {\n  headers: true,                      // (Boolean), display table headers (th or td elements) in the \u003cthead\u003e, (default: true)\n  footers: true,                      // (Boolean), display table footers (th or td elements) in the \u003ctfoot\u003e, (default: false)\n  formats: [\"xlsx\", \"csv\", \"txt\"],    // (String[]), filetype(s) for the export, (default: ['xlsx', 'csv', 'txt'])\n  filename: \"id\",                     // (id, String), filename for the downloaded file, (default: 'id')\n  bootstrap: false,                   // (Boolean), style buttons using bootstrap, (default: true)\n  exportButtons: true,                // (Boolean), automatically generate the built-in export buttons for each of the specified formats (default: true)\n  position: \"bottom\",                 // (top, bottom), position of the caption element relative to table, (default: 'bottom')\n  ignoreRows: null,                   // (Number, Number[]), row indices to exclude from the exported file(s) (default: null)\n  ignoreCols: null,                   // (Number, Number[]), column indices to exclude from the exported file(s) (default: null)\n  trimWhitespace: true,               // (Boolean), remove all leading/trailing newlines, spaces, and tabs from cell text in the exported file(s) (default: false)\n  RTL: false,                         // (Boolean), set direction of the worksheet to right-to-left (default: false)\n  sheetname: \"id\"                     // (id, String), sheet name for the exported spreadsheet, (default: 'id')\n});\n```\n\n\u003e **Note:** to use the `xlsx` filetype, you must include [js-xlsx](https://github.com/SheetJS/js-xlsx/blob/master/dist/xlsx.core.min.js); reference the [`Add-Ons`](#add-ons) section.\n\n### Properties\n\n- [`headers`](https://tableexport.v3.travismclarke.com/examples/headers_footers.html)\n- [`footers`](https://tableexport.v3.travismclarke.com/examples/headers_footers.html)\n- [`formats`](https://tableexport.v3.travismclarke.com/examples/formats-xlsx-xls-csv-txt.html)\n- [`filename`](https://tableexport.v3.travismclarke.com/examples/filename.html)\n- [`bootstrap`](https://tableexport.v3.travismclarke.com/examples/bootstrap.html)\n- [`exportButtons`](https://tableexport.v3.travismclarke.com/examples/exportButtons.html)\n- [`position`](https://tableexport.v3.travismclarke.com/examples/position.html)\n- [`ignoreRows`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n- [`ignoreCols`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n- [`trimWhitespace`](https://tableexport.v3.travismclarke.com/examples/whitespace.html)\n- [`RTL`](https://tableexport.v3.travismclarke.com/examples/right-to-left.html)\n- [`sheetname`](https://tableexport.v3.travismclarke.com/examples/sheetname.html)\n\n### Methods\n\nTableExport supports additional methods (**getExportData**, **update**, **reset** and **remove**) to control the [`TableExport`](https://tableexport.travismclarke.com) instance after creation.\n\n```js\n/* First, call the `TableExport` constructor and save the return instance to a variable */\nvar table = TableExport(document.getElementById(\"export-buttons-table\"));\n```\n\n#### [`getExportData`](https://tableexport.v3.travismclarke.com/examples/exportButtons.html)\n\n```js\n/* get export data */\nvar exportData = table.getExportData(); // useful for creating custom export buttons, i.e. when (exportButtons: false)\n\n/*****************\n ** exportData ***\n *****************\n{\n    \"export-buttons-table\": {\n        xls: {\n            data: \"...\",\n            fileExtension: \".xls\",\n            filename: \"export-buttons-table\",\n            mimeType: \"application/vnd.ms-excel\"\n        },\n        ...\n    }\n};\n*/\n```\n\n#### [`getFileSize`](https://tableexport.v3.travismclarke.com/examples/exportButtons.html)\n\n```js\nvar tableId = \"export-buttons-table\";\nvar XLS = table.CONSTANTS.FORMAT.XLS;\n\n/* get export data (see `getExportData` above) */\nvar exportDataXLS = table.getExportData()[tableId][XLS];\n\n/* get file size (bytes) */\nvar bytesXLS = table.getFileSize(exportDataXLS.data, exportDataXLS.fileExtension);\n\n/**********************************\n ** bytesXLS (file size in bytes)\n **********************************\n352\n*/\n```\n\n#### [`update`](https://tableexport.v3.travismclarke.com/examples/update_reset_remove.html)\n\n```js\n/* update */\ntable.update({\n  filename: \"newFile\" // pass in a new set of properties\n});\n```\n\n#### [`reset`](https://tableexport.v3.travismclarke.com/examples/update_reset_remove.html)\n\n```js\n/* reset */\ntable.reset(); // useful for a dynamically altered table\n```\n\n#### [`remove`](https://tableexport.v3.travismclarke.com/examples/update_reset_remove.html)\n\n```js\n/* remove */\ntable.remove(); // removes caption and buttons\n```\n\n### Settings\n\nBelow are some of the popular configurable settings to customize the functionality of the library.\n\n#### [`ignoreCSS`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n\n```js\n/**\n * CSS selector or selector[] to exclude/remove cells (\u003ctd\u003e or \u003cth\u003e) from the exported file(s).\n * @type {selector|selector[]}\n * @memberof TableExport.prototype\n */\n\n// selector\nTableExport.prototype.ignoreCSS = \".tableexport-ignore\";\n\n// selector[]\nTableExport.prototype.ignoreCSS = [\".tableexport-ignore\", \".other-ignore-class\"];\n\n// OR using jQuery\n\n// selector\n$.fn.tableExport.ignoreCSS = \".tableexport-ignore\";\n\n// selector[]\n$.fn.tableExport.ignoreCSS = [\".tableexport-ignore\", \".other-ignore-class\"];\n```\n\n#### [`emptyCSS`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n\n```js\n/**\n * CSS selector or selector[] to replace cells (\u003ctd\u003e or \u003cth\u003e) with an empty string in the exported file(s).\n * @type {selector|selector[]}\n * @memberof TableExport.prototype\n */\n\n// selector\nTableExport.prototype.emptyCSS = \".tableexport-empty\";\n\n// selector[]\nTableExport.prototype.emptyCSS = [\".tableexport-empty\", \".other-empty-class\"];\n\n// OR using jQuery\n\n// selector\n$.fn.tableExport.emptyCSS = \".tableexport-empty\";\n\n// selector[]\n$.fn.tableExport.emptyCSS = [\".tableexport-empty\", \".other-empty-class\"];\n```\n\n```js\n/* default charset encoding (UTF-8) */\nTableExport.prototype.charset = \"charset=utf-8\";\n\n/* default `filename` property if \"id\" attribute is unset */\nTableExport.prototype.defaultFilename = \"myDownload\";\n\n/* default class to style buttons when not using Bootstrap or the built-in export buttons, i.e. when (`bootstrap: false` \u0026 `exportButtons: true`)  */\nTableExport.prototype.defaultButton = \"button-default\";\n\n/* Bootstrap classes used to style and position the export button, i.e. when (`bootstrap: true` \u0026 `exportButtons: true`) */\nTableExport.prototype.bootstrapConfig = [\"btn\", \"btn-default\", \"btn-toolbar\"];\n\n/* row delimeter used in all filetypes */\nTableExport.prototype.rowDel = \"\\r\\n\";\n```\n\n```js\n/**\n * Format-specific configuration (default class, content, mimeType, etc.)\n * @memberof TableExport.prototype\n */\nformatConfig: {\n    /**\n     * XLSX (Open XML spreadsheet) file extension configuration\n     * @memberof TableExport.prototype\n     */\n    xlsx: {\n        defaultClass: 'xlsx',\n        buttonContent: 'Export to xlsx',\n        mimeType: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n        fileExtension: '.xlsx'\n    },\n    xlsm: {\n        defaultClass: 'xlsm',\n        buttonContent: 'Export to xlsm',\n        mimeType: 'application/vnd.ms-excel.sheet.macroEnabled.main+xml',\n        fileExtension: '.xlsm'\n    },\n    xlsb: {\n        defaultClass: 'xlsb',\n        buttonContent: 'Export to xlsb',\n        mimeType: 'application/vnd.ms-excel.sheet.binary.macroEnabled.main',\n        fileExtension: '.xlsb'\n    },\n    /**\n     * XLS (Binary spreadsheet) file extension configuration\n     * @memberof TableExport.prototype\n     */\n    xls: {\n        defaultClass: 'xls',\n        buttonContent: 'Export to xls',\n        separator: '\\t',\n        mimeType: 'application/vnd.ms-excel',\n        fileExtension: '.xls',\n        enforceStrictRFC4180: false\n    },\n    /**\n     * CSV (Comma Separated Values) file extension configuration\n     * @memberof TableExport.prototype\n     */\n    csv: {\n        defaultClass: 'csv',\n        buttonContent: 'Export to csv',\n        separator: ',',\n        mimeType: 'text/csv',\n        fileExtension: '.csv',\n        enforceStrictRFC4180: true\n    },\n    /**\n     * TXT (Plain Text) file extension configuration\n     * @memberof TableExport.prototype\n     */\n    txt: {\n        defaultClass: 'txt',\n        buttonContent: 'Export to txt',\n        separator: '  ',\n        mimeType: 'text/plain',\n        fileExtension: '.txt',\n        enforceStrictRFC4180: true\n    }\n},\n\n//////////////////////////////////////////\n// Configuration override example\n//////////////////////////////////////////\n\n/* Change the CSV (Comma Separated Values) `mimeType` to \"application/csv\" */\nTableExport.prototype.formatConfig.xlsx.mimeType = \"application/csv\"\n\n```\n\n### CSS\n\n[TableExport](https://tableexport.travismclarke.com) packages with customized [Bootstrap](http://getbootstrap.com/getting-started/#download) CSS stylesheets to deliver enhanced table and button styling. These styles can be _enabled_ by initializing with the `bootstrap` property set to `true`.\n\n```js\nTableExport(document.getElementsByTagName(\"table\"), {\n  bootstrap: true\n});\n```\n\nWhen used alongside Bootstrap, there are four custom classes **`.xlsx`, `.xls`, `.csv`, `.txt`** providing button styling for each of the exportable filetypes.\n\n### Browser Support\n\n|             |  Chrome  | Firefox  |    IE    |  Opera   |  Safari  |\n| :---------: | :------: | :------: | :------: | :------: | :------: |\n| **Android** | \u0026#10003; | \u0026#10003; |    -     | \u0026#10003; |    -     |\n|   **iOS**   | \u0026#10003; |    -     |    -     |    -     | \u0026#10003; |\n| **Mac OSX** | \u0026#10003; | \u0026#10003; |    -     | \u0026#10003; | \u0026#10003; |\n| **Windows** | \u0026#10003; | \u0026#10003; | \u0026#10003; | \u0026#10003; | \u0026#10003; |\n\n\u003e A full list of [browser support](https://github.com/clarketm/FileSaver.js#supported-browsers) can be found in the [FileSaver.js](https://github.com/clarketm/FileSaver.js) README. Some [legacy browsers](https://github.com/clarketm/FileSaver.js#supported-browsers) may require an additional third-party dependency: [Blob.js](https://github.com/clarketm/Blob.js/)\n\n### Examples\n\n#### Customizing Properties\n\n- [`headers`](https://tableexport.v3.travismclarke.com/examples/headers_footers.html)\n- [`footers`](https://tableexport.v3.travismclarke.com/examples/headers_footers.html)\n- [`formats`](https://tableexport.v3.travismclarke.com/examples/formats-xlsx-xls-csv-txt.html)\n- [`filename`](https://tableexport.v3.travismclarke.com/examples/filename.html)\n- [`bootstrap`](https://tableexport.v3.travismclarke.com/examples/bootstrap.html)\n- [`exportButtons`](https://tableexport.v3.travismclarke.com/examples/exportButtons.html)\n- [`position`](https://tableexport.v3.travismclarke.com/examples/position.html)\n- [`ignoreRows`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n- [`ignoreCols`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n- [`trimWhitespace`](https://tableexport.v3.travismclarke.com/examples/whitespace.html)\n- [`RTL`](https://tableexport.v3.travismclarke.com/examples/right-to-left.html)\n- [`sheetname`](https://tableexport.v3.travismclarke.com/examples/sheetname.html)\n\n#### Customizing Settings\n\n- [`ignoreCSS`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n- [`emptyCSS`](https://tableexport.v3.travismclarke.com/examples/ignore-row-cols-cells.html)\n\n#### Miscellaneous\n\n- [`rowspan`](https://tableexport.v3.travismclarke.com/examples/rowspan-colspan.html)\n- [`colspan`](https://tableexport.v3.travismclarke.com/examples/rowspan-colspan.html)\n- [`cell data types`](https://tableexport.v3.travismclarke.com/examples/cell-data-types.html) (`string`, `number`, `boolean`, `date`)\n- [`emoji`](https://tableexport.v3.travismclarke.com/examples/unicode-emoji.html)\n- [`Arabic`](https://tableexport.v3.travismclarke.com/examples/arabic-language.html)\n\n#### Skeletons\n\n- [TableExport + RequireJS](https://github.com/clarketm/tableexport_requirejs_app) skeleton.\n- [TableExport + Flask](https://github.com/clarketm/tableexport_flask_app) skeleton.\n- [TableExport + Webpack 1](https://github.com/clarketm/tableexport_webpack-v1_app) skeleton.\n- [TableExport + Angular 4 + Webpack 2](https://github.com/clarketm/tableexport_angular4_webpack2_app) skeleton.\n\n### License\n\n[TableExport](https://tableexport.travismclarke.com) is licensed under the terms of the [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0.html) License\n\n### Going Forward\n\n#### TODOs\n\n- [x] Update JSDocs and TypScript definition file.\n- [x] Fix bug with **CSV** and **TXT** `ignoreRows` and `ignoreCols` (rows/cols rendered as empty strings rather than being _removed_).\n- [x] Reimplement and test the `update`, `reset`, and `remove` **TableExport** prototype properties without requiring jQuery.\n- [x] Make jQuery as _peer dependency_ and ensure proper **TableExport** rendering in browser, AMD, and CommonJS environments.\n- [x] Force jQuery to be an optionally loaded module.\n- [x] Use the enhanced [SheetJS](https://github.com/SheetJS/js-xlsx#supported-output-formats) `xls`, `csv`, and `txt` formats (exposed via `enforceStrictRFC4180` prototype property).\n- [x] Allow `ignoreCSS` and `emptyCSS` to work with any `selector|selector[]` instead of solely a single CSS class.\n- [x] Ensure (via testing) full consistency and backwards-compatibility for jQuery.\n- [ ] Add **Export as PDF** support.\n\n### Credits\n\nSpecial thanks the the following contributors:\n\n- [SheetJS](https://github.com/SheetJS) - js-xlsx\n- [Eli Grey](https://github.com/eligrey) - FileSaver.js \u0026 Blob.js\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclarketm%2Ftableexport-docs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclarketm%2Ftableexport-docs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclarketm%2Ftableexport-docs/lists"}