{"id":25430466,"url":"https://github.com/chyrta/androidonboarder","last_synced_at":"2025-04-05T03:05:07.230Z","repository":{"id":55781996,"uuid":"55303192","full_name":"chyrta/AndroidOnboarder","owner":"chyrta","description":"A simple way to make a beauty onboarding experience (app intro or welcome screen) for your users.","archived":false,"fork":false,"pushed_at":"2020-12-12T07:13:37.000Z","size":2668,"stargazers_count":268,"open_issues_count":6,"forks_count":57,"subscribers_count":14,"default_branch":"master","last_synced_at":"2024-08-02T17:36:01.321Z","etag":null,"topics":["android","app","gradle","intro","introduction","material","onboarder","onboarding"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chyrta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-04-02T16:00:05.000Z","updated_at":"2024-07-17T23:44:40.000Z","dependencies_parsed_at":"2022-08-15T07:00:57.138Z","dependency_job_id":null,"html_url":"https://github.com/chyrta/AndroidOnboarder","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyrta%2FAndroidOnboarder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyrta%2FAndroidOnboarder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyrta%2FAndroidOnboarder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chyrta%2FAndroidOnboarder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chyrta","download_url":"https://codeload.github.com/chyrta/AndroidOnboarder/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247280262,"owners_count":20912967,"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","app","gradle","intro","introduction","material","onboarder","onboarding"],"created_at":"2025-02-17T03:28:38.459Z","updated_at":"2025-04-05T03:05:07.211Z","avatar_url":"https://github.com/chyrta.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Android Arsenal](https://img.shields.io/badge/Android%20Arsenal-AndroidOnboarder-green.svg?style=true)](https://android-arsenal.com/details/1/3393) ![Maven Badge](https://maven-badges.herokuapp.com/maven-central/com.github.chyrta/AndroidOnboarder/badge.svg) [![CircleCI](https://circleci.com/gh/chyrta/AndroidOnboarder.svg?style=svg)](https://circleci.com/gh/chyrta/AndroidOnboarder)\n\n# Android Onboarder\nAndroid Onboarder is a lightweight library that helps you to create a simple and beautiful welcome screen (as known as App Intro, Onboarding Experience and etc.) for your users.\n\n\u003cimage src=\"https://raw.githubusercontent.com/chyrta/AndroidOnboarder/master/art/demo1.gif\" width=\"250px\"\u003e \u003cimage src=\"https://raw.githubusercontent.com/chyrta/AndroidOnboarder/master/art/demo2.gif\" width=\"250px\"\u003e \u003cimage src=\"https://raw.githubusercontent.com/chyrta/AndroidOnboarder/master/art/demo3.gif\" width=\"250px\"\u003e\n\n## Usage\n\n#### Gradle\n\nAdd dependency in your build.gradle\n\n```groovy\ncompile 'com.github.chyrta:AndroidOnboarder:0.7'\n```\n#### Maven\n\n```\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.github.chyrta\u003c/groupId\u003e\n    \u003cartifactId\u003eAndroidOnboarder\u003c/artifactId\u003e\n    \u003cversion\u003e0.7\u003c/version\u003e\n    \u003ctype\u003epom\u003c/type\u003e\n\u003c/dependency\u003e\n```\n\n#### Implementation\n\nCreate an activity which should inherits from OnboarderActivity. Look at the example below to see how that library works.\n\n```java\n\npublic class IntroActivity extends OnboarderActivity {\n\n  List\u003cOnboarderPage\u003e onboarderPages;\n\n  @Override\n  protected void onCreate(Bundle savedInstanceState) {\n    super.onCreate(savedInstanceState);\n    onboarderPages = new ArrayList\u003cOnboarderPage\u003e();\n\n    // Create your first page\n    OnboarderPage onboarderPage1 = new OnboarderPage(\"Title 1\", \"Description 1\");\n    OnboarderPage onboarderPage2 = new OnboarderPage(R.string.app_title, R.string.app_description, R.drawable.my_awesome_image);\n\n    // You can define title and description colors (by default white)\n    onboarderPage1.setTitleColor(R.color.black);\n    onboarderPage1.setDescriptionColor(R.color.white);\n\n    // Don't forget to set background color for your page\n    onboarderPage1.setBackgroundColor(R.color.my_awesome_color);\n\n    // Add your pages to the list\n    onboarderPages.add(onboarderPage1);\n    onboarderPages.add(onboarderPage2);\n\n    // And pass your pages to 'setOnboardPagesReady' method\n    setOnboardPagesReady(onboarderPages);\n\n  }\n\n  @Override\n  public void onSkipButtonPressed() {\n    // Optional: by default it skips onboarder to the end\n    super.onSkipButtonPressed();\n    // Define your actions when the user press 'Skip' button\n  }\n\n  @Override\n  public void onFinishButtonPressed() {\n    // Define your actions when the user press 'Finish' button\n  }\n\n}\n```\n\n#### Tips\n\nRemember that you can (Inside your Activity that extends ```OnboarderActivity```):\n- Change dot's colors (active and inactive)\n- Darken the layout where buttons are placed\n- Change divider color, height (in dp) and visibility\n- Choose to use ```FloatingActionButton``` or not\n- Set text size of title and description\n- Force multiline description to be centered\n- Set title to skip and finish buttons\n- Hide skip button from the user\n\n```java\n\nsetActiveIndicatorColor(android.R.color.white);\nsetInactiveIndicatorColor(android.R.color.darker_gray);\nshouldDarkenButtonsLayout(true);\nsetDividerColor(Color.WHITE);\nsetDividerHeight(2);\nsetDividerVisibility(View.GONE);\nshouldUseFloatingActionButton(true);\nsetSkipButtonTitle(\"Skip\");\nsetFinishButton(\"Finish\");\nsetSkipButtonHidden();\nsetTitleTextSize(12);\nsetDescriptionTextSize(12);\nsetMultilineDescriptionCentered(true);\n```\n\n\n## Contributions\n\nFeel free to create issues and pull requests\n\n## License\n\n```\nMIT License\n\nCopyright (c) 2017 Dzmitry Chyrta, Daniel Morales\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchyrta%2Fandroidonboarder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchyrta%2Fandroidonboarder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchyrta%2Fandroidonboarder/lists"}