{"id":28625782,"url":"https://github.com/aterdev/easydocs","last_synced_at":"2026-02-24T16:49:58.578Z","repository":{"id":228773102,"uuid":"774696708","full_name":"AterDev/EasyDocs","owner":"AterDev","description":"Easy and fast static docs(blogs) website ","archived":false,"fork":false,"pushed_at":"2025-04-14T08:17:16.000Z","size":8760,"stargazers_count":12,"open_issues_count":1,"forks_count":11,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-06-12T08:11:37.632Z","etag":null,"topics":["blog","docs","dotnet","website"],"latest_commit_sha":null,"homepage":"https://aterdev.github.io/EasyBlog/","language":"C#","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/AterDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-03-20T02:20:12.000Z","updated_at":"2025-05-24T12:57:44.000Z","dependencies_parsed_at":"2024-07-31T05:32:05.912Z","dependency_job_id":"84b12612-18f2-40ad-986f-0a89e43bd474","html_url":"https://github.com/AterDev/EasyDocs","commit_stats":null,"previous_names":["aterdev/blazor-blog","aterdev/easyblog"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/AterDev/EasyDocs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AterDev%2FEasyDocs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AterDev%2FEasyDocs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AterDev%2FEasyDocs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AterDev%2FEasyDocs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AterDev","download_url":"https://codeload.github.com/AterDev/EasyDocs/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AterDev%2FEasyDocs/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261589978,"owners_count":23181446,"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":["blog","docs","dotnet","website"],"created_at":"2025-06-12T08:11:26.988Z","updated_at":"2026-02-24T16:49:58.572Z","avatar_url":"https://github.com/AterDev.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EasyDocs\n\n![NuGet Version](https://img.shields.io/nuget/v/Ater.EasyDocs)\n\n\n🌐 [English](./README.md)   🌐[中文](./README_cn.md)\n\nDo you want your own tech blog or documentation site? EasyDoc helps you generate pure static blogs and documentation portals that you can deploy anywhere with zero fuss.\n\nThe tool works as a command-line utility and will be published on both `npm` and `nuget`.\n\nDemo: [NilTor's Blog](https://dusi.dev/)\n\n\u003e [!NOTE]\n\u003e Version V1.0 is no longer maintained—V2 brings richer features and more flexibility.\n\n## 🎖️ Features\n\nCompared with similar tools, EasyDoc offers:\n\n- Minimal configuration to get started quickly\n- Unified generation of homepage, blog, documentation, and about pages for a complete personal tech site\n- Blog search plus category and archive filtering out of the box\n- Support for local image paths inside documentation\n- Light and dark themes that follow the system preference while staying mobile-friendly\n- Enhanced markdown rendering with TOC, mermaid, nomnoml, Math, plus code highlighting and copy controls\n- SEO-friendly meta tags generated automatically\n\n## 🧩 Documentation support\n\n- Render multiple documentation projects within the same site\n- Publish multiple versions per documentation\n- Deliver documentation in multiple languages\n\n## 🚀 Install the tool\n\nEasyDoc is distributed on `nuget`. Run the following command to install it globally:\n\n```powershell\ndotnet tool install -g Ater.EasyDocs\n```\n\nAfter installation, use the `ezdoc` command to operate the tool.\n\n## 🛠️ Use EasyDoc\n\nPick a repository to store your markdown documents—assume it is located in the folder `MyDocs`. Open a terminal inside `MyDocs` to work in that workspace.\n\n### Configure webinfo.json\n\nRun `ezdoc init` or create `webinfo.json` manually with the structure below:\n\n```json\n{\n  \"Name\": \"Niltor Blog\",\n  \"Description\": \"🗽 for freedom\",\n  \"AuthorName\": \"Ater\",\n  \"BaseHref\": \"/blazor-blog/\",\n  \"Domain\": \"https://aterdev.github.io\",\n  \"RepositoryUrl\": \"https://github.com/AterDev/EasyDocs\",\n  \"Branch\": \"main\",\n  \"Icon\": \"favicon.ico\",\n  \"Logo\": \"logo.png\",\n  \"Keywords\": \"docs,blog,EasyDocs\",\n  \"DocInfos\": [\n    {\n      \"Name\": \"EasyDoc\",\n      \"Description\": \"Official documentation\",\n      \"Logo\": \"logo.png\",\n      \"Languages\": [\n        \"zh-cn\",\n        \"en-us\"\n      ],\n      \"Versions\": [\n        \"2.0\"\n      ]\n    },\n    {\n      \"Name\": \"example\",\n      \"Languages\": [\n        \"zh-cn\"\n      ],\n      \"Versions\": [\n        \"1.0\"\n      ]\n    }\n  ]\n}\n```\n\nThe `DocInfos` array tells EasyDoc which documentation projects to render and which languages/versions each project supports. Always keep a trailing `/` on `BaseHref`; set it to `/` when publishing from a root domain with no subfolder.\n\n`RepositoryUrl` and `Branch` drive the “Edit on GitHub” links. `Domain` is used to generate `sitemap.xml` and page canonicals.\n\n### Authoring content\n\nCreate a content directory (for example `Content`) containing the following:\n\n- `blogs`: all markdown files here become blog posts\n- `docs`: documentation files organized as `docs/\u003cDocName\u003e/\u003clanguage\u003e/\u003cversion\u003e/...`\n- `about.md`: markdown for the about page\n\nThe `docs` folder must mirror the structure defined in `DocInfos`. For example:\n\n- docs\n  - EasyDoc\n    - zh-cn\n      - 2.0\n        - doc1.md\n        - doc2.md\n    - en-us\n      - 2.0\n        - doc1.md\n- example\n  - zh-cn\n    - 1.0\n      - doc.md\n\n### Generate the static site\n\nFrom the repository root run:\n\n```pwsh\nezdoc build .\\Content .\\WebApp\n```\n\nThis command converts every markdown file inside `Content` into a static site under `WebApp`. Preview with `http-server`, then deploy the resulting `WebApp` folder anywhere you host static content.\n\nMore details: [Official documentation](https://github.com/AterDev/EasyDocs)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faterdev%2Feasydocs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faterdev%2Feasydocs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faterdev%2Feasydocs/lists"}