Atlas-Authority / marketing-automation

GNU General Public License v3.0
19 stars 16 forks source link

Marketing Automation Engine

Analyzes all your Atlassian Marketplace data, generates contacts/deals, and puts them into HubSpot.

More specifically:

  1. Downloads and analyzes HubSpot and Atlassian Marketplace data
  2. Generates contacts from all License/Transaction contact info
  3. Identifies and flags Contact-Type for each Contact/Company
  4. Matches up related MPAC events via similarity-scoring
  5. Updates Contacts based on match results
  6. Generates Deals based on match results
  7. Upserts all generated/updated HubSpot data entities

This runs in an ENV-configurable loop.

Read about the engine logic in detail in docs/ENGINE.md.

Implemented in Node.js (TypeScript) and can build a Docker image (hosted by GitHub).


HubSpot Setup

See docs/HUBSPOT.md.

Running in Development

Install Node.js 16+ and NPM 7+

Copy .sample.env to .env and set values.

Install dependencies:

$ npm install

Compile TypeScript in background:

$ npm run watch

For general development:

$ npm run download     # Download MPAC & HubSpot data
$ npm run once [fast]  # Dry-run engine once on cached inputs
$ npm run 3x   [fast]  # Dry-run engine 3x, piping output to input

Running tests:

$ npm run test                # Run once
$ npm run test -- --watchAll  # Run during dev

Running in Production

$ node out/bin/main.js  # This always uses live inputs/outputs

See Analyse Data Shift docs for this sub-functionality.

Changelog

0.5.1

0.5.0

0.4.1

0.4.0

0.3.0

0.2.0 (2022-01-19)

CLI changes:

ENV changes:

Engine changes:

0.1.0 (2021-11-25)