From 5254dee7b8029a8190bd557d0750c15cd250c5d0 Mon Sep 17 00:00:00 2001 From: Charles Zhao Date: Wed, 8 Jun 2022 00:28:32 +0800 Subject: [PATCH] chore: add readme files --- README.md | 33 +++++++++- logo.png | Bin 0 -> 70275 bytes packages/react/README.md | 132 +++++++++++++++++++++++++++++++++++++++ packages/vue/README.md | 109 ++++++++++++++++++++++++++++++++ 4 files changed, 273 insertions(+), 1 deletion(-) create mode 100644 logo.png create mode 100644 packages/react/README.md create mode 100644 packages/vue/README.md diff --git a/README.md b/README.md index 83f7f5497..c30c8d56c 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,33 @@ -# Logto JS SDKs +

+ + + +
+ Logto helps you quickly focus on everything after signing in. +

+# Logto JavaScript SDKs + +The monorepo for SDKs and working samples written in JavaScript (Well, mostly in TypeScript). + +## Table of Contents + +Please check out the sub-pages for more details: + +- [React SDK](https://github.com/logto-io/js/tree/master/packages/react) +- [Vue SDK](https://github.com/logto-io/js/tree/master/packages/vue) + +## Products + +| Name | Description | +|---|---| +| js | Logto JavaScript core | +| browser | Logto browser foundation SDK | +| react | Logto React SDK built on top of browser foundations | +| vue | Logto Vue SDK built on top of browser foundations | + +## Resources + +[![Website](https://img.shields.io/badge/website-logto.io-8262F8.svg)](https://logto.io/) +[![Docs](https://img.shields.io/badge/docs-logto.io-green.svg)](https://docs.logto.io/docs/sdk/swift/) +[![Discord](https://img.shields.io/discord/965845662535147551?logo=discord&logoColor=ffffff&color=7389D8&cacheSeconds=600)](https://discord.gg/UEPaF3j5e6) diff --git a/logo.png b/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b3c8ad78c9c320c77c9fed5b9dfaf4d6c8968546 GIT binary patch literal 70275 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 +``` + +## Get Started + +A sample project with the following code snippets can be found at [React Sample](https://github.com/logto-io/js/tree/master/packages/react-sample) + +Check out the source code and try it yourself. (We use [pnpm](https://pnpm.io/) for package management) + +```bash +pnpm i && pnpm start +``` + +### Initiate LogtoClient + +```tsx +import { LogtoProvider, LogtoConfig } from '@logto/react'; + +const App = () => { + const config: LogtoConfig = { + clientId: 'foo', + endpoint: 'https://your-endpoint-domain.com' + }; + + return ( + + + + } /> + } /> + + + + } + /> + + + + ); +}; +``` + +### Setup your sign-in + +```tsx +import { useLogto } from '@logto/react'; + +const SignInButton = () => { + const { signIn } = useLogto(); + const redirectUrl = window.location.origin + '/callback'; + + return ; +}; + +export default SignInButton; +``` + +### Retrieve Auth Status + +```tsx +import { useLogto } from '@logto/react'; + +const App = () => { + const { isAuthenticated, signIn } = useLogto(); + + if !(isAuthenticated) { + return + } + + return <> + + + +}; +``` + +### Sign out + +```tsx +import React from 'react'; +import { useLogto } from '@logto/react'; + +const SignOutButton = () => { + const { signOut } = useLogto(); + const postLogoutRedirectUri = window.location.origin; + + return ; +}; + +export default SignOutButton; +``` + +## Resources + +[![Website](https://img.shields.io/badge/website-logto.io-8262F8.svg)](https://logto.io/) +[![Docs](https://img.shields.io/badge/docs-logto.io-green.svg)](https://docs.logto.io/docs/sdk/swift/) +[![Discord](https://img.shields.io/discord/965845662535147551?logo=discord&logoColor=ffffff&color=7389D8&cacheSeconds=600)](https://discord.gg/UEPaF3j5e6) diff --git a/packages/vue/README.md b/packages/vue/README.md new file mode 100644 index 000000000..12551235c --- /dev/null +++ b/packages/vue/README.md @@ -0,0 +1,109 @@ +# Logto Vue SDK +[![Version](https://img.shields.io/npm/v/@logto/vue)](https://www.npmjs.com/package/@logto/vue) +[![Build Status](https://github.com/logto-io/js/actions/workflows/main.yml/badge.svg)](https://github.com/logto-io/js/actions/workflows/main.yml) +[![Codecov](https://img.shields.io/codecov/c/github/logto-io/js)](https://app.codecov.io/gh/logto-io/js?branch=master) + +The Logto Vue SDK written in TypeScript. Check out our [integration guide](https://docs.logto.io/integrate-sdk/vue) or [docs](https://docs.logto.io/sdk/vue) for more information. + +We also provide [集成指南](https://docs.logto.io/zh-cn/integrate-sdk/vue) and [文档](https://docs.logto.io/zh-cn/sdk/vue) in Simplified Chinese. + +## Installation + +### Using npm + +```bash +npm install @logto/vue +``` + +### Using yarn + +```bash +yarn add @logto/vue +``` + +### Using pnpm + +```bash +pnpm install @logto/vue +``` + +### Using CDN + +```bash +