{"id":13878591,"url":"https://github.com/pboling/gitmoji-regex","last_synced_at":"2025-08-02T06:09:27.979Z","repository":{"id":39588672,"uuid":"475001213","full_name":"pboling/gitmoji-regex","owner":"pboling","description":"🔥 A regular expression matching Gitmoji (a subset of Unicode Emoji) symbols","archived":false,"fork":false,"pushed_at":"2023-06-01T18:01:41.000Z","size":107,"stargazers_count":7,"open_issues_count":1,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-05T13:24:01.196Z","etag":null,"topics":["gitmoji","regex-pattern"],"latest_commit_sha":null,"homepage":"https://gitmoji.dev/related-tools","language":"Ruby","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/pboling.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null},"funding":{"github":["pboling"],"patreon":"galtzo","ko_fi":"pboling","liberapay":"pboling","issuehunt":"pboling"}},"created_at":"2022-03-28T12:54:18.000Z","updated_at":"2024-08-19T23:20:40.000Z","dependencies_parsed_at":"2024-01-13T20:23:30.456Z","dependency_job_id":"e1f0aed6-10a6-4a45-a1d4-1606576721ea","html_url":"https://github.com/pboling/gitmoji-regex","commit_stats":{"total_commits":36,"total_committers":1,"mean_commits":36.0,"dds":0.0,"last_synced_commit":"300861116388036eb066c3c31e089b73826fd2b3"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/pboling/gitmoji-regex","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pboling%2Fgitmoji-regex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pboling%2Fgitmoji-regex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pboling%2Fgitmoji-regex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pboling%2Fgitmoji-regex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pboling","download_url":"https://codeload.github.com/pboling/gitmoji-regex/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pboling%2Fgitmoji-regex/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268340194,"owners_count":24234680,"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","status":"online","status_checked_at":"2025-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["gitmoji","regex-pattern"],"created_at":"2024-08-06T08:01:54.117Z","updated_at":"2025-08-02T06:09:27.944Z","avatar_url":"https://github.com/pboling.png","language":"Ruby","readme":"\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://gitmoji.dev/\" target=\"_blank\" rel=\"noopener\"\u003e\n      \u003cimg width=\"120px\" src=\"https://github.com/pboling/gitmoji-regex/raw/main/docs/images/logo/gitmoji-logo-120px.png?raw=true\" alt=\"Gotmoji Logo Copyright (c) 2016-2022 Carlos Cuesta, MIT License\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://rubular.com/\" target=\"_blank\" rel=\"noopener\"\u003e\n      \u003cimg width=\"120px\" src=\"https://github.com/pboling/gitmoji-regex/raw/main/docs/images/logo/regex-logo-120px.png?raw=true\" alt=\"Regular Expression OOjs UI Icon by GOJU, MIT License via Wikimedia Commons\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://www.ruby-lang.org/\" target=\"_blank\" rel=\"noopener\"\u003e\n      \u003cimg width=\"120px\" src=\"https://github.com/pboling/gitmoji-regex/raw/main/docs/images/logo/ruby-logo-198px.svg?raw=true\" alt=\"Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n# Gitmoji::Regex\n\nThis gem provides a regex that allows Ruby code to test a string for a [Gitmoji](https://github.com/carloscuesta/gitmoji) character.  Gitmoji is a [subset](https://raw.githubusercontent.com/carloscuesta/gitmoji/master/src/data/gitmojis.json) of the Unicode Emoji character set.  This gem is _not_ a fork of, but was **inspired** by, the wonderful [emoji_regex](https://github.com/ticky/ruby-emoji-regex) gem.\n\n\u003c!--\nNumbering rows and badges in each row as a visual \"database\" lookup,\n    as the table is extremely dense, and it can be very difficult to find anything\nPutting one on each row here, to document the emoji that should be used, and for ease of copy/paste.\n\nrow #s:\n1️⃣\n2️⃣\n3️⃣\n4️⃣\n5️⃣\n6️⃣\n7️⃣\n\nbadge #s:\n⛳️\n🖇\n🏘\n🚎\n🖐\n🧮\n📗\n\nappended indicators:\n♻️ - URL needs to be updated from SAAS integration. Find / Replace is insufficient.\n--\u003e\n\n|     | Project                        | bundle add gitmoji-regex                                                                                                                                                                                                                                                                                                  |\n|:----|--------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| 1️⃣ | name, license, docs, standards | [![RubyGems.org][⛳️name-img]][⛳️gem] [![License: MIT][🖇src-license-img]][🖇src-license] \u003c!--[![FOSSA][🏘fossa-img]][🏘fossa]--\u003e [![RubyDoc.info][🚎yard-img]][🚎yard] [![GitMoji][🖐gitmoji-img]][🖐gitmoji] [![SemVer 2.0.0][🧮semver-img]][semver] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] |\n| 2️⃣ | version \u0026 activity             | [![Gem Version][⛳️version-img]][⛳️gem] [![Total Downloads][🖇DL-total-img]][⛳️gem] [![Download Rank][🏘DL-rank-img]][⛳️gem] [![Source Code][🚎src-home-img]][🚎src-home] [![Open PRs][🖐prs-o-img]][🖐prs-o] [![Closed PRs][🧮prs-c-img]][🧮prs-c] \u003c!--[![Next Version][📗next-img]][📗next]--\u003e                           |\n| 3️⃣ | maintenance \u0026 linting          | [![Maintainability][⛳cclim-maint-img♻️]][⛳cclim-maint] [![Helpers][🖇triage-help-img]][🖇triage-help] [![Depfu][🏘depfu-img♻️]][🏘depfu♻️] [![Contributors][🚎contributors-img]][🚎contributors] [![Style][🖐style-wf-img]][🖐style-wf] [![Kloc Roll][🧮kloc-img]][🧮kloc]                                                |\n| 4️⃣ | testing                        | [![Open Issues][⛳iss-o-img]][⛳iss-o] [![Closed Issues][🖇iss-c-img]][🖇iss-c] [![Supported][🏘sup-wf-img]][🏘sup-wf] [![Heads][🚎heads-wf-img]][🚎heads-wf]                                                                                                                                                               |\n| 5️⃣ | coverage \u0026 security            | [![CodeClimate][⛳cclim-cov-img♻️]][⛳cclim-cov] [![CodeCov][🖇codecov-img♻️]][🖇codecov] [![Coveralls][🏘coveralls-img]][🏘coveralls] [![Security Policy][🚎sec-pol-img]][🚎sec-pol] [![CodeQL][🖐codeQL-img]][🖐codeQL] [![Code Coverage][🧮cov-wf-img]][🧮cov-wf]                                                        |\n| 6️⃣ | resources                      | [![Discussion][⛳gh-discussions-img]][⛳gh-discussions] [![Get help on Codementor][🖇codementor-img]][🖇codementor] [![Chat][🏘chat-img]][🏘chat] [![Blog][🚎blog-img]][🚎blog] [![Wiki][🖐wiki-img]][🖐wiki]                                                                                                               |\n| 7️⃣ | spread 💖                      | [![Liberapay Patrons][⛳liberapay-img]][⛳liberapay] [![Sponsor Me][🖇sponsor-img]][🖇sponsor] [![Tweet @ Peter][🏘tweet-img]][🏘tweet] [🌏][aboutme] [👼][angelme]                                                                                                                                                         |\n\n\u003c!--\nThe link tokens in the following sections should be kept ordered by the row and badge numbering scheme\n--\u003e\n\n\u003c!-- 1️⃣ name, license, docs --\u003e\n[⛳️gem]: https://rubygems.org/gems/gitmoji-regex\n[⛳️name-img]: https://img.shields.io/badge/name-gitmoji--regex-brightgreen.svg?style=flat\n[🖇src-license]: https://opensource.org/licenses/MIT\n[🖇src-license-img]: https://img.shields.io/badge/License-MIT-green.svg\n[🏘fossa]: https://app.fossa.io/projects/git%2Bgithub.com%2Fpboling%2Fgitmoji-regex?ref=badge_shield\n[🏘fossa-img]: https://app.fossa.io/api/projects/git%2Bgithub.com%2Fpboling%2Fgitmoji-regex.svg?type=shield\n[🚎yard]: https://www.rubydoc.info/github/pboling/gitmoji-regex\n[🚎yard-img]: https://img.shields.io/badge/documentation-rubydoc-brightgreen.svg?style=flat\n[🖐gitmoji]: https://gitmoji.dev\n[🖐gitmoji-img]: https://img.shields.io/badge/gitmoji-3.9.0-FFDD67.svg?style=flat\n[🧮semver-img]: https://img.shields.io/badge/semver-2.0.0-FFDD67.svg?style=flat\n[📗keep-changelog]: https://keepachangelog.com/en/1.0.0/\n[📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-FFDD67.svg?style=flat\n\n\u003c!-- 2️⃣ version \u0026 activity --\u003e\n[⛳️version-img]: http://img.shields.io/gem/v/gitmoji-regex.svg\n[🖇DL-total-img]: https://img.shields.io/gem/dt/gitmoji-regex.svg\n[🏘DL-rank-img]: https://img.shields.io/gem/rt/gitmoji-regex.svg\n[🚎src-home]: https://github.com/pboling/gitmoji-regex\n[🚎src-home-img]: https://img.shields.io/badge/source-github-brightgreen.svg?style=flat\n[🖐prs-o]: https://github.com/pboling/gitmoji-regex/pulls\n[🖐prs-o-img]: https://img.shields.io/github/issues-pr/pboling/gitmoji-regex\n[🧮prs-c]: https://github.com/pboling/gitmoji-regex/pulls?q=is%3Apr+is%3Aclosed\n[🧮prs-c-img]: https://img.shields.io/github/issues-pr-closed/pboling/gitmoji-regex\n[📗next]: https://github.com/pboling/gitmoji-regex/milestone/1\n[📗next-img]: https://img.shields.io/github/milestones/progress/pboling/gitmoji-regex/1?label=Next%20Version\n\n\u003c!-- 3️⃣ maintenance \u0026 linting --\u003e\n[⛳cclim-maint]: https://codeclimate.com/github/pboling/gitmoji-regex/maintainability\n[⛳cclim-maint-img♻️]: https://api.codeclimate.com/v1/badges/f32e1d1148e8bad58197/maintainability\n[🖇triage-help]: https://www.codetriage.com/pboling/gitmoji-regex\n[🖇triage-help-img]: https://www.codetriage.com/pboling/gitmoji-regex/badges/users.svg\n[🏘depfu♻️]: https://depfu.com/github/pboling/gitmoji-regex?project_id=34924\n[🏘depfu-img♻️]: https://badges.depfu.com/badges/300630ab4b7c2efea20806d13d1ef41f/count.svg\n[🚎contributors]: https://github.com/pboling/gitmoji-regex/graphs/contributors\n[🚎contributors-img]: https://img.shields.io/github/contributors-anon/pboling/gitmoji-regex\n[🖐style-wf]: https://github.com/pboling/gitmoji-regex/actions/workflows/style.yml\n[🖐style-wf-img]: https://github.com/pboling/gitmoji-regex/actions/workflows/style.yml/badge.svg\n[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ\n[🧮kloc-img]: https://img.shields.io/tokei/lines/github.com/pboling/gitmoji-regex\n\n\u003c!-- 4️⃣ testing --\u003e\n[⛳iss-o]: https://github.com/pboling/gitmoji-regex/issues\n[⛳iss-o-img]: https://img.shields.io/github/issues-raw/pboling/gitmoji-regex\n[🖇iss-c]: https://github.com/pboling/gitmoji-regex/issues?q=is%3Aissue+is%3Aclosed\n[🖇iss-c-img]: https://img.shields.io/github/issues-closed-raw/pboling/gitmoji-regex\n[🏘sup-wf]: https://github.com/pboling/gitmoji-regex/actions/workflows/supported.yml\n[🏘sup-wf-img]: https://github.com/pboling/gitmoji-regex/actions/workflows/supported.yml/badge.svg\n[🚎heads-wf]: https://github.com/pboling/gitmoji-regex/actions/workflows/heads.yml\n[🚎heads-wf-img]: https://github.com/pboling/gitmoji-regex/actions/workflows/heads.yml/badge.svg\n[🧮mac-wf]: https://github.com/pboling/gitmoji-regex/actions/workflows/macos.yml\n[🧮mac-wf-img]: https://github.com/pboling/gitmoji-regex/actions/workflows/macos.yml/badge.svg\n[📗win-wf]: https://github.com/pboling/gitmoji-regex/actions/workflows/windows.yml\n[📗win-wf-img]: https://github.com/pboling/gitmoji-regex/actions/workflows/windows.yml/badge.svg\n\n\u003c!-- 5️⃣ coverage \u0026 security --\u003e\n[⛳cclim-cov]: https://codeclimate.com/github/pboling/gitmoji-regex/test_coverage\n[⛳cclim-cov-img♻️]: https://api.codeclimate.com/v1/badges/f32e1d1148e8bad58197/test_coverage\n[🖇codecov-img♻️]: https://codecov.io/gh/pboling/gitmoji-regex/branch/main/graph/badge.svg?token=EJCOr0hsPq\n[🖇codecov]: https://codecov.io/gh/pboling/gitmoji-regex\n[🏘coveralls]: https://coveralls.io/github/pboling/gitmoji-regex?branch=main\n[🏘coveralls-img]: https://coveralls.io/repos/github/pboling/gitmoji-regex/badge.svg?branch=main\n[🚎sec-pol]: https://github.com/pboling/gitmoji-regex/blob/main/SECURITY.md\n[🚎sec-pol-img]: https://img.shields.io/badge/security-policy-brightgreen.svg?style=flat\n[🖐codeQL]: https://github.com/pboling/gitmoji-regex/security/code-scanning\n[🖐codeQL-img]: https://github.com/pboling/gitmoji-regex/actions/workflows/codeql-analysis.yml/badge.svg\n[🧮cov-wf]: https://github.com/pboling/gitmoji-regex/actions/workflows/coverage.yml\n[🧮cov-wf-img]: https://github.com/pboling/gitmoji-regex/actions/workflows/coverage.yml/badge.svg\n\n\u003c!-- 6️⃣ resources --\u003e\n[⛳gh-discussions]: https://github.com/pboling/gitmoji-regex/discussions\n[⛳gh-discussions-img]: https://img.shields.io/github/discussions/pboling/gitmoji-regex\n[🖇codementor]: https://www.codementor.io/peterboling?utm_source=github\u0026utm_medium=button\u0026utm_term=peterboling\u0026utm_campaign=github\n[🖇codementor-img]: https://cdn.codementor.io/badges/get_help_github.svg\n[🏘chat]: https://gitter.im/pboling/gitmoji-regex\n[🏘chat-img]: https://img.shields.io/gitter/room/pboling/gitmoji-regex.svg\n[🚎blog]: http://www.railsbling.com/tags/gitmoji-regex/\n[🚎blog-img]: https://img.shields.io/badge/blog-railsbling-brightgreen.svg?style=flat\n[🖐wiki]: https://github.com/pboling/gitmoji-regex/wiki\n[🖐wiki-img]: https://img.shields.io/badge/wiki-examples-brightgreen.svg?style=flat\n\n\u003c!-- 7️⃣ spread 💖 --\u003e\n[⛳liberapay-img]: https://img.shields.io/liberapay/patrons/pboling.svg?logo=liberapay\n[⛳liberapay]: https://liberapay.com/pboling/donate\n[🖇sponsor-img]: https://img.shields.io/badge/sponsor-pboling.svg?style=social\u0026logo=github\n[🖇sponsor]: https://github.com/sponsors/pboling\n[🏘tweet-img]: https://img.shields.io/twitter/follow/galtzo.svg?style=social\u0026label=Follow\n[🏘tweet]: http://twitter.com/galtzo\n\n## Installation\n\nInstall the gem and add to the application's Gemfile by executing:\n\n    $ bundle add gitmoji-regex\n\nIf bundler is not being used to manage dependencies, install the gem by executing:\n\n    $ gem install gitmoji-regex\n\n## Usage\n\n```ruby\n\"🔥\" =~ Gitmoji::Regex::REGEX\n# =\u003e 0 # character at position 0 is a Gitmoji!\n\"fire\" =~ Gitmoji::Regex::REGEX\n# =\u003e nil\n```\n\n## Development\n\nAfter checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.\n\nTo install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).\n\nTo update the cached `src/gitmojis.json` load the console with `bin/console`, and run:\n```ruby\nGitmoji::Regex::Reference.instance.write_json\n```\n\n## Contributing\n\nSee [CONTRIBUTING.md][contributing]\n\n## Contributors\n\n[![Contributors](https://contrib.rocks/image?repo=pboling/gitmoji-regex)](\"https://github.com/pboling/gitmoji-regex/graphs/contributors\")\n\nMade with [contributors-img](https://contrib.rocks).\n\n## License\n\nThe gem is available as open source under the terms of\nthe [MIT License][license] [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)][license-ref].\nSee [LICENSE][license] for the official [Copyright Notice][copyright-notice-explainer].\n\n* Copyright (c) 2022 [Peter H. Boling][peterboling] of [Rails Bling][railsbling]\n\nNOTE: the [gitmoji project](https://github.com/carloscuesta/gitmoji) is also [MIT Licensed](https://github.com/carloscuesta/gitmoji/blob/master/LICENSE), and the file `src/gitmojis.json` comes from that project.\n\n## Code of Conduct\n\nEveryone interacting in the Gitmoji::Regex project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct][conduct].\n\n## Versioning\n\nThis library aims to adhere to [Semantic Versioning 2.0.0][semver]. Violations of this scheme should be reported as\nbugs. Specifically, if a minor or patch version is released that breaks backward compatibility, a new version should be\nimmediately released that restores compatibility. Breaking changes to the public API will only be introduced with new\nmajor versions.\n\nAs a result of this policy, you can (and should) specify a dependency on this gem using\nthe [Pessimistic Version Constraint][pvc] with two digits of precision.\n\nFor example:\n\n```ruby\nspec.add_dependency \"gitmoji-regex\", \"~\u003e 1.0\"\n```\n\n## Security\n\nSee [SECURITY.md][security].\n\n[aboutme]: https://about.me/peter.boling\n[actions]: https://github.com/pboling/gitmoji-regex/actions\n[angelme]: https://angel.co/peter-boling\n[blogpage]: http://www.railsbling.com/tags/gitmoji-regex/\n[codecov_coverage]: https://codecov.io/gh/pboling/gitmoji-regex\n[code_triage]: https://www.codetriage.com/pboling/gitmoji-regex\n[chat]: https://gitter.im/pboling/gitmoji-regex?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge\n[climate_coverage]: https://codeclimate.com/github/pboling/gitmoji-regex/test_coverage\n[climate_maintainability]: https://codeclimate.com/github/pboling/gitmoji-regex/maintainability\n[copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year\n[conduct]: https://gitlab.com/pboling/gitmoji-regex/-/blob/main/CODE_OF_CONDUCT.md\n[contributing]: https://gitlab.com/pboling/gitmoji-regex/-/blob/main/CONTRIBUTING.md\n[devto]: https://dev.to/galtzo\n[documentation]: https://rubydoc.info/github/pboling/gitmoji-regex/main\n[followme]: https://img.shields.io/twitter/follow/galtzo.svg?style=social\u0026label=Follow\n[gh_discussions]: https://github.com/pboling/gitmoji-regex/discussions\n[gh_sponsors]: https://github.com/sponsors/pboling\n[issues]: https://github.com/pboling/gitmoji-regex/issues\n[liberapay_donate]: https://liberapay.com/pboling/donate\n[license]: LICENSE.txt\n[license-ref]: https://opensource.org/licenses/MIT\n[license-img]: https://img.shields.io/badge/License-MIT-green.svg\n[peterboling]: http://www.peterboling.com\n[pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint\n[railsbling]: http://www.railsbling.com\n[rubygems]: https://rubygems.org/gems/gitmoji-regex\n[security]: https://github.com/pboling/gitmoji-regex/blob/main/SECURITY.md\n[semver]: http://semver.org/\n[source]: https://github.com/pboling/gitmoji-regex/\n[tweetme]: http://twitter.com/galtzo\n","funding_links":["https://github.com/sponsors/pboling","https://patreon.com/galtzo","https://ko-fi.com/pboling","https://liberapay.com/pboling","https://issuehunt.io/r/pboling","https://liberapay.com/pboling/donate"],"categories":["Ruby"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpboling%2Fgitmoji-regex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpboling%2Fgitmoji-regex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpboling%2Fgitmoji-regex/lists"}