{"id":28921729,"url":"https://github.com/chris17453/flextable","last_synced_at":"2026-04-24T20:33:08.810Z","repository":{"id":53534023,"uuid":"160013082","full_name":"chris17453/flextable","owner":"chris17453","description":"tabular data formatter, for code, cli or pipes","archived":false,"fork":false,"pushed_at":"2021-03-25T22:20:36.000Z","size":60,"stargazers_count":0,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-25T14:53:12.533Z","etag":null,"topics":["csv","linux","python","table","tabular-data-formatter","viewer"],"latest_commit_sha":null,"homepage":null,"language":"Python","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/chris17453.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}},"created_at":"2018-12-02T04:24:02.000Z","updated_at":"2019-01-07T18:13:50.000Z","dependencies_parsed_at":"2022-09-02T10:52:12.800Z","dependency_job_id":null,"html_url":"https://github.com/chris17453/flextable","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chris17453/flextable","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris17453%2Fflextable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris17453%2Fflextable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris17453%2Fflextable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris17453%2Fflextable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chris17453","download_url":"https://codeload.github.com/chris17453/flextable/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chris17453%2Fflextable/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32239731,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T13:21:15.438Z","status":"ssl_error","status_checked_at":"2026-04-24T13:21:15.005Z","response_time":64,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["csv","linux","python","table","tabular-data-formatter","viewer"],"created_at":"2025-06-22T07:07:58.662Z","updated_at":"2026-04-24T20:33:08.805Z","avatar_url":"https://github.com/chris17453.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# flextable\n\ntabular data formatter, for code, cli or pipes\n\n## Purpose\n\nPrimarilary developed for ddb. It seemed prudent to seperate the concerns involved into different projects\n\n### Pipe a file into a table\n\n```bash\ncat file | flextable  -d ',' -cc 9\n```\n\n### From the Terminal or Script\n\n- This will load a text file \n- that has a ',' delimiter \n- starting at line 1\n- for 10 lines\n- with a column count of 9\n- from a file named MOCK_DATA.csv\n\n```bash\nflextable  -d , --line 1 --length 10 -cc 9 --file  MOCK_DATA.csv\n```\n\n### format with code\n\n```python\nimport flextable\n\n\n config = flextable.table_config()\n config.columns = ['column1','column2','column3','column4','column5','column6']\n results=[some python object with an array of arrays]\n flextable.table(data=results, args=config)\n```\n\n### Configuration\n\n- flextanble accepts switches and environment variables\n- switches take precidence\n\n### Options\n\n|Short|Long            |Default| Description                                                |\n|----|-----------------|-------|------------------------------------------------------------|\n|    |--file           |       | The input file to read                                     |\n|-c  |--columns        |       | column names, comma seperated                              |\n|-cc |--column-count   |       | column count, auto names columns 1-n                       |\n|-hol|--header-on-line |       | auto populate column count/names from this row             |\n|-rq |--remove-quote   |True   | unwrap fields with block quotes                            |\n|-bq |--block-quote    |       | field block quote identifier                               |\n|-ds |--data-on-line   |1      | data starts on this line                                   |\n|-bs |--border-style   |SINGLE | change table style, SINGLE, DOUBBLE, ASCII                 |\n|-nft|--no-footer      |True   | dont show the footer                                       |\n|-nhd|--no-header      |True   | dont show header                                           |\n|-ftc|--footer-columns |True   | footer has column names                                    |\n|-hde|--header-every   |       | show header every (n) rows                                 |\n|-e  |--error          |True   | rows with invalid number of columns are considered errors  |\n|-cm |--comment        |'#'    | character that denotes line is comment                     |\n|-d  |--delimiter      |','    | field delimiter                                            |\n|-he |--hide-errors    |False  | do not display errors                                      |\n|-hc |--hide-comments  |False  | do not display comments                                    |\n|-hw |--hide-whitespace|False  | do not display whitespace                                  |\n|-l  |--line           |1      | line number to start displaying data                       |\n|-len|--length         |       | number of lines to show, hidden elements count             |\n|-p  |--page           |       | page to start displaying, requires length parameter        |\n|-ow |--width          | auto  | width of output in characters, if not specified calculated |\n|-oh |--height         |       | height of output window in characters                      |\n|-nc |--no-color       |False  | disale color output                                        |\n|-o  |--output         |ASCII  | ASCII, YAML, JSON                                          |\n\n\n## Environment vars\n\n|Long             |Environment Var   |\n|-----------------|------------------|\n|--file           |FT_FILE           |\n|--columns        |FT_COLUMNS        |\n|--column-count   |FT_COLUMN_COUNT   |\n|--header-on-line |FT_HEADER_ON_LINE |\n|--remove-quote   |FT_REMOVE_QUOTE   |\n|--block-quote    |FT_BLOCK_QUOTE    |\n|--data-on-line   |FT_DATA_ON_LINE   |\n|--border-style   |FT_BORDER_STYLE   |\n|--no-footer      |FT_NO_FOOTER      |\n|--no-header      |FT_NO_HEADER      |\n|--footer-columns |FT_FOOTER_COLUMNS |\n|--header-every   |FT_HEADER_EVERY   |\n|--error          |FT_ERROR          |\n|--comment        |FT_COMMENT        |\n|--delimiter      |FT_DELIMITER      |\n|--hide-errors    |FT_HIDE_ERRORS    |\n|--hide-comments  |FT_HIDE_COMMENTS  |\n|--hide-whitespace|FT_HIDE_WHITESPACE|\n|--line           |FT_LINE           |\n|--length         |FT_LENGTH         |\n|--page           |FT_PAGE           |\n|--width          |FT_WIDTH          |\n|--height         |FT_HEIGHT         |\n|--no-color       |FT_NO_COLOR       |\n|--output         |FT_OUTPUT         |\n\n### CLI Results\n\n```text\n #flextable MOCK_DATA.csv -l 1 -len 10 -cc 6 -d ,  \n┌┤column1    ├┬┤column2    ├┬┤column3    ├┬┤column4    ├┬┤column5    ├┬┤column6    ├┐\n│id           │first_name   │last_name    │email        │gender       │ip_address   │\n│2            │Redford      │Ornils       │rornils1@amaz│Male         │24.42.186.82 │\n│3            │Grenville    │Buckley      │gbuckley2@giz│Male         │143.223.126.2│\n│4            │Thalia       │Badrock      │tbadrock3@xin│Female       │113.57.179.78│\n│5            │Julie        │Minchell     │jminchell4@sk│Female       │105.165.149.1│\n│6            │Lancelot     │Archibold    │larchibold5@p│Male         │213.155.189.4│\n│7            │Bernie       │Matteucci    │bmatteucci6@b│Male         │109.156.49.36│\n│8            │Flinn        │Mulchrone    │fmulchrone7@n│Male         │22.84.116.46 │\n│9            │Seamus       │Tocque       │stocque8@cnet│Male         │79.30.35.75  │\n│10           │Lazare       │Abbett       │labbett9@who.│Male         │17.173.76.145│\n└[column1    ]┴[column2    ]┴[column3    ]┴[column4    ]┴[column5    ]┴[column6    ]┘\n\n```\n\n## JSON RESULTS\n\n```json\n#flextable MOCK_DATA.csv -l 1 -len 10 -cc 6 -d , -o json\n{\"header\": [\"column1\", \"column2\", \"column3\", \"column4\", \"column5\", \"column6\"], \"rows\": [{\"type\": 3, \"data\": [\"id\", \"first_name\", \"last_name\", \"email\", \"gender\", \"ip_address\"], \"file_line_number\": 1, \"error\": null}, {\"type\": 3, \"data\": [\"2\", \"Redford\", \"Ornils\", \"rornils1@amazon.co.uk\", \"Male\", \"24.42.186.82\"], \"file_line_number\": 2, \"error\": null}, {\"type\": 3, \"data\": [\"3\", \"Grenville\", \"Buckley\", \"gbuckley2@gizmodo.com\", \"Male\", \"143.223.126.204\"], \"file_line_number\": 3, \"error\": null}, {\"type\": 3, \"data\": [\"4\", \"Thalia\", \"Badrock\", \"tbadrock3@xinhuanet.com\", \"Female\", \"113.57.179.78\"], \"file_line_number\": 4, \"error\": null}, {\"type\": 3, \"data\": [\"5\", \"Julie\", \"Minchell\", \"jminchell4@skyrock.com\", \"Female\", \"105.165.149.121\"], \"file_line_number\": 5, \"error\": null}, {\"type\": 3, \"data\": [\"6\", \"Lancelot\", \"Archibold\", \"larchibold5@pinterest.com\", \"Male\", \"213.155.189.44\"], \"file_line_number\": 6, \"error\": null}, {\"type\": 3, \"data\": [\"7\", \"Bernie\", \"Matteucci\", \"bmatteucci6@bravesites.com\", \"Male\", \"109.156.49.36\"], \"file_line_number\": 7, \"error\": null}, {\"type\": 3, \"data\": [\"8\", \"Flinn\", \"Mulchrone\", \"fmulchrone7@naver.com\", \"Male\", \"22.84.116.46\"], \"file_line_number\": 8, \"error\": null}, {\"type\": 3, \"data\": [\"9\", \"Seamus\", \"Tocque\", \"stocque8@cnet.com\", \"Male\", \"79.30.35.75\"], \"file_line_number\": 9, \"error\": null}, {\"type\": 3, \"data\": [\"10\", \"Lazare\", \"Abbett\", \"labbett9@who.int\", \"Male\", \"17.173.76.145\"], \"file_line_number\": 10, \"error\": null}]}\n\n```\n\n### YAML RESULTS\n\n```yaml\n#flextable MOCK_DATA.csv -l 1 -len 10 -cc 6 -d , -o yaml\nheader: [column1, column2, column3, column4, column5, column6]\nrows:\n- data: [id, first_name, last_name, email, gender, ip_address]\n  error: null\n  file_line_number: 1\n  type: 3\n- data: ['2', Redford, Ornils, rornils1@amazon.co.uk, Male, 24.42.186.82]\n  error: null\n  file_line_number: 2\n  type: 3\n- data: ['3', Grenville, Buckley, gbuckley2@gizmodo.com, Male, 143.223.126.204]\n  error: null\n  file_line_number: 3\n  type: 3\n- data: ['4', Thalia, Badrock, tbadrock3@xinhuanet.com, Female, 113.57.179.78]\n  error: null\n  file_line_number: 4\n  type: 3\n- data: ['5', Julie, Minchell, jminchell4@skyrock.com, Female, 105.165.149.121]\n  error: null\n  file_line_number: 5\n  type: 3\n- data: ['6', Lancelot, Archibold, larchibold5@pinterest.com, Male, 213.155.189.44]\n  error: null\n  file_line_number: 6\n  type: 3\n- data: ['7', Bernie, Matteucci, bmatteucci6@bravesites.com, Male, 109.156.49.36]\n  error: null\n  file_line_number: 7\n  type: 3\n- data: ['8', Flinn, Mulchrone, fmulchrone7@naver.com, Male, 22.84.116.46]\n  error: null\n  file_line_number: 8\n  type: 3\n- data: ['9', Seamus, Tocque, stocque8@cnet.com, Male, 79.30.35.75]\n  error: null\n  file_line_number: 9\n  type: 3\n- data: ['10', Lazare, Abbett, labbett9@who.int, Male, 17.173.76.145]\n  error: null\n  file_line_number: 10\n  type: 3\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchris17453%2Fflextable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchris17453%2Fflextable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchris17453%2Fflextable/lists"}