This is a simple project hooking into the respective Notion SDK and Hubspot API using TypeScript to keep a Notion table up-to-date (one-way) with our HubSpot project list.
This project uses Dev Containers to ensure a consistent development environment.
- TypeScript for type checking.
- Prettier for code formatting.
- A minimal GitHub Actions workflow that typechecks your code.
- Dotenv for configuring your Notion API token.
- Dependabot for ensuring your (and this template's!) dependencies are up to date.
- Make sure you've created a Notion integration and have a secret Notion token.
- Add your Notion token to a
.env
file at the root of this repository:echo "NOTION_TOKEN=[your token here]" > .env
. - Create a Notion database and store its ID as
NOTION_INTCUBE_PROJECT_DB
in.env
as well - Using
HUBSPOT_API_DOMAIN=api.hubapi.com
and yourHUBSPOT_API_KEY
as well as yourHUBSPOT_PORTAL_ID
- Run
npm install
. - Run
npm start
to run the script.
This template has a few built-in NPM scripts:
Script | Action |
---|---|
npm start |
Run index.ts . |
npm run typecheck |
Type check using the TypeScript compiler. |
npm run format |
Format using Prettier (also recommended: the Prettier VS Code extension if you're using VS code.) |
npm run build |
Build JavaScript into the dist/ directory. You normally shouldn't need this if you're using npm start . |