Skip to content
/ orca Public

A synchronization service between the Canvas LMS REST API and the Notion REST API.

Notifications You must be signed in to change notification settings

Thehi198/orca

Repository files navigation

🐋 ORCA - Object Relational Course Admin

A synchronization service between the Canvas LMS REST API and the Notion REST API.

Architecture

Alt text

Dependancies

Stack

  • Buntime
  • Elysia
  • Notion SDK
  • Drizzle
  • Turso & libSQL

Devolepment

To start the development server run:

bun run dev

Open http://localhost:3000/.

Configure course information in the orcaConfig.ts file.

Admin Objects: - Make sure the classes and Class ID arrays are mapped

`classes`: array of Notion database tags
`classId`: array of Canvas LMS course IDs
`databaseId`: string of the Notion database id

Environment Variables:

`TURSO_AUTH_URL` : database URL for Turso
`TURSO_AUTH_TOKEN`: authentication token generated for Turso 
`NOTION_API_KEY`: authentication token generated by Notion
`CANVAS_API_KEY`: authentication token generated by Canvas LMS

Deployment

Use the dockerfile to build a docker container for deployment.

Reccomended Fly.io spec: shared-cpu-1x-1GB

Limitations & Future

  • One way sync
  • Does not support assignment updates (planned)
  • Provides minimal API interface

About

A synchronization service between the Canvas LMS REST API and the Notion REST API.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published