Initial commit
This commit is contained in:
119
docs/QUICK_OAUTH_SETUP.md
Normal file
119
docs/QUICK_OAUTH_SETUP.md
Normal file
@@ -0,0 +1,119 @@
|
||||
# Quick OAuth Setup Checklist
|
||||
|
||||
## For Google OAuth
|
||||
|
||||
```
|
||||
1. Go to: https://console.cloud.google.com/
|
||||
2. Create new project: "Estate Platform"
|
||||
3. Enable Google+ API
|
||||
4. Create OAuth 2.0 Web Application credentials
|
||||
5. Set redirect URI: http://localhost:3001/auth/google/callback
|
||||
6. Copy Client ID and Secret
|
||||
7. Edit: data/system-config.json
|
||||
"google": {
|
||||
"enabled": true,
|
||||
"clientId": "YOUR_CLIENT_ID",
|
||||
"clientSecret": "YOUR_CLIENT_SECRET"
|
||||
}
|
||||
8. Restart server: npm run dev
|
||||
```
|
||||
|
||||
## For GitHub OAuth
|
||||
|
||||
```
|
||||
1. Go to: https://github.com/settings/developers
|
||||
2. Create New OAuth App
|
||||
3. Set callback: http://localhost:3001/auth/github/callback
|
||||
4. Copy Client ID and generate Client Secret
|
||||
5. Edit: data/system-config.json
|
||||
"github": {
|
||||
"enabled": true,
|
||||
"clientId": "YOUR_CLIENT_ID",
|
||||
"clientSecret": "YOUR_CLIENT_SECRET"
|
||||
}
|
||||
6. Restart server: npm run dev
|
||||
```
|
||||
|
||||
## For Facebook OAuth
|
||||
|
||||
```
|
||||
1. Go to: https://developers.facebook.com/
|
||||
2. Create new app (Consumer type)
|
||||
3. Add Facebook Login product
|
||||
4. Set redirect: http://localhost:3001/auth/facebook/callback
|
||||
5. Get App ID and App Secret
|
||||
6. Edit: data/system-config.json
|
||||
"facebook": {
|
||||
"enabled": true,
|
||||
"clientId": "YOUR_APP_ID",
|
||||
"clientSecret": "YOUR_APP_SECRET"
|
||||
}
|
||||
7. Restart server: npm run dev
|
||||
```
|
||||
|
||||
## For Discord OAuth
|
||||
|
||||
```
|
||||
1. Go to: https://discord.com/developers/applications
|
||||
2. Create New Application
|
||||
3. Go to OAuth2 section
|
||||
4. Add redirect: http://localhost:3001/auth/discord/callback
|
||||
5. Copy Client ID and generate Client Secret
|
||||
6. Edit: data/system-config.json
|
||||
"discord": {
|
||||
"enabled": true,
|
||||
"clientId": "YOUR_CLIENT_ID",
|
||||
"clientSecret": "YOUR_CLIENT_SECRET"
|
||||
}
|
||||
7. Restart server: npm run dev
|
||||
```
|
||||
|
||||
## Testing
|
||||
|
||||
1. Open http://localhost:3001
|
||||
2. Click "Get Started" or login button
|
||||
3. You should see OAuth provider buttons:
|
||||
- 🔍 Google
|
||||
- 🐙 GitHub
|
||||
- 👍 Facebook
|
||||
- 💬 Discord
|
||||
4. Click any button to test the OAuth flow
|
||||
|
||||
## Disable a Provider
|
||||
|
||||
Set `"enabled": false` for any provider in `data/system-config.json`:
|
||||
|
||||
```json
|
||||
"google": {
|
||||
"enabled": false,
|
||||
"clientId": "...",
|
||||
"clientSecret": "..."
|
||||
}
|
||||
```
|
||||
|
||||
The button will no longer appear in the login modal.
|
||||
|
||||
## Environment Variables (Production)
|
||||
|
||||
Instead of editing system-config.json, you can use environment variables:
|
||||
|
||||
```bash
|
||||
GOOGLE_CLIENT_ID=xxx
|
||||
GOOGLE_CLIENT_SECRET=xxx
|
||||
GITHUB_CLIENT_ID=xxx
|
||||
GITHUB_CLIENT_SECRET=xxx
|
||||
FACEBOOK_CLIENT_ID=xxx
|
||||
FACEBOOK_CLIENT_SECRET=xxx
|
||||
DISCORD_CLIENT_ID=xxx
|
||||
DISCORD_CLIENT_SECRET=xxx
|
||||
```
|
||||
|
||||
## Production URLs
|
||||
|
||||
Replace `http://localhost:3001` with your actual domain:
|
||||
- Production: `https://yourdomain.com/auth/[provider]/callback`
|
||||
- Staging: `https://staging.yourdomain.com/auth/[provider]/callback`
|
||||
|
||||
Update these in BOTH:
|
||||
1. Provider dashboard settings
|
||||
2. system-config.json or environment variables
|
||||
Reference in New Issue
Block a user