[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-7526":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":20,"hasPages":22,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":28,"readmeContent":29,"aiSummary":30,"trendingCount":16,"starSnapshotCount":16,"syncStatus":31,"lastSyncTime":32,"discoverSource":33},7526,"cascade","saket\u002Fcascade","saket","Nested popup menus with smooth height animations for Android","https:\u002F\u002Fsaket.github.io\u002Fcascade\u002F",null,"Kotlin",2104,71,30,12,0,4,57.97,"Apache License 2.0",false,"trunk",true,[24,25,26,27],"android","jetpack-compose","menu","popup","2026-06-12 04:00:34","# cascade\n\n![demo](demo.gif)\n\n`cascade` builds nested popup menus with smooth height animations. It is designed to be a *drop-in* replacement for both [PopupMenu](https:\u002F\u002Fdeveloper.android.com\u002Freference\u002Fandroidx\u002Fappcompat\u002Fwidget\u002FPopupMenu) and [DropdownMenu](https:\u002F\u002Fdeveloper.android.com\u002Freference\u002Fkotlin\u002Fandroidx\u002Fcompose\u002Fmaterial3\u002Fpackage-summary#DropdownMenu(kotlin.Boolean,kotlin.Function0,androidx.compose.ui.Modifier,androidx.compose.ui.unit.DpOffset,androidx.compose.ui.window.PopupProperties,kotlin.Function1)), so using it in your project is beautifully only a word away. Try out the [sample app](https:\u002F\u002Fgithub.com\u002Fsaket\u002Fcascade\u002Freleases\u002Fdownload\u002F2.0.0-rc01\u002Fcascade_v2.0.0-rc01_sample.apk) to see it in action.\n\n```groovy\nimplementation \"me.saket.cascade:cascade:2.3.0\"\nimplementation \"me.saket.cascade:cascade-compose:2.3.0\"\n```\n\nSee [project website](https:\u002F\u002Fsaket.github.io\u002Fcascade) for full documentation.\n\n## License\n\n```\nCopyright 2020 Saket Narayan.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n   http:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","cascade 是一个用于 Android 的嵌套弹出菜单库，支持流畅的高度动画效果。它旨在作为 PopupMenu 和 DropdownMenu 的直接替代方案，可以无缝集成到现有的项目中，并且只需少量代码即可实现。该库使用 Kotlin 编写，兼容 Jetpack Compose，提供丰富的自定义选项和高度可配置的动画效果。适用于需要复杂多层次菜单的应用场景，如设置界面、功能选择等，能够显著提升用户体验。",2,"2026-06-11 03:12:52","top_language"]