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.).
- 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
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
For contributing features and fixes, IEX can be compiled and run locally.
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
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.
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
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 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
This project is available under the Apache 2.0 License.
Copyright 2020-2021 Expedia, Inc.