Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/justjake/notrition
Nutrition and recipe integration using the Notion Public API
https://github.com/justjake/notrition
notion notion-api oauth2 supabase
Last synced: about 3 hours ago
JSON representation
Nutrition and recipe integration using the Notion Public API
- Host: GitHub
- URL: https://github.com/justjake/notrition
- Owner: justjake
- License: gpl-3.0
- Created: 2021-04-15T02:39:36.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-06-01T17:32:31.000Z (over 3 years ago)
- Last Synced: 2024-04-14T09:42:36.779Z (7 months ago)
- Topics: notion, notion-api, oauth2, supabase
- Language: TypeScript
- Homepage: https://www.notrition.info
- Size: 639 KB
- Stars: 11
- Watchers: 3
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Notrition
Notrition uses the newly-released [Notion public
API](https://developers.notion.com) to pull recipe data from your recipes stored
in Notion and produce nutrition labels thanks to the Edamam API. It connects to
Notion using [OAuth](https://developers.notion.com/docs/authorization#authorizing-public-integrations).This project started as a one-day internal Notion hackathon project built by
Vicky Zhang and Jake Teton-Landis. The code is GPLv3.## Demo
The live version of this app is running at [notrition.info](https://www.notrition.info).
## Requirements
You will need:
1. A Supabase instance. Notrition uses Supabase for authentication and persistence.
1. A Edamam API key. Notrition uses Edamam's nutrition analysis endpoints.
1. A Notion OAuth Integration, created at https://www.notion.so/my-integrationsThen, put together a .env.local file like this:
```bash
# Copy this, then `pbpaste > .env.local` in the repo.
NEXT_PUBLIC_SUPABASE_URL=https://XXXXX.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=YYYYYY
SECRET_SUPABASE_SERVICE_KEY=ZZZZZ
EDAMAM_APP_ID=AAAAAA
EDAMAM_API_TOKEN=BBBBBB
NEXT_PUBLIC_NOTION_OAUTH_CLIENT_ID=QQQQQQQQQQ
NOTION_OAUTH_CLIENT_SECRET=secret_JJJJJJ
```## Development
```
yarn dev
```## Deployment
Use Vercel. Be sure to create env vars matching your .env.local.