This SDM visualizes aspects of TypeScript repositories.
Clone this repository.
Install the Atomist CLI: npm install -g @atomist/cli
Set up Postgres to store the data, as described in Aspect support database setup.
Inside this repo's directory, use the Atomist CLI to start this SDM: atomist start --local
Once that's going, visit http://localhost:2866
and it should tell you that you need to analyze some repositories.
Use the CLI to send an analyze command. I used:
atomist analyze github by query --cloneUnder ~/temp --poolSize 5 --update true --query "language:typescript stars:>=1000 size:<=10000"
This says to run that query on GitHub (TypeScript repos under 10Mb with 1000 stars), clone each repository under a local temp directory (handy for re-using clones after I change my code and want to run it again), run up to five of them at a time, and always update the data in the database.
That command will give you a link to watch the analysis as it's progressing: http://localhost:2866/analysis
. Hit refresh to update.
When it's done, return to http://localhost:2866
-- click on "Interactive Explorer" to see who has what input and output directories. Or look around.
For the record, after running an analysis I opened my Postgres database and used this to find the most frequent source directories:
select jsonb_array_elements(data -> 'directories') as "Directory", count(*)
from fingerprints
where name = 'TypeScriptSourceCountByDirectory'
group by 1
order by 2 desc;
Contributions to this project from community members are encouraged and appreciated. Please review the Contributing Guidelines for more information. Also see the Development section in this document.
This project is governed by the Code of Conduct. You are expected to act in accordance with this code by participating. Please report any unacceptable behavior to code-of-conduct@atomist.com.
Please see docs.atomist.com for developer documentation.
Follow @atomist and the Atomist blog.
General support questions should be discussed in the #support
channel in the Atomist community Slack workspace.
If you find a problem, please create an issue.
You will need to install Node.js to build and test this project.
Install dependencies.
$ npm install
Use the build
package script to compile, test, lint, and build the
documentation.
$ npm run build
Releases are handled via the Atomist SDM. Just press the 'Approve' button in the Atomist dashboard or Slack.
Created by Atomist. Need Help? Join our Slack workspace.