All Projects → nhaarman → Acorn

nhaarman / Acorn

Licence: apache-2.0
Mastering Android navigation 🐿

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Acorn

Self Driving Golf Cart
Be Driven 🚘
Stars: ✭ 147 (-17.88%)
Mutual labels:  navigation
Jquery Navobile
A jQuery plugin that makes mobile navigation easy.
Stars: ✭ 157 (-12.29%)
Mutual labels:  navigation
React Router Native Stack
A stack navigation component for react-router-native
Stars: ✭ 171 (-4.47%)
Mutual labels:  navigation
Layerjs
layerJS: Javascript UI composition framework
Stars: ✭ 1,825 (+919.55%)
Mutual labels:  navigation
React Site Nav
A kick ass site menu powered by styled components inspired by Stripe.
Stars: ✭ 155 (-13.41%)
Mutual labels:  navigation
Motion
Navigation and insight in Go
Stars: ✭ 163 (-8.94%)
Mutual labels:  navigation
Nemetric
前端性能指标的监控,采集以及上报。用于测量第一个dom生成的时间(FP/FCP/LCP)、用户最早可操作时间(fid|tti)和组件的生命周期性能,,网络状况以及资源大小等等。向监控后台报告实际用户测量值。
Stars: ✭ 145 (-18.99%)
Mutual labels:  navigation
The Movie Db Kotlin
The Movie DB app using Kotlin with updated Android features
Stars: ✭ 176 (-1.68%)
Mutual labels:  navigation
Locationsimulator
MacOS 10.15 / 11.0 application to spoof your iOS / iPadOS or iPhoneSimulator device location. WatchOS and TvOS are partially supported.
Stars: ✭ 157 (-12.29%)
Mutual labels:  navigation
React Native Navigation
A complete native navigation solution for React Native
Stars: ✭ 12,387 (+6820.11%)
Mutual labels:  navigation
Metago
MetaGo provides fast cursor movement/selection for keyboard focused users in vscode
Stars: ✭ 151 (-15.64%)
Mutual labels:  navigation
React Native Nav Transition
React Native Nav Transition
Stars: ✭ 154 (-13.97%)
Mutual labels:  navigation
Persistentbottomnavbar
A highly customizable persistent bottom navigation bar for Flutter
Stars: ✭ 165 (-7.82%)
Mutual labels:  navigation
Gta V Data Dumps
GTA V Data dumps useful for modding & scripting
Stars: ✭ 148 (-17.32%)
Mutual labels:  navigation
Advio
An Authentic Dataset for Visual-Inertial Odometry
Stars: ✭ 170 (-5.03%)
Mutual labels:  navigation
Spatial Navigation
Directional focus navigation with arrow keys
Stars: ✭ 146 (-18.44%)
Mutual labels:  navigation
Gallerit
A sample Android gallery to search images posted on Reddit built using modern Android development tools (Architecture Components, MVVM, Coroutines, Flow, Navigation, Retrofit, Room, Koin)
Stars: ✭ 153 (-14.53%)
Mutual labels:  navigation
Onenav
使用PHP开发的简约导航/书签管理系统。
Stars: ✭ 160 (-10.61%)
Mutual labels:  navigation
Marine Api
Java Marine API - NMEA 0183 library for Java
Stars: ✭ 174 (-2.79%)
Mutual labels:  navigation
Rtrootnavigationcontroller
Implicitly make every view controller has its own navigation bar
Stars: ✭ 2,066 (+1054.19%)
Mutual labels:  navigation

Acorn

Acorn is a carefully designed library that brings true modularity to your presentation layer and allows you to have full control over your transition animations.

Activities and Fragments restrict application development in such a way that creating modular, testable components becomes a difficult thing to do. Furthermore, implementing transition animations to visualize going from one screen to another with either of these components is non trivial.

Acorn provides modularity by grouping specific sets of screens together as building blocks, building up your application into several composable flows.
The view layer is decoupled from navigation and reacts to screen changes, giving you full control over transition animations.

You can read more about Acorn on the documentation website.

Easy setup Maven Central

Acorn is hosted on Maven Central.

To get started quickly, you can include the ext-acorn-android dependency, which includes the necessary base to create an app using Acorn.

implementation "com.nhaarman.acorn.ext:acorn-android:x.x.x"

If you use androidx.appcompat, you can use ext-acorn-android-appcompat instead:

implementation "com.nhaarman.acorn.ext:acorn-android-appcompat:x.x.x"

Using the dependencies above will transitively pull all other dependencies you need as well.

For more advanced configuration, see Setup.

Getting started

Acorn has several sample projects introducing the different concepts. You can also visit the Getting started documentation page for more information.

Building Acorn

Acorn is built with Gradle.

  • Running ./gradlew test will run all JVM tests;
  • Running ./gradlew pitest will generate PIT testing reports for JVM modules;
  • Running ./test will run the entire test suite, you will need to have a connected Android device with API 23+.
  • Running ./gradlew publishToMavenLocal will install a copy of all the libraries in your local maven repository.

Versioning

Acorn follows semantic versioning, and will determine the version number based on git tags.

Linter

Acorn uses ktlint which is enforced in CI.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].