Skip to content

Insights Explorer is a tool to catalogue and present analytical & research work.

License

Notifications You must be signed in to change notification settings

maxdraki/insights-explorer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Release GitHub license semantic-release Conventional Commits

Insights Explorer is a website designed to make it easy to document, edit, and view analytical insights. Insights are Markdown-based repositories stored in GitHub, but viewed and edited through our interface. IEX has support for full-text searching, advanced Markdown syntax, and document viewing (e.g. pptx, docx, pdf, etc.).

Features

  • Create and edit Markdown-based documents
  • File upload & viewing for common file types
  • Discover Insights with full-text search
  • Like and comment to contribute to the discussion

Installation

Insights Explorer requires the following dependencies:

  • Elasticsearch 7.x
  • PostgreSQL 10+
  • AWS S3 bucket (or compatible API)
  • AWS SQS queues
  • Okta application for authentication
  • GitHub.com or GitHub Enterprise account & organization

Local Development

For contributing features and fixes, IEX can be compiled and run locally.

Building the Project

This repository is a monorepo with multiple projects inside it. Lerna is currently used to manage the monorepo.

🚨 The Node.js version is managed by nvm. Install with brew install nvm or follow the installation instructions.

nvm use
npm install && npm run bootstrap
npm run build

Running a Development Server

Environment variables need to be provided by creating an .env.development.local file under packages/backend/env. The .env file can be used as a template:

cp packages/backend/env/.env packages/backend/env/.env.development.local

Please note that any .env.*.local files will be ignored by git, so it is safe to embed secrets in those files for local use only.

Start the frontend/backend servers:

npm start

The backend service starts on port 3000, and frontend launches on port 3001. Please note that this is only to facilitate development— in production the backend service serves the compiled frontend files.

Self-Hosted Production

Docker

Pre-built Docker images are available in the GitHub container registery:

docker pull ghcr.io/expediagroup/insights-explorer:1

Create a new .env file containing all the required configuration, then run the image:

docker run -p 3001:3001 --env-file=.env ghcr.io/expediagroup/insights-explorer:1

Manually Building Docker Images

Building the Docker images manually only requires Docker to be installed.

You can build and run the main Docker image:

docker build -t insights-explorer:latest .
docker run -p 3001:3001 insights-explorer:latest

Convertbot:

docker build -t iex/convertbot:latest -f packages/convertbot/Dockerfile .

Slackbot:

docker build -t iex/slackbot:latest -f packages/slackbot/Dockerfile .

Third-Party Licenses

Third-party licenses are compiled for dependencies this project uses. You can view the licenses directly in the THIRD-PARTY-NOTICES.md file.

To update the list of third-party licenses, run the following command:

npm run license:thirdparty

Legal

This project is available under the Apache 2.0 License.

Copyright 2020-2021 Expedia, Inc.

About

Insights Explorer is a tool to catalogue and present analytical & research work.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 98.7%
  • Other 1.3%