{"id":13393651,"url":"https://github.com/bigskysoftware/htmx","last_synced_at":"2025-05-12T17:45:40.085Z","repository":{"id":37698389,"uuid":"255378816","full_name":"bigskysoftware/htmx","owner":"bigskysoftware","description":"\u003c/\u003e htmx - high power tools for HTML","archived":false,"fork":false,"pushed_at":"2025-05-01T06:33:10.000Z","size":97085,"stargazers_count":44482,"open_issues_count":615,"forks_count":1432,"subscribers_count":213,"default_branch":"master","last_synced_at":"2025-05-05T15:11:44.921Z","etag":null,"topics":["hateoas","html","htmx","hyperscript","javascript","rest"],"latest_commit_sha":null,"homepage":"https://htmx.org","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bigskysoftware.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["1cg"]}},"created_at":"2020-04-13T16:17:51.000Z","updated_at":"2025-05-05T13:58:43.000Z","dependencies_parsed_at":"2024-02-09T17:47:02.661Z","dependency_job_id":"7221f95e-5ecf-4c55-ab96-ee803ec4637c","html_url":"https://github.com/bigskysoftware/htmx","commit_stats":{"total_commits":2258,"total_committers":339,"mean_commits":6.660766961651918,"dds":0.6133746678476528,"last_synced_commit":"4bc7c9710e99369a8c659f9b865e75866fd7a446"},"previous_names":["bigskysoftware/kutty"],"tags_count":70,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigskysoftware%2Fhtmx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigskysoftware%2Fhtmx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigskysoftware%2Fhtmx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigskysoftware%2Fhtmx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bigskysoftware","download_url":"https://codeload.github.com/bigskysoftware/htmx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253789786,"owners_count":21964747,"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":["hateoas","html","htmx","hyperscript","javascript","rest"],"created_at":"2024-07-30T17:00:58.079Z","updated_at":"2025-05-12T17:45:38.757Z","avatar_url":"https://github.com/bigskysoftware.png","language":"JavaScript","readme":"[![\u003c/\u003e htmx](https://raw.githubusercontent.com/bigskysoftware/htmx/master/www/static/img/htmx_logo.1.png \"high power tools for HTML\")](https://htmx.org)\n\n*high power tools for HTML*\n\n[![Discord](https://img.shields.io/discord/725789699527933952)](https://htmx.org/discord)\n[![Netlify](https://img.shields.io/netlify/dba3fc85-d9c9-476a-a35a-e52a632cef78)](https://app.netlify.com/sites/htmx/deploys)\n[![Bundlephobia](https://badgen.net/bundlephobia/dependency-count/htmx.org)](https://bundlephobia.com/result?p=htmx.org)\n[![Bundlephobia](https://badgen.net/bundlephobia/minzip/htmx.org)](https://bundlephobia.com/result?p=htmx.org)\n\n## introduction\n\nhtmx allows you to access  [AJAX](https://htmx.org/docs#ajax), [CSS Transitions](https://htmx.org/docs#css_transitions),\n[WebSockets](https://htmx.org/docs#websockets) and [Server Sent Events](https://htmx.org/docs#sse)\ndirectly in HTML, using [attributes](https://htmx.org/reference#attributes), so you can build\n[modern user interfaces](https://htmx.org/examples) with the [simplicity](https://en.wikipedia.org/wiki/HATEOAS) and\n[power](https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm) of hypertext\n\nhtmx is small ([~14k min.gz'd](https://unpkg.com/htmx.org/dist/)),\n[dependency-free](https://github.com/bigskysoftware/htmx/blob/master/package.json) \u0026\n[extendable](https://htmx.org/extensions)\n\n## motivation\n\n* Why should only `\u003ca\u003e` and `\u003cform\u003e` be able to make HTTP requests?\n* Why should only `click` \u0026 `submit` events trigger them?\n* Why should only GET \u0026 POST be available?\n* Why should you only be able to replace the *entire* screen?\n\nBy removing these arbitrary constraints htmx completes HTML as a\n[hypertext](https://en.wikipedia.org/wiki/Hypertext)\n\n## quick start\n\n```html\n  \u003cscript src=\"https://unpkg.com/htmx.org@2.0.4\"\u003e\u003c/script\u003e\n  \u003c!-- have a button POST a click via AJAX --\u003e\n  \u003cbutton hx-post=\"/clicked\" hx-swap=\"outerHTML\"\u003e\n    Click Me\n  \u003c/button\u003e\n```\n\nThe [`hx-post`](https://htmx.org/attributes/hx-post) and [`hx-swap`](https://htmx.org/attributes/hx-swap) attributes tell htmx:\n\n\u003e \"When a user clicks on this button, issue an AJAX request to /clicked, and replace the entire button with the response\"\n\nhtmx is the successor to [intercooler.js](http://intercoolerjs.org)\n\n### installing as a node package\n\nTo install using npm:\n\n```\nnpm install htmx.org --save\n```\n\nNote there is an old broken package called `htmx`.  This is `htmx.org`.\n\n## website \u0026 docs\n\n* \u003chttps://htmx.org\u003e\n* \u003chttps://htmx.org/docs\u003e\n\n## contributing\nWant to contribute? Check out our [contribution guidelines](CONTRIBUTING.md)\n\nNo time? Then [become a sponsor](https://github.com/sponsors/bigskysoftware#sponsors)\n\n### hacking guide\n\nTo develop htmx locally, you will need to install the development dependencies.\n\nRun:\n\n```\nnpm install\n```\n\nThen, run a web server in the root.\n\nThis is easiest with:\n\n```\nnpx serve\n```\n\nYou can then run the test suite by navigating to:\n\n\u003chttp://0.0.0.0:3000/test/\u003e\n\nAt this point you can modify `/src/htmx.js` to add features, and then add tests in the appropriate area under `/test`.\n\n* `/test/index.html` - the root test page from which all other tests are included\n* `/test/attributes` - attribute specific tests\n* `/test/core` - core functionality tests\n* `/test/core/regressions.js` - regression tests\n* `/test/ext` - extension tests\n* `/test/manual` - manual tests that cannot be automated\n\nhtmx uses the [mocha](https://mochajs.org/) testing framework, the [chai](https://www.chaijs.com/) assertion framework\nand [sinon](https://sinonjs.org/releases/v9/fake-xhr-and-server/) to mock out AJAX requests.  They are all OK.\n\nYou can also run live tests and demo of the WebSockets and Server-Side Events extensions with `npm run ws-tests`\n\n## haiku\n\n*javascript fatigue:\u003cbr/\u003e\nlonging for a hypertext\u003cbr/\u003e\nalready in hand*\n","funding_links":["https://github.com/sponsors/1cg","https://github.com/sponsors/bigskysoftware"],"categories":["JavaScript","前端开发框架及项目","Official","javascript"],"sub_categories":["其他_文本生成、文本对话"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigskysoftware%2Fhtmx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbigskysoftware%2Fhtmx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigskysoftware%2Fhtmx/lists"}