Arctic

流行提供商的 OAuth 2.0 客户端。「OAuth 2.0 clients for popular providers」

Github星跟蹤圖

Arctic

Documentation: arcticjs.dev

Arctic is a collection of OAuth 2.0 clients for popular providers. It only supports the authorization code grant type and intended to be used server-side. Built on top of the Fetch API, it's light weight, fully-typed, and runtime-agnostic.

npm install arctic
import { GitHub, generateState } from "arctic";

const github = new GitHub(clientId, clientSecret);

const state = generateState();
const scopes = ["user:email"];
const authorizationURL = github.createAuthorizationURL(state, scopes);

// ...

const tokens = await github.validateAuthorizationCode(code);
const accessToken = tokens.accessToken();

Arctic only supports providers that follow the OAuth 2.0 spec (including PKCE and token revocation).

Semver

Arctic does not strictly follow semantic versioning. While we aim to only introduce breaking changes in major versions, we may introduce them in a minor update if a provider updates their API in a non-backward compatible way. However, they will never be introduced in a patch update.

Supported providers

  • 42 School
  • Amazon Cognito
  • AniList
  • Apple
  • Atlassian
  • Auth0
  • Authentik
  • Bitbucket
  • Box
  • Bungie
  • Coinbase
  • Discord
  • Dribbble
  • Dropbox
  • Etsy
  • Epic Games
  • Facebook
  • Figma
  • GitHub
  • GitLab
  • Google
  • Intuit
  • Kakao
  • Lichess
  • Line
  • Linear
  • LinkedIn
  • Microsoft Entra ID
  • MyAnimeList
  • Naver
  • Notion
  • Okta
  • osu!
  • Patreon
  • Polar
  • Reddit
  • Roblox
  • Salesforce
  • Shikimori
  • Slack
  • Spotify
  • Start.gg
  • Strava
  • Tiltify
  • Tumblr
  • Twitch
  • Twitter
  • VK
  • WorkOS
  • Yahoo
  • Yandex
  • Zoom

主要指標

概覽
名稱與所有者pilcrowonpaper/arctic
主編程語言TypeScript
編程語言 (語言數: 3)
平台
許可證MIT License
所有者活动
創建於2023-11-02 07:15:13
推送於2025-03-27 01:43:34
最后一次提交
發布數38
最新版本名稱v3.6.0 (發布於 )
第一版名稱v1.1.1 (發布於 )
用户参与
星數1.4k
關注者數2
派生數86
提交數496
已啟用問題?
問題數115
打開的問題數11
拉請求數156
打開的拉請求數1
關閉的拉請求數25
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?