{"id":13609649,"url":"https://github.com/flamingo-ux/flamingo-android","last_synced_at":"2025-04-12T20:32:18.419Z","repository":{"id":51689731,"uuid":"493247024","full_name":"flamingo-ux/flamingo-android","owner":"flamingo-ux","description":"Android implementation of the Flamingo Design System","archived":false,"fork":false,"pushed_at":"2023-12-07T16:49:53.000Z","size":5462,"stargazers_count":40,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-07T15:46:01.718Z","etag":null,"topics":["android","design-system","jetpack-compose","kotlin","ksp","playground-app"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","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/flamingo-ux.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":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-17T12:44:10.000Z","updated_at":"2024-10-02T04:36:49.000Z","dependencies_parsed_at":"2024-01-16T23:31:06.962Z","dependency_job_id":"62ce6ccf-07be-4658-bd4c-90620f7298ad","html_url":"https://github.com/flamingo-ux/flamingo-android","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flamingo-ux%2Fflamingo-android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flamingo-ux%2Fflamingo-android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flamingo-ux%2Fflamingo-android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flamingo-ux%2Fflamingo-android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flamingo-ux","download_url":"https://codeload.github.com/flamingo-ux/flamingo-android/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248629909,"owners_count":21136342,"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","design-system","jetpack-compose","kotlin","ksp","playground-app"],"created_at":"2024-08-01T19:01:36.765Z","updated_at":"2025-04-12T20:32:13.405Z","avatar_url":"https://github.com/flamingo-ux.png","language":"Kotlin","funding_links":[],"categories":["Kotlin"],"sub_categories":[],"readme":"\u003cimg src=\"images/header.jpg\" width=\"1184\" alt=\"\"\u003e\n\u003cimg src=\"raw/images/header.jpg\" width=\"1184\" alt=\"\"\u003e\n\nIt is an Android implementation of the Flamingo Design System.\n\n## It Consists Of:\n\nUI Components:\n\n![components-gallery.png](images/components-gallery-light.png#gh-light-mode-only)\n![components-gallery.png](images/components-gallery-dark.png#gh-dark-mode-only)\n\nPalette, theme colors, typography, icon set, illustrations and gradients:\n\n![Playground App Collage](images/playground-screens.png)\n\n## Useful links\n\n- [Introductory article on Medium](https://popovanton0.medium.com/building-a-modern-design-system-using-jetpack-compose-8bd8084e8b0c)\n- [Youtube-playlist with Theater videos](https://www.youtube.com/playlist?list=PLGEKQ_tCWabRme1pUVZJLektqXXfDIW2G)\n- [Flamingo space in Confluence](https://confluence.companyname.ru/x/cIMLOwE)\n- [Android section in Confluence space](https://confluence.companyname.ru/x/v4cgegE)\n- [Meetup Q3 2022 (Jetpack Compose)](https://youtu.be/QW6lD5ip9xs)\n- [Meetup Q2 2021 (Android View impl only)](https://youtu.be/oRbQns82FX4)\n\n# Playground App\n\nFlamingo Playground is a demonstration app that contains __live__ (meaning generated using _real_\ncode) demos of various design system components\n(see _[It consists of](https://github.com/flamingo-ux/flamingo-android#It-consists-of)_).\n\nHere you can see a brief demonstration of the design system:\n__[Youtube Videos](https://youtube.com/playlist?list=PLSzrfgGrhXFpKbRy-IA5Ju3sOpbFQa5ZX)__\n\n__[Download](https://github.com/flamingo-ux/flamingo-android/releases)__ Flamingo Playground App\n\n# Getting Started\n\n1. Download `.aar`s of `flamingo` and `flamingo-roboto-font` modules from the \n   [releases](https://github.com/flamingo-ux/flamingo-android/releases) page\n2. Put them in `/project name/libs/` folder\n3. Add this to your module's `build.gradle(.kts)`:\n\n    ```kotlin\n    implementation(files(\"$rootDir/libs/flamingo-LATEST_VERSION.aar\"))\n    implementation(files(\"$rootDir/libs/flamingo-roboto-font-LATEST_VERSION.aar\"))\n    ```\n4. Call `initRobotoTypography()` before the first call to the `FlamingoTheme`\n\n\n\u003cdetails\u003e\u003csummary\u003eIf you are an internal user\u003c/summary\u003e\n\nUse _releases_ page in confluence and use `flamingo-sbsans-font` module instead\n\n\u003c/details\u003e\n\n### Playground\n\nFlamingo Playground is a demonstration app that contains __live__ (meaning generated using _real_\ncode) demos of various design system components\n(see _[It consists of](https://github.com/flamingo-ux/flamingo-android#It-consists-of)_).\n\nIt can be downloaded separately [here](https://github.com/flamingo-ux/flamingo-android/releases).\n\nIn addition, playground contains various debugging developer tools that facilitate painless \nintegration and further support of the design system in __your__ product.\n\nTo be able to use those, add the Flamingo Playground to your app:\n\n1. Download `.aar` of `flamingo-playground` module from the \n   [releases](https://github.com/flamingo-ux/flamingo-android/releases) page\n2. Put it in `/project name/libs/` folder\n3. Add this line in your _staging_ module's `build.gradle.kts`:\n\n    ```kotlin\n    implementation(files(\"$rootDir/libs/flamingo-playground-LATEST_VERSION.aar\"))\n    ```\n\n   \u003cdetails\u003e\u003csummary\u003eIf you are an internal user\u003c/summary\u003e\n\n   Use _releases_ page in confluence\n\n   \u003c/details\u003e\n\n   If your project doesn't have a staging module, use\n   [_build variants_](https://developer.android.com/studio/build/build-variants) (not recommended):\n\n    \u003cdetails\u003e\u003csummary\u003eExample\u003c/summary\u003e\n\n    ```kotlin\n    android {\n        // ...\n        productFlavors {\n            create(\"staging\") {}\n            create(\"production\") {}\n        }\n    }\n    \n    dependencies {\n        // ...\n        stagingImplementation(files(\"$rootDir/libs/flamingo-playground-LATEST_VERSION.aar\"))\n    }\n    ```\n\n    \u003cdetails\u003e\u003csummary\u003eGroovy\u003c/summary\u003e\n\n    ```groovy\n    android {\n        productFlavors {\n            staging {}\n            production {}\n        }\n    }\n    \n    dependencies {\n        // ...\n        stagingImplementation(files(\"$rootDir/libs/flamingo-playground-LATEST_VERSION.aar\"))\n    }\n    ```\n\n    \u003c/details\u003e\n    \u003c/details\u003e\n\n4. Add a button to your app's debug screen that launches `com.flamingo.playground.FlamingoPlaygroundActivity`.\n\n# Modules Graph\n\n```mermaid\ngraph TD;\n\n\n    subgraph staging\n        TRGT_APP_ST(your-app-staging);\n        FL_PG(flamingo-playground);\n        FL_PG_APP(flamingo-playground-app);\n        FL_DEMO_API(flamingo-component-demo-api);\n        TH(theater);\n    end\n    FONT_CHOOSER{\"One of 2 modules. \u003cbr\u003e Needed only in \u003cbr\u003e:app module; in feature\u003cbr\u003emodules — only if fonts\u003cbr\u003ein XML are needed\"};\n    FL(flamingo);\n    FL_ROBOTO(flamingo-roboto-font);\n    FL_SBSANS(\"flamingo-sbsans-font (closed source)\");\n    FL_LT(flamingo-lint);\n    TRGT_APP(your-app-prod);\n    \n    FL -- Includes lint checks --\u003e FL_LT\n    FL_LT -. \"Waits for crab to complete ksp\" .-\u003e FL_PG\n    FL_PG --\u003e FL;\n    FL_PG --\u003e TH;\n    FL_PG --\u003e FL_DEMO_API;\n    FL_PG_APP --\u003e FL_PG;\n    TRGT_APP --\u003e FL;\n    \n    \n    TRGT_APP_ST --\u003e TRGT_APP;\n    TRGT_APP_ST --\u003e FL_PG;\n    TRGT_APP_ST -- Only if you want\u003cbr\u003eto create local UI\u003cbr\u003ecomponent demos --\u003e FL_DEMO_API;\n    TRGT_APP --\u003e FONT_CHOOSER;\n    FONT_CHOOSER --\u003e FL_ROBOTO;\n    FONT_CHOOSER --\u003e FL_SBSANS;\n%%  TRGT_APP_ST --\u003e TRGT_APP;\n\n    click TH \"https://github.com/flamingo-ux/theater\" _blank\n    click FL \"https://github.com/flamingo-ux/flamingo-android/flamingo\" _blank\n    click FL_PG \"https://github.com/flamingo-ux/flamingo-android/flamingo-playground\" _blank\n    click FL_PG_APP \"https://github.com/flamingo-ux/flamingo-android/flamingo-playground-app\" _blank\n    click FL_LT \"https://github.com/flamingo-ux/flamingo-android/flamingo-lint\" _blank\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflamingo-ux%2Fflamingo-android","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflamingo-ux%2Fflamingo-android","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflamingo-ux%2Fflamingo-android/lists"}