Git Product home page Git Product logo

exapus's Introduction

Exapus

Exapus is a web application for exploring the usage of APIs within a single project (i.e., project-centric exploration) and across a corpus of projects (i.e., api-centric exploration) along the dimensions of where, how much and in what manner. Several metrics and visualizations are provided.

For a quick demo: see the (preliminary) screencast

Installation

Exapus has been tested against Eclipse Juno 4.2 (for RCP and RAP Developers).

  • Import the ExapusRAP folder from the repository into your Eclipse workspace as the pre-configured Exapus project.
    For instance, using the pre-installed EGit (tutorial) plugin for Eclipse:

    • Choose Import… from the File menu.
    • Select Git > Projects from Git
    • Choose URI and enter the details of this repository (authentication is needed for write access).
    • Select the master branch.
    • If necessary, change the destination directory for your local repository clone.
    • Choose Import existing projects as the wizard to be used for the import. Leave the 'Working Directory` root selected.
    • Select the project named Exapus which corresponds to the folder ExapusRap folder and finish. Note that the project will not build until its target platform has been configured.
  • Configure the project's target platform.

    • Open the ExapusRAP.target file in the root of the project by double clicking.
    • Click on Set as Target Platform in the top-right corner of the editor. The project should now have been built without errors.
  • Configure the project's launcher.

    • Choose Run Configurations… from the Run menu.
    • Select (but don't double click) the RAP Application > ExapusRAP configuration.
    • Edit the Location field in the Instance Area pane of the Main tab such that it points to the path of the Eclipse workspace that should be analyzed by Exapus (e.g., by using the File System… button). Note that:
      • Exapus will analyze only the projects that are open in the workspace
      • opened projects should build without errors
      • no Eclipse instance should be open on the selected workspace
  • Configure system-specific paths

    • Copy the file exapus.properties (located alongside this README.md) to the same location as your eclipse.ini file (e.g., on a Mac: PATH_TO_THE_ECLPSE_DIR/Eclipse.app/Contents/MacOS/exapus.properties).
    • Edit the dot.path property such that it points to your Graphviz dot executable
    • Edit the views.path property such that it points to a folder containing predefined view definitions (e.g., Tags\ for\ APIs.xml). Example definition files can be found in the metadata/views folder alongside this file.

Launching Exapus

Once the project's launcher has been configured, the Exapus web application can be started by double clicking its launcher (see above) or by clicking the green "play" toolbar button while the Exapus project is selected in workspace.

Your system's default browser should automatically open on the application's URL. In case of an HTTP error 404, refresh the URL. In all likelihood, the URL was accessed before the application finished launching.

License

Copyright © 2012-2013 Exapus contributors:

Distributed under the Eclipse Public License.

External dependencies:

exapus's People

Contributors

cderoove avatar radkat avatar rlaemmel avatar

Watchers

James Cloos avatar  avatar  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.