{"id":13789662,"url":"https://github.com/amrdeveloper/ReactButton","last_synced_at":"2025-05-12T07:30:53.161Z","repository":{"id":49959827,"uuid":"120108786","full_name":"AmrDeveloper/ReactButton","owner":"AmrDeveloper","description":"Android Library to make it easy to add ReactButton feature in your app with Multi Reactions like Facebook or Linkedin, you can add many reactions as you want, you can also split them into a number of columns, and also customize the colours and text for each reaction","archived":false,"fork":false,"pushed_at":"2023-05-25T18:18:48.000Z","size":1587,"stargazers_count":111,"open_issues_count":3,"forks_count":25,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-05-08T10:53:26.355Z","etag":null,"topics":["android","android-library","android-ui","emoji","facebook-reactions","hacktoberfest","java","kotlin","multi-reactions","reactions"],"latest_commit_sha":null,"homepage":"","language":"Java","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/AmrDeveloper.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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}},"created_at":"2018-02-03T16:34:23.000Z","updated_at":"2025-05-06T22:28:41.000Z","dependencies_parsed_at":"2024-05-03T15:36:44.459Z","dependency_job_id":null,"html_url":"https://github.com/AmrDeveloper/ReactButton","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmrDeveloper%2FReactButton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmrDeveloper%2FReactButton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmrDeveloper%2FReactButton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmrDeveloper%2FReactButton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AmrDeveloper","download_url":"https://codeload.github.com/AmrDeveloper/ReactButton/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253695034,"owners_count":21948803,"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":["android","android-library","android-ui","emoji","facebook-reactions","hacktoberfest","java","kotlin","multi-reactions","reactions"],"created_at":"2024-08-03T22:00:31.384Z","updated_at":"2025-05-12T07:30:52.743Z","avatar_url":"https://github.com/AmrDeveloper.png","language":"Java","readme":"# ReactButton\n\u003ch1 align=\"center\"\u003eReactButton\u003c/h1\u003e\u003c/br\u003e\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"media/rb-logo.svg\" width=\"20%\" height=\"20%\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\nAndroid Library to make it easy to add ReactButton feature in your app with Multi Reactions like Facebook or Linkedin ...etc,\nyou can add many reactions as you want, you can also split them into number of columns, and also customize the colors and text for each reactions\n\u003c/p\u003e\n\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/3d0f3616d9f544849b2b3190412833ab)](https://app.codacy.com/gh/AmrDeveloper/ReactButton?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=AmrDeveloper/ReactButton\u0026utm_campaign=Badge_Grade_Settings)\n[![CodeFactor](https://www.codefactor.io/repository/github/amrdeveloper/reactbutton/badge)](https://www.codefactor.io/repository/github/amrdeveloper/reactbutton)\n![Build](https://github.com/amrdeveloper/reactbutton/actions/workflows/build.yml/badge.svg)\n![Min API](https://img.shields.io/badge/Api-%2B15-red.svg)\n![Stars](https://img.shields.io/github/stars/AmrDeveloper/ReactButton.svg)\n![Forks](https://img.shields.io/github/forks/AmrDeveloper/ReactButton.svg)\n![License](https://img.shields.io/github/license/AmrDeveloper/ReactButton.svg)\n[![](https://jitpack.io/v/AmrDeveloper/ReactButton.svg)](https://jitpack.io/#AmrDeveloper/ReactButton)\n![Maven Central](https://img.shields.io/maven-central/v/io.github.amrdeveloper/reactbutton?color=green)\n\n##### Note\n\u003e From version 2.0.0 and above the library will release without default icons to reduce the size and if you want the facebook reactions you can copy them from the example app [here](https://github.com/AmrDeveloper/ReactButton/tree/master/app)\n\n#### Demo :smile:\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"/media/facebook_reacts_demo.gif\" height=\"350px\" width=\"19%\"\u003e \u003cimg src=\"/media/dc_reacts_demo.gif\" height=\"350px\" width=\"19%\"\u003e \u003cimg src=\"/media/facebook_reacts_portal.png\" height=\"350px\" width=\"19%\"\u003e \u003cimg src=\"/media/facebook_reacts_2c.png\" height=\"350px\" width=\"19%\"\u003e \u003cimg src=\"/media/facebook_reacts_3c.png\" height=\"350px\" width=\"19%\"\u003e\n\u003c/p\u003e\n  \n\u003cp align=\"center\"\u003e\n\u003cimg src=\"/media/facebook_reacts_landscape.png\" height=\"260px\"\u003e\n\u003c/p\u003e\n\n#### Documentation:\n\nAdd ReactButton To Your Current Project:\n\nFrom Maven Central\n```gradle\nimplementation 'io.github.amrdeveloper:reactbutton:2.1.0'\n```\n\u003cdetails\u003e\n  \u003csummary\u003eOr Add ReactButton from Jitpack.io\u003c/summary\u003e\n  \n  Add it in your root build.gradle at the end of repositories\n  \n  ```gradle\n  allprojects {\n      repositories {\n           maven { url 'https://jitpack.io' }\n      }\n  }\n```\n             \n  Add the dependency      \n\n  ```gradle\n  implementation 'com.github.AmrDeveloper:ReactButton:2.1.0'\n  ```\n\u003c/details\u003e\n\nHow To Initializing ReactButton:\n\n```java\nReactButton reactButton = findViewById(R.id.buttonId);\n```\n\nSet your Reactions:\n\n```java\nreactButton.setReactions(Reaction... reaction);\n```\n\nAdd new Reactions to the reactions list:\n\n```java\nreactButton.addReactions(Reaction... reaction);\n```\n\nSet Current Reaction:\n\n```java\nreactButton.setCurrentReaction(Reaction reaction);\n```\n\nGet Current Reaction:\n\n```java\nReaction currentReaction = reactButton.getCurrentReaction();\n```\n\nSet Default Reaction:\n\n```java\nreactButton.setDefaultReaction(Reaction reaction);\n```\n\nGet Default Reaction:\n\n```java\nReaction currentReaction = reactButton.getDefaultReaction();\n```\n\nChange Reaction dialog default Style:\n```java\nreactButton.setReactDialogShape(int styleID);\n``` \n\nChange the reactions dialog default gravity, make sure you have disabled the dynamic position\n```java\nreactButton.setReactionDialogGravity(newGravity);\n```\n\nEnable/Disable the reactions dialog dynamic position\n```java\nreactButton.enableDialogDynamicPosition(isEnabled);\n```\n\nChange the number of reactions in the Columns, the default value is all reactions size\n```java\nreactButton.setDialogColumnsNumber(n);\n```\n\nSet the dim amount for the reactions dialog from 0 for no dim to 1 for full dim, the default value is 0\n```java\nreactButton.setDimAmount(dim);\n```\n\nChange tooltip background shape\n```java\nreactButton.setReactionTooltipShape(R.drawable.shape);\n```\n\nChange tooltip text color\n```java\nreactButton.setReactionTooltipTextColor(Color.BLACK);\n```\n\nChange offset between the reaction icon and the tooltip text\n```java\nreactButton.setTooltipOffsetFromReaction(100);\n```\n\nEnable or Disable the Reaction tooltip feature\n```java\nreactButton.setEnableReactionTooltip(true);\n```\n\nSet setOnReactionChangeListener:\n\n```java\nreactButton.setOnReactionChangeListener(new ReactButton.OnReactionChangeListener() {\n    @Override\n    public void onReactionChange(Reaction reaction) {\n        // Code that will execute when the reaction changed\n    }\n});\n ```\n\nSet OnReactionDialogStateListener:\n\n```java\nreactButton.setOnReactionDialogStateListener(new ReactButton.OnReactionDialogStateListener() {\n    @Override\n    public void onDialogOpened() {\n        // Code that will execute when the reaction dialog is opened\n    }\n\n    @Override\n    public void onDialogDismiss() {\n        // Code that will execute after the reaction dialog is dismissed\n    }\n});\n```\n\nCheck if current Reaction is Default Reaction:\n```java\nboolean isDefault = reactButton.isDefaultReaction();\n``` \n\n##### For full example please check the example app [here](https://github.com/AmrDeveloper/ReactButton/tree/master/app)\n","funding_links":[],"categories":["Index"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famrdeveloper%2FReactButton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famrdeveloper%2FReactButton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famrdeveloper%2FReactButton/lists"}