Code Monkey home page Code Monkey logo

hyperion-android's Introduction

Hyperion

CircleCI Maven Central License MIT Public Yes

Hyperion Logo

Hyperion - App Inspection Tool

What is it?

Hyperion is a hidden plugin drawer that can easily be integrated into any app. The drawer sits discreetly 🙊 under the app so that it is there when you need it and out of the way when you don't. Hyperion plugins are designed to make inspection of your app quick and simple.

Please see our annoucement blog post for a feature showcase.

Demo Attribute inspector

Third-Party Plugins

Be one of the first to create a third-party plugin. The plugin creation guide is a work in progress, but if you are feeling ambitious you can reference the plugins we have already created.

To create your own plugin, implement the Plugin interface and expose the implementation as a service. The plugins made available in this repository leverage Google's AutoService annotation processor to generate the service metadata and simplify the process.

How To Show Hyperion Plugin List

Once Hyperion is integrated into your app, simply shake your phone to activate. If you are running your app on an emulator, you can manually open the menu by calling Hyperion.open(Activity activity). You can also open the menu by selecting the foreground notification that appears while the client app is in the foreground.

Sample App

Want to learn how to use Hyperion? The sample app will teach you!

Build the example project by cloning the repo, run ./gradlew assemble from the root directory, then open in Android Studio and run.

Requirements

min SDK 15

Download

Download via Maven:

<dependency>
  <groupId>com.willowtreeapps.hyperion</groupId>
  <artifactId>hyperion-core</artifactId>
  <version>0.9.21</version>
</dependency>

or Gradle:

debugImplementation 'com.willowtreeapps.hyperion:hyperion-core:0.9.21'

If you reference Hyperion from your code, you should also compile the no-op artifact for release variants. For most users, this will not be necessary:

releaseImplementation 'com.willowtreeapps.hyperion:hyperion-core-no-op:0.9.21'

Usage

Include the core library along with any number of plugins.

debugImplementation 'com.willowtreeapps.hyperion:hyperion-core:0.9.21'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-attr:0.9.21'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-measurement:0.9.21'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-disk:0.9.21'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-recorder:0.9.21'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-phoenix:0.9.21'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-crash:0.9.21'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-shared-preferences:0.9.21'

Adding Plugins

Hyperion plugins need to be added into the app at build time. By default, Hyperion automatically finds every plugin that is available in the project using the Java Service Locator.

Contributing to Hyperion

Contributions are welcome. Please see the Contributing guidelines.

Hyperion has adopted a code of conduct defined by the Contributor Covenant, the same used by the Swift language and countless other open source software teams.

Third Party Plugins

The following are a list of third party plugins that integrate with Hyperion. Please make a pull request if you would like to see your plugin here:

License

Hyperion is available under the MIT license. See the LICENSE file for more info.

About WillowTree!

WillowTree Logo

We build apps, responsive sites, bots—any digital product that lives on a screen—for the world’s leading companies. Our elite teams challenge themselves to build extraordinary experiences by bridging the latest strategy and design thinking with enterprise-grade software development.

Interested in working on more unique projects like Hyperion? Check out our careers page.

hyperion-android's People

Contributors

benalderfer avatar benjamin-alderfer-willowtree avatar evansmj avatar evant avatar jawnnypoo avatar kritarie avatar nishtahir avatar star-zero avatar takahirom avatar toxicbakery avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.