{"id":16971780,"url":"https://github.com/juancarlospaco/nim-html-tools","last_synced_at":"2025-07-01T13:07:37.313Z","repository":{"id":87656707,"uuid":"176357220","full_name":"juancarlospaco/nim-html-tools","owner":"juancarlospaco","description":"HTML5 Tools for Nim, all Templates, No CSS, No Libs, No JS Framework","archived":false,"fork":false,"pushed_at":"2019-07-24T02:47:08.000Z","size":56,"stargazers_count":22,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-21T20:16:46.193Z","etag":null,"topics":["client-side","client-side-validation","frontend","html5","nim","nim-lang","nim-language","nimwc"],"latest_commit_sha":null,"homepage":null,"language":"Nim","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/juancarlospaco.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"custom":"https://liberapay.com/juancarlospaco/donate"}},"created_at":"2019-03-18T19:38:19.000Z","updated_at":"2024-06-20T20:28:45.000Z","dependencies_parsed_at":"2023-03-13T18:40:26.173Z","dependency_job_id":null,"html_url":"https://github.com/juancarlospaco/nim-html-tools","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/juancarlospaco/nim-html-tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juancarlospaco%2Fnim-html-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juancarlospaco%2Fnim-html-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juancarlospaco%2Fnim-html-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juancarlospaco%2Fnim-html-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juancarlospaco","download_url":"https://codeload.github.com/juancarlospaco/nim-html-tools/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juancarlospaco%2Fnim-html-tools/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262969883,"owners_count":23392529,"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":["client-side","client-side-validation","frontend","html5","nim","nim-lang","nim-language","nimwc"],"created_at":"2024-10-14T00:54:38.186Z","updated_at":"2025-07-01T13:07:37.290Z","avatar_url":"https://github.com/juancarlospaco.png","language":"Nim","funding_links":["https://liberapay.com/juancarlospaco/donate"],"categories":[],"sub_categories":[],"readme":"# Nim-HTML-Tools\n\n- HTML5 Tools for Nim, all Templates, No CSS, No Libs, No JS Framework, No CSS Framework.\n\n\n# Features\n\n- [HTML Image Lazy Load.](https://codepen.io/FilipVitas/pen/pQBYQd)\n- [HTML Input Email, that validates **before** Submit, uses IANA for validation.](https://coliff.github.io/html5-email-regex)\n- [HTML Notification bubble, super easy to use.](https://user-images.githubusercontent.com/1189414/54497190-708cfd00-48d6-11e9-9812-7ac7542c294e.png)\n- HTML Input File, validates File Format **before** Upload, by default for Images but you can customize it.\n- HTML Minifier, super fast performance.\n- RST/Markdown to HTML using Nim std lib.\n- HTML Input Number, wont allow Negative, maxlenght is enforced, dir auto, etc.\n- Designed for Nim std lib templating engine and NimWC, but can be used anywhere.\n\n![HTML Notification bubble](https://user-images.githubusercontent.com/1189414/54497190-708cfd00-48d6-11e9-9812-7ac7542c294e.png)\n\n![HTML Input File Format Validation](fileformat-validate.png)\n\n\n![HTML Input Mail Validation](email-validation.png)\n\n\n# Use\n\n```nim\nimport html_tools\n\necho inputEmailHtml(value=\"user@company.com\", name=\"myMail\", class=\"is-rounded\", id=\"myMail\", placeholder=\"Email\", required=true)\necho inputNumberHtml(value=\"42\", name=\"myNumber\", class=\"is-rounded\", id=\"myNumber\", placeholder=\"Integer\", required=true)\necho inputFileHtml(name=\"myImage\", class=\"is-rounded\", id=\"myImage\", required=true)\necho imgLazyLoadHtml(src=\"myImage.jpg\", class=\"is-rounded\", id=\"lazyAsHell\")\necho \"\u003cbutton onClick='\" \u0026 notifyHtml(\"This is a Notification\") \u0026 \"'\u003eNotification\u003c/button\u003e\"\necho rst2html(\"**Hello** *World*\")\necho minifyHtml(\"     \u003cp\u003esome\u003c/p\u003e                                                  \u003cb\u003eHTML\u003c/b\u003e     \") # Minifies when -d:release\n```\n(Not all parameters are required, on the example all parameters are used only for illustrative purposes)\n\n\n# Install\n\n- `nimble install html_tools`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuancarlospaco%2Fnim-html-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuancarlospaco%2Fnim-html-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuancarlospaco%2Fnim-html-tools/lists"}