{"id":24510242,"url":"https://github.com/fokaaas/improved-markdown-parser","last_synced_at":"2026-05-21T07:45:38.245Z","repository":{"id":228060502,"uuid":"773000520","full_name":"fokaaas/improved-markdown-parser","owner":"fokaaas","description":"This console application allows you to parse markdown into html \u0026 escape codes","archived":false,"fork":false,"pushed_at":"2024-03-17T12:50:58.000Z","size":95,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-22T00:32:11.816Z","etag":null,"topics":["console","escape","html","markdown","parser"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/fokaaas.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":"2024-03-16T13:18:17.000Z","updated_at":"2024-03-27T23:06:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"8fed5910-ab63-4cb9-bc3d-8509b8764224","html_url":"https://github.com/fokaaas/improved-markdown-parser","commit_stats":null,"previous_names":["fokaaas/improved-markdown-parser"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fokaaas%2Fimproved-markdown-parser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fokaaas%2Fimproved-markdown-parser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fokaaas%2Fimproved-markdown-parser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fokaaas%2Fimproved-markdown-parser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fokaaas","download_url":"https://codeload.github.com/fokaaas/improved-markdown-parser/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243709783,"owners_count":20335089,"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":["console","escape","html","markdown","parser"],"created_at":"2025-01-22T00:28:00.249Z","updated_at":"2026-05-21T07:45:38.180Z","avatar_url":"https://github.com/fokaaas.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Markdown Parser\n\nThis console application allows you to parse markdown into html \u0026 escape codes.\n\nThe result can be displayed in the console or saved to a file.\n\n**Tech Stack**:\n- Node.js\n- TypeScript\n- Commander\n\n## How to set up it locally?\n\nFirstly, clone this repo:\n\n```bash\ngit clone https://github.com/fokaaas/improved-markdown-parser.git\n```\n\nThen install **pnpm** globally:\n\n```bash\nnpm install -g pnpm\n```\n\nInstall dependencies in project directory:\n\n```bash\npnpm install\n```\n\nRun application:\n\n```bash\npnpm parse \u003cpath\u003e --out \u003cpath\u003e --format \u003ctype\u003e\n```\n\nExplore all commands:\n\n```bash\npnpm parse --help\n```\n\n```bash\nUsage: Markdown Parser [options] \u003cpath\u003e     \n\nConverts a markdown file to HTML\n\nArguments:\n  path                 path to markdown file\n\nOptions:\n  -v, --version        output the current version\n  -o, --out \u003cpath\u003e     path to html file\n  -f, --format \u003ctype\u003e  output format (choices: \"html\", \"escape\")\n  -h, --help           display help for command\n```\n\n## Examples\n\nLets parse churka-example.md file and save result to churka-example.html:\n\n### churka-example.md\n\n```markdown\nЇде `чурка` по дорозі. Зупиняється і **ба_чить**: _крисак на дорозі лежить_. Великий такий, правда дохлий.\nНу і вирішив він його забрати із собою. Взяв на руки, _відкрив багажник_. І положив туди крисака зі словами \"Прігодіться!\".\n\nНа наступний **день** їде чурка _тією самою_ дорогою. \u003cЗупиняється\u003e\n\u003c/Зупиняється\u003e\n\\```\nВідкриває `багажник, дістає звідти крисака`, кладе його на те\nж саме місце. І `говорить`: \"Нє прігоділся!\"\n\\```\n```\n\nParse it:\n\n```bash\npnpm parse churka-example.md --out churka-example.html\n```\n\nchurka-example.html:\n\n```html\n\u003cp\u003eЇде \u003ctt\u003eчурка\u003c/tt\u003e по дорозі. Зупиняється і \u003cb\u003eба_чить\u003c/b\u003e: \u003ci\u003eкрисак на дорозі лежить\u003c/i\u003e. Великий такий, правда дохлий. \nНу і вирішив він його забрати із собою. Взяв на руки, \u003ci\u003eвідкрив багажник\u003c/i\u003e. І положив туди крисака зі словами \"Прігодіться!\".\u003c/p\u003e\n\u003cp\u003eНа наступний \u003cb\u003eдень\u003c/b\u003e їде чурка \u003ci\u003eтією самою\u003c/i\u003e дорогою. Зупиняється.\n\u003cpre\u003e\nВідкриває `багажник, дістає звідти крисака`, кладе його на те\nж саме місце. І `говорить`: \"Нє прігоділся!\"\n\u003c/pre\u003e\n\u003c/p\u003e\n```\n\nThen, lets parse churka-example.md file into escape codes:\n\n```bash\npnpm parse churka-example.md --out churka-example.txt --format escape\n```\n\nchurka-example.txt:\n\n```\nЇде \u001b[7mчурка\u001b[27m по дорозі. Зупиняється і \u001b[1mба_чить\u001b[22m: \u001b[3mкрисак на дорозі лежить\u001b[23m. Великий такий, правда дохлий.\nНу і вирішив він його забрати із собою. Взяв на руки, \u001b[3mвідкрив багажник\u001b[23m. І положив туди крисака зі словами \"Прігодіться!\".\n\nНа наступний \u001b[1mдень\u001b[22m їде чурка \u001b[3mтією самою\u001b[23m дорогою. Зупиняється.\n\u001b[7m\nВідкриває `багажник, дістає звідти крисака`, кладе його на те\nж саме місце. І `говорить`: \"Нє прігоділся!\"\n\u001b[27m\n```\n\n## Unit Tests\n\n32 unit tests are available for this application.\n\nRun them:\n\n```bash\npnpm test\n```\n\nAnd you will see some message like this:\n\n```bash\nTest Suites: 4 passed, 4 total\nTests:       32 passed, 32 total\nSnapshots:   0 total\nTime:        3.692 s, estimated 4 s\nRan all test suites.\n```\n\n## Revert Commit\n\n[Commit](https://github.com/fokaaas/improved-markdown-parser/commit/de63ed97fa3a5908788de5147e221631e32de893)\n\n## Commit with failed actions\nThere are 3 actions available for this project: Build, Lint, Test.\n\n[Commit](https://github.com/fokaaas/improved-markdown-parser/commit/7c5abec2952658e46ac1e84623e73c754bee058c)\n\n## Conclusion\n\nI have experience with writing unit tests on various projects, in particular at my work \nand on the [FICE Advisor](https://github.com/fictadvisor/fictadvisor) project. They helped me personally when refactoring the code. \nThey guarantee that after refactoring, the functionality will remain the same \nand nothing will break.  Also, tests encourage adherence to architectural rules when writing code.  \nAnd it is also very convenient to study the functionality you do not know, precisely \nfrom the written unit tests.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffokaaas%2Fimproved-markdown-parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffokaaas%2Fimproved-markdown-parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffokaaas%2Fimproved-markdown-parser/lists"}