Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kalohq/recon

Code Intelligence for React Applications
https://github.com/kalohq/recon

Last synced: 4 months ago
JSON representation

Code Intelligence for React Applications

Awesome Lists containing this project

README

        

 





 

Recon
=====

Code Intelligence for React Applications.

[![Build Status](https://travis-ci.org/lystable/recon.svg?branch=master)](https://travis-ci.org/lystable/recon)

### What?

Recon provides a new level of insight into your codebase allowing you to understand
how your components are being used, easily grep their complexity, draw dependency graphs,
and isolate points for optimisation.

On top of this the raw information Recon provides gives a strong base for creating tools
(such as living styleguides) which may need to plug in to component meta data.

### How?

The core of Recon revolves around `recon-engine`. This engine parses your application pulling out
any data which may be useful (eg. Props, component dependencies, enhancements etc.). Then a
graphql query interface is exposed allowing you to explore your applications in an incredibly
intuitive manner!

Checking out our [test fixtures](./packages/recon-engine/src/engine/__fixtures__/) is a
great place to an example of this.

Once this data is consolidated the possibility of tools to be built on top are *endless*!

Getting Started
---------------

Prerequisites: `Node >v6`. Also ensure using `import/export` syntax, using JSX (see roadmap for full list)

### Install and configuration

The quickest way to get going with Recon for your project is to use our CLI application.

Firstly install with

```
$ npm install -g recon-cli
```

Now, within your application working directory, simply run

```
$ recon
```

You are now *inside* Recon! :O

From this point forwards the entire power of Recon should be just a `help` command away.

```
recon$ help
```

The first thing you're going to want to do from here is create a new config file `.reconrc` in the working directory
of your project.

You can do this interactively by running

```
recon$ init
```

*To view all configuration possibilities you can view the docs [here](./packages/recon-config/README.md).*

### Show me the power!

Why not start off by trying `stats`. This will analyse your application and dump out a bunch of objective
statements and statistics.

```
recon$ stats
```

Then if you're feeling *extra* adventurous give `server` a go. This will spawn a new `graphql` server which will
allow you to query your application meta data freely.

```
recon$ server
```

For everything else see what is available via the `help` command!

### I want to integrate Recon into x

Documentation is going to be a little skimpy here for a while since we are planning on getting
the internals of `recon-engine` to be as powerful as possible and stabilising the api as much as
possible.

Most likely you'll want to look at using `recon-engine` and `recon-server` (their tests are a decent
place to start looking).

> Disclaimer: This is a very early preview of Recon and you should expect breaking changes within the