https://github.com/faros-ai/airbyte-connectors
Airbyte connectors (sources & destinations) + Airbyte CDK for JavaScript/TypeScript
https://github.com/faros-ai/airbyte-connectors
airbyte airbyte-cdk airbyte-connectors airbyte-destinations airbyte-sources cdk cicd connectors elt etl faros javascript npm sdlc typescript
Last synced: about 1 month ago
JSON representation
Airbyte connectors (sources & destinations) + Airbyte CDK for JavaScript/TypeScript
- Host: GitHub
- URL: https://github.com/faros-ai/airbyte-connectors
- Owner: faros-ai
- License: apache-2.0
- Created: 2021-08-04T17:06:19.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-05-09T23:17:47.000Z (about 2 months ago)
- Last Synced: 2025-05-11T16:55:06.988Z (about 1 month ago)
- Topics: airbyte, airbyte-cdk, airbyte-connectors, airbyte-destinations, airbyte-sources, cdk, cicd, connectors, elt, etl, faros, javascript, npm, sdlc, typescript
- Language: TypeScript
- Homepage:
- Size: 24.6 MB
- Stars: 118
- Watchers: 13
- Forks: 64
- Open Issues: 57
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Airbyte Connectors
[](https://github.com/faros-ai/airbyte-connectors/actions/workflows/ci.yml) [](https://github.com/faros-ai/airbyte-connectors/actions/workflows/release.yml) [](https://github.com/faros-ai/airbyte-connectors/actions/workflows/codeql-analysis.yml) [](https://github.com/faros-ai/airbyte-connectors/releases/latest)
This repository contains [Airbyte](https://airbyte.io/) connectors used in [Faros](https://www.faros.ai) and [Faros Community Edition](https://github.com/faros-ai/faros-community-edition) platforms as well as Airbyte Connector Development Kit (CDK) for JavaScript/TypeScript.
See the READMEs inside `destinations/` and `sources/` subfolders for more information on each connector.
| Component | Code | Installation | Version |
| ------------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Airbyte CDK for JavaScript/TypeScript | [faros-airbyte-cdk](faros-airbyte-cdk) | `npm i faros-airbyte-cdk` | [](https://www.npmjs.com/package/faros-airbyte-cdk) |
| Azure Active Directory Source | [sources/azureactivedirectory-source](sources/azureactivedirectory-source) | `docker pull farosai/airbyte-azureactivedirectory-source` | [](https://hub.docker.com/r/farosai/airbyte-azureactivedirectory-source/tags) |
| Azure Pipeline Source | [sources/azurepipeline-source](sources/azurepipeline-source) | `docker pull farosai/airbyte-azurepipeline-source` | [](https://hub.docker.com/r/farosai/airbyte-azurepipeline-source/tags) |
| Azure Repos Source | [sources/azure-repos-source](sources/azure-repos-source) | `docker pull farosai/airbyte-azure-repos-source` | [](https://hub.docker.com/r/farosai/airbyte-azure-repos-source/tags) |
| Azure Workitems Source | [sources/azure-workitems-source](sources/azure-workitems-source) | `docker pull farosai/airbyte-azure-workitems-source` | [](https://hub.docker.com/r/farosai/airbyte-azure-workitems-source/tags) |
| Backlog Source | [sources/backlog-source](sources/backlog-source) | `docker pull farosai/airbyte-backlog-source` | [](https://hub.docker.com/r/farosai/airbyte-backlog-source/tags) |
| Bitbucket Source | [sources/bitbucket-source](sources/bitbucket-source) | `docker pull farosai/airbyte-bitbucket-source` | [](https://hub.docker.com/r/farosai/airbyte-bitbucket-source/tags) |
| Bitbucket Server Source | [sources/bitbucket-server-source](sources/bitbucket-server-source) | `docker pull farosai/airbyte-bitbucket-server-source` | [](https://hub.docker.com/r/farosai/airbyte-bitbucket-server-source/tags) |
| Buildkite Source | [sources/buildkite-source](sources/buildkite-source) | `docker pull farosai/airbyte-buildkite-source` | [](https://hub.docker.com/r/farosai/airbyte-buildkite-source/tags) |
| Customer.IO Source | [sources/customer-io-source](sources/customer-io-source) | `docker pull farosai/airbyte-customer-io-source` | [](https://hub.docker.com/r/farosai/airbyte-customer-io-source/tags) |
| CircleCI Source | [sources/circleci-source](sources/circleci-source) | `docker pull farosai/airbyte-circleci-source` | [](https://hub.docker.com/r/farosai/airbyte-circleci-source/tags) |
| Datadog Source | [sources/datadog-source](sources/datadog-source) | `docker pull farosai/airbyte-datadog-source` | [](https://hub.docker.com/r/farosai/airbyte-datadog-source/tags) |
| Docker Source | [sources/docker-source](sources/docker-source) | `docker pull farosai/airbyte-docker-source` | [](https://hub.docker.com/r/farosai/airbyte-docker-source/tags) |
| Faros Destination | [destinations/airbyte-faros-destination](destinations/airbyte-faros-destination) | `npm i airbyte-faros-destination` or `docker pull farosai/airbyte-faros-destination` | [](https://www.npmjs.com/package/airbyte-faros-destination) [](https://hub.docker.com/r/farosai/airbyte-faros-destination/tags) |
| Faros GraphQL Source | [sources/faros-graphql-source](sources/faros-graphql-source) | `docker pull farosai/airbyte-faros-graphql-source` | [](https://hub.docker.com/r/farosai/airbyte-faros-graphql-source/tags) |
| Files Source | [sources/files-source](sources/files-source) | `docker pull farosai/airbyte-files-source` | [](https://hub.docker.com/r/farosai/airbyte-files-source/tags) |
| FireHydrant Source | [sources/firehydrant-source](sources/firehydrant-source) | `docker pull farosai/airbyte-firehydrant-source` | [](https://hub.docker.com/r/farosai/airbyte-firehydrant-source/tags) |
| GitHub Source | [sources/github-source](sources/github-source) | `docker pull farosai/airbyte-github-source` | [](https://hub.docker.com/r/farosai/airbyte-github-source/tags) |
| Gitlab CI Source | [sources/gitlab-ci-source](sources/gitlab-ci-source) | `docker pull farosai/airbyte-gitlab-ci-source` | [](https://hub.docker.com/r/farosai/airbyte-gitlab-ci-source/tags) |
| Google Calendar Source | [sources/googlecalendar-source](sources/googlecalendar-source) | `docker pull farosai/airbyte-googlecalendar-source` | [](https://hub.docker.com/r/farosai/airbyte-googlecalendar-source/tags) |
| Harness Source | [sources/harness-source](sources/harness-source) | `docker pull farosai/airbyte-harness-source` | [](https://hub.docker.com/r/farosai/airbyte-harness-source/tags) |
| Jenkins Source | [sources/jenkins-source](sources/jenkins-source) | `docker pull farosai/airbyte-jenkins-source` | [](https://hub.docker.com/r/farosai/airbyte-jenkins-source/tags) |
| Jira Source | [sources/jira-source](sources/jira-source) | `docker pull farosai/airbyte-jira-source` | [](https://hub.docker.com/r/farosai/airbyte-jira-source/tags) |
| Okta Source | [sources/okta-source](sources/okta-source) | `docker pull farosai/airbyte-okta-source` | [](https://hub.docker.com/r/farosai/airbyte-okta-source/tags) |
| OpsGenie Source | [sources/opsgenie-source](sources/opsgenie-source) | `docker pull farosai/airbyte-opsgenie-source` | [](https://hub.docker.com/r/farosai/airbyte-opsgenie-source/tags) |
| PagerDuty Source | [sources/pagerduty-source](sources/pagerduty-source) | `docker pull farosai/airbyte-pagerduty-source` | [](https://hub.docker.com/r/farosai/airbyte-pagerduty-source/tags) |
| Phabricator Source | [sources/phabricator-source](sources/phabricator-source) | `docker pull farosai/airbyte-phabricator-source` | [](https://hub.docker.com/r/farosai/airbyte-phabricator-source/tags) |
| ServiceNow Source | [sources/servicenow-source](sources/servicenow-source) | `docker pull farosai/airbyte-servicenow-source` | [](https://hub.docker.com/r/farosai/airbyte-servicenow-source/tags) |
| Shortcut Source | [sources/shortcut-source](sources/shortcut-source) | `docker pull farosai/airbyte-shortcut-source` | [](https://hub.docker.com/r/farosai/airbyte-shortcut-source/tags) |
| SquadCast Source | [sources/squadcast-source](sources/squadcast-source) | `docker pull farosai/airbyte-squadcast-source` | [](https://hub.docker.com/r/farosai/airbyte-squadcast-source/tags) |
| StatusPage Source | [sources/statuspage-source](sources/statuspage-source) | `docker pull farosai/airbyte-statuspage-source` | [](https://hub.docker.com/r/farosai/airbyte-statuspage-source/tags) |
| Tromzo Source | [sources/tromzo-source](sources/tromzo-source) | `docker pull farosai/airbyte-tromzo-source` | [](https://hub.docker.com/r/farosai/airbyte-tromzo-source/tags) |
| Vanta Source | [sources/vanta-source](sources/vanta-source) | `docker pull farosai/airbyte-vanta-source` | [](https://hub.docker.com/r/farosai/airbyte-vanta-source/tags) |
| VictorOps Source | [sources/victorops-source](sources/victorops-source) | `docker pull farosai/airbyte-victorops-source` | [](https://hub.docker.com/r/farosai/airbyte-victorops-source/tags) |
| Workday Source | [sources/workday-source](sources/workday-source) | `docker pull farosai/airbyte-workday-source` | [](https://hub.docker.com/r/farosai/airbyte-workday-source/tags) |
| Zephyr Source | [sources/zephyr-source](sources/zephyr-source) | `docker pull farosai/airbyte-zephyr-source` | [](https://hub.docker.com/r/farosai/airbyte-zephyr-source/tags) |# Development
1. Install [`nvm`](https://github.com/nvm-sh/nvm#installing-and-updating)
2. Install Node.js `nvm install 22 && nvm use 22`
3. Install [`Turborepo`](https://turbo.build/repo) by running `npm install turbo --global`
4. Run `npm i` to install dependencies for all projects (`turbo clean` to clean all)
5. Run `turbo build` to build all projects (for a single project add scope, e.g `turbo build --filter=airbyte-faros-destination`)
6. Run `turbo test` to test all projects (for a single project add scope, e.g `turbo test --filter=airbyte-faros-destination`)
7. Run `turbo lint` to apply linter on all projects (for a single project add scope, e.g `turbo lint --filter=airbyte-faros-destination`)👉 Follow our guide on how to develop a new source [here](https://github.com/faros-ai/airbyte-connectors/tree/main/sources#developing-an-airbyte-source).
Read more about `Turborepo` [here](https://turbo.build/repo).
## Dependency Management
To manage dependencies in this project, you can use the following commands:
1. **Install Dependencies**: Run `npm install` to install all the necessary dependencies for the project.
2. **Update Dependencies**: Use `npm update` to update all the dependencies to their latest versions.
3. **Check for Vulnerabilities**: Run `npm audit` to check for any vulnerabilities in the dependencies.
4. **Fix Vulnerabilities**: Use `npm audit fix` to automatically fix any vulnerabilities that can be resolved.
5. **Clean Dependencies**: Run `npm prune` to remove any extraneous packages that are not listed in `package.json`.# Build Docker Images
In order to build a Docker image for a connector run the `docker build` command and set `path` and `version` arguments.
For example for Faros Destination connector run:```sh
docker build . --build-arg path=destinations/airbyte-faros-destination --build-arg version=0.0.1 -t airbyte-faros-destination
```And then run it:
```sh
docker run airbyte-faros-destination
```## Troubleshoot
- If you encounter errors like `...: No such file or directory` when running docker run commands on Windows, try to confirm all files in this repo are using `LF` end of line. If not, convert them all to use `LF` instead of `CRLF`.
# Releasing
Create a [new GitHub Release](https://github.com/faros-ai/airbyte-connectors/releases/new). The [release workflow](https://github.com/faros-ai/airbyte-connectors/blob/main/.github/workflows/release.yml) will automatically publish the packages to [NPM](https://www.npmjs.com/search?q=faros) and push Docker images to [Docker Hub](https://hub.docker.com/u/farosai).