supabase의 회원가입, 로그인
project는 org와 마찬가지로 dashboard에서 생성 할 수 있다.
크게 건드릴 부분은 없고
org 선택, 지역 선택만 잘하면 된다.
Database password는 나중에 변경도 가능하다.
Project URL
과 Project API KEY
를 복사해두자.위의 3단계를 끝냈다면
코드 에디터를 켜서 프로젝트를 만들자
나는 리액트로 진행했다.
프로젝트를 생성했다면
터미널에 아래의 코드를 입력하여 supabase-cli
를 설치하자
난 결국 기본적인 form을 만들어서 진행했지만,
supabase에서 제공해주는 편리한 템플릿도 궁금해서 auth-ui
도 같이 받았다.
템플릿을 사용하지 않는다면 @supabase/supabase-js
만 받아도 된다.
npm
npm install @supabase/supabase-js
템플릿을 사용하고 싶다면 추가로 설치
npm install @supabase/auth-ui-react @supabase/auth-ui-shared
supabase-cli
에서 제공하는 createClient()
를 사용하여createClient()
에 전달하는 인자는 위의 3번 단계에서 복사해둔Project URL
과 Project API KEY
다.const supabase = createClient(
"3번에서 복사해둔 Project URL",
3번에서 복사해둔 Project API KEY
);
signup()
, signout()
, signin()
이 모두 있기 때문에// signup 예시
async function signUpNewUser() {
const { data, error } = await supabase.auth.signUp({
email: 'example@email.com',
password: 'example-password',
// 이 옵션이 있으면 confirm email을 받은 유저가
// 이메일의 링크를 클릭 시 이동하게 되는 사이트 같다. (안 써봐서 확실치 않다.)
options: {
emailRedirectTo: 'https//example.com/welcome'
}
})
}
// signin 예시
async function signInWithEmail() {
const { data, error } = await supabase.auth.signInWithPassword({
email: 'example@email.com',
password: 'example-password'
})
}