{"id":26893342,"url":"https://github.com/hexydec/dabby","last_synced_at":"2025-05-12T15:43:58.619Z","repository":{"id":37602675,"uuid":"110755195","full_name":"hexydec/dabby","owner":"hexydec","description":"A lightweight modular jQuery clone library built for modern browsers","archived":false,"fork":false,"pushed_at":"2025-04-23T20:07:07.000Z","size":2831,"stargazers_count":17,"open_issues_count":2,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-10T08:44:37.215Z","etag":null,"topics":["clone","jquery","jquery-api","library","lightweight","modern-browsers","modular"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/hexydec.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":"docs/support.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-14T23:05:00.000Z","updated_at":"2025-04-23T20:07:11.000Z","dependencies_parsed_at":"2023-02-14T00:00:42.762Z","dependency_job_id":"d73cb8f0-dd6e-4e85-ac1b-6e419ba67b16","html_url":"https://github.com/hexydec/dabby","commit_stats":{"total_commits":296,"total_committers":5,"mean_commits":59.2,"dds":0.09797297297297303,"last_synced_commit":"0eed0f6e2a28905966be434b7535ed047bc1ca63"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hexydec%2Fdabby","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hexydec%2Fdabby/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hexydec%2Fdabby/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hexydec%2Fdabby/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hexydec","download_url":"https://codeload.github.com/hexydec/dabby/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253767423,"owners_count":21961107,"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":["clone","jquery","jquery-api","library","lightweight","modern-browsers","modular"],"created_at":"2025-03-31T23:46:34.416Z","updated_at":"2025-05-12T15:43:58.591Z","avatar_url":"https://github.com/hexydec.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dabby.js: Lightweight Modular ES6 jQuery clone\n\nA lightweight modular jQuery clone/alternative library built for modern browsers in ES6.\n\n![Licence](https://img.shields.io/badge/Licence-MIT-lightgrey.svg)\n![Project Status](https://img.shields.io/badge/Project%20Status-Beta-yellow.svg)\n![Size Minified](https://img.shields.io/badge/Size%20(Minified)-17.8kb-brightgreen.svg)\n![Size Gzipped](https://img.shields.io/badge/Size%20(Gzipped)-6.57kb-brightgreen.svg)\n\n**This project is now in beta, make sure to test your integration with this code thoroughly before deploying**\n\n## jQuery is awesome, why do I need this?\n\njQuery is a great library, the API is simple yet expressive, but with advancements in browser technology often the full functionality of jQuery is not needed, and there is not really a granular way to remove the bits you aren't using.\n\nWouldn't it be good to have a simpler jQuery like library that is modular?\n\nDabby.js is a jQuery alternative designed to be as simple and streamlined as possible whilst covering as much of the jQuery API as much as is feasibly possible in a small size (\u003c10kb minified and Gzipped), you can also build it as part of your project and only include the bits you are actually using.\n\n[Find out more about the project here.](docs/about.md)\n\n## I'm sold, how do I get started?\n\nWant to get started quickly? [Download the latest release here](https://github.com/hexydec/dabby/releases).\n\nWant to build the bundle yourself? Make sure the following software is installed:\n\n- Git\n- [NodeJS](http://nodejs.org/)\n- [GruntJS](http://gruntjs.com/)\n\nClone the repository, and build it:\n\n```\n$ git clone https://github.com/hexydec/dabby\n$ cd dabby\n$ npm install\n$ grunt\n```\n\nThen swap jQuery out for dabby.js in your project. It does support AMD modules and CommonJS, so if your project does too, have a fiddle with your build to achieve this.\n\nNext you should probably audit and refactor your code to update anything that Dabby.js will definitely not support, like custom pseudo selectors. Ajax calls will probably need checking over too (Promises are not supported).\n\nThen run it in the browser, or through your test suite to highlight any other issues.\n\nDabby.js compiles to both ES6 and ES5 bundles, to support all browsers, include Dabby.js like this:\n\n```html\n\u003cscript src=\"dist/dabby.es5.js\" nomodule\u003e\u003c/script\u003e\n\u003cscript src=\"yourfile.es5.js\" nomodule\u003e\u003c/script\u003e\n\u003cscript src=\"yourfile.js\" type=\"module\"\u003e\u003c/script\u003e // include dist/dabby.js or dist/dabby.min.js in your ES6 file.\n```\n\n## Browser Support\n\n[Browser support for Dabby.js can be found here](docs/support.md):\n\n## Dabby.js API\n\nDabby.js is billed as a jQuery clone library, and as such tries to implement as much of the jQuery API as is feasible without getting away from being fast, small, and letting the browser do most of the work.\n\n[See the API documentation here](src/).\n\n## Custom Builds\n\nAs Dabby.js is built in ES6, you can include just the parts you need in your project (If you are using ES6 modules). Include the core library like this, methods are imported without a variable:\n\n```javascript\nimport $ from \"/src/core/dabby/dabby.js\"; // update to reference where you have the project stored\nimport \"/src/attributes/attr/attr.js\"; // if you need to create elements with attributes like $(\"\u003celement\u003e\", {some: \"attributes\"}), include this\nimport \"/src/traversal/filter/filter.js\"; // I need $.fn.is(), which is written with $.fn.filter() and $.fn.not()\n```\n\nYou can either do this in each module you need dabby.js in, or build a file that imports all the methods you need for your project, and include that somewhere.\n\n## Troubleshooting\n\nYou can always swap dabby.js out for jQuery to see if the issue is with your code or dabby.js. It is a very young library which hasn't been tested as much as jQuery, so expect bugs. But this library is being used in production of most of my own websites.\n\nIf the issue still persists, you can create an issue for it in the tracker.\n\n## Contributing\n\nIf you find an issue with dabby.js, please create an issue in the tracker, fork the code, fix the issue, then create a pull request, and I will evaluate your submission.\n\nAlso look at the [To Do list](docs/todo.md) and the [coding style guide](docs/codestyle.md).\n\n## Licence\n\nThe MIT License (MIT). Please see [License File](LICENCE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhexydec%2Fdabby","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhexydec%2Fdabby","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhexydec%2Fdabby/lists"}