The Notion Dashboard app integrates data from different services into a Notion database, helping you track and manage your activities seamlessly.
- LingQ Integration: Sync your daily word counts into a Notion database.
- WHOOP Integration: Track your workouts, including metrics like heart rate, duration, and calories burned.
-
Clone the repository:
git clone https://github.com/jakegodsall/notion-dashboard.git cd notion-dashboard
-
Create and activate a virtual environment:
python3 -m venv .venv source .venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Configure the app:
- Add your Notion API credentials and database configurations to the
src/config/notion.config.yml
file.
- Add your Notion API credentials and database configurations to the
The app can be run as a command-line tool using the main.py
file:
python main.py
The app includes a lambda.py
file for running as an AWS Lambda function. This is useful for deploying the app to AWS Lambda for serverless execution.
The project is set up using AWS SAM (Serverless Application Model) for easy deployment. To deploy:
- Install the AWS SAM CLI if not already installed:
brew install aws-sam-cli
- Build the project:
sam build
- Deploy the application:
sam deploy --guided
Follow the prompts to configure the environment variables and other configurations for deployment.
Create a notion.config.yml
file in src/config
with the following structure:
notion:
key: "notion-key"
integrations:
whoop:
database_id: "database-id"
field_mappings:
date:
label: "Date"
key: "date"
type: "date"
duration:
label: "Duration"
key: "duration"
type: "number"
distance:
label: "Distance (km)"
key: "distance"
type: "number"
- Ensure the configuration file exists at
src/config/notion.config.yml
with valid Notion API credentials.
- Check that your
PYTHONPATH
includes the project root directory:export PYTHONPATH=/path/to/notion-dashboard
- Fork the repository.
- Create a new feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Open a pull request.
This project is licensed under the MIT License. See LICENSE
for details.