docs: Add setup guide with Supabase credentials
This commit is contained in:
203
SETUP.md
Normal file
203
SETUP.md
Normal file
@@ -0,0 +1,203 @@
|
||||
# Pantry - Setup Guide
|
||||
|
||||
## ✅ Current Status
|
||||
|
||||
### Infrastructure (Complete)
|
||||
|
||||
- **Supabase Dev Instance**: Running on Coolify
|
||||
- URL: `https://supabasekong-ewo8wssk4gs8cgg0c8kosk40.jeanlucmakiola.de`
|
||||
- Status: ✅ Healthy
|
||||
- Services: PostgreSQL, Auth (GoTrue), Realtime, Storage, PostgREST
|
||||
|
||||
### Environment Configuration (Complete)
|
||||
|
||||
- `.env.example` - Template for all environments
|
||||
- `.env.development` - Dev credentials (Coolify Supabase)
|
||||
- `.gitignore` - Protects secrets
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Quick Start (Development)
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- **Bun** 1.0+ (or Node.js 20+)
|
||||
- **Git** access to repository
|
||||
- **Access to Coolify** Supabase instance (credentials in `.env.development`)
|
||||
|
||||
### Setup Steps
|
||||
|
||||
1. **Clone Repository**
|
||||
```bash
|
||||
git clone https://gitea.jeanlucmakiola.de/pantry-app/pantry.git
|
||||
cd pantry
|
||||
```
|
||||
|
||||
2. **Copy Development Environment**
|
||||
```bash
|
||||
cp .env.development .env
|
||||
```
|
||||
|
||||
3. **Install Dependencies** (once `app/` exists)
|
||||
```bash
|
||||
cd app
|
||||
bun install
|
||||
```
|
||||
|
||||
4. **Apply Database Migrations** (once created)
|
||||
```bash
|
||||
cd supabase
|
||||
# TBD: Migration command
|
||||
```
|
||||
|
||||
5. **Start Development Server**
|
||||
```bash
|
||||
cd app
|
||||
bun run dev
|
||||
```
|
||||
|
||||
6. **Access App**
|
||||
- App: `http://localhost:3000`
|
||||
- Supabase API: `https://supabasekong-ewo8wssk4gs8cgg0c8kosk40.jeanlucmakiola.de`
|
||||
|
||||
---
|
||||
|
||||
## 🗄️ Supabase Instance Details
|
||||
|
||||
### Endpoints
|
||||
|
||||
| Service | URL |
|
||||
|---------|-----|
|
||||
| API (PostgREST) | `https://supabasekong-ewo8wssk4gs8cgg0c8kosk40.jeanlucmakiola.de/rest/v1/` |
|
||||
| Auth | `https://supabasekong-ewo8wssk4gs8cgg0c8kosk40.jeanlucmakiola.de/auth/v1/` |
|
||||
| Realtime | `wss://supabasekong-ewo8wssk4gs8cgg0c8kosk40.jeanlucmakiola.de/realtime/v1/` |
|
||||
| Storage | `https://supabasekong-ewo8wssk4gs8cgg0c8kosk40.jeanlucmakiola.de/storage/v1/` |
|
||||
|
||||
### Credentials
|
||||
|
||||
**Public (safe to use in frontend):**
|
||||
- Anon Key: In `.env.development`
|
||||
|
||||
**Secret (server-side only):**
|
||||
- Service Role Key: In `.env.development`
|
||||
- JWT Secret: In `.env.development`
|
||||
- Postgres Password: In `.env.development`
|
||||
|
||||
### Dashboard Access
|
||||
|
||||
If Supabase Studio is exposed on Coolify:
|
||||
- URL: Check Coolify service configuration
|
||||
- Username: From `SERVICE_USER_ADMIN` in Coolify
|
||||
- Password: From `SERVICE_PASSWORD_ADMIN` in Coolify
|
||||
|
||||
---
|
||||
|
||||
## 📋 Next Steps
|
||||
|
||||
### Week 1: Foundation (In Progress)
|
||||
|
||||
- [x] ~~Supabase dev environment setup~~ (Complete)
|
||||
- [x] ~~Environment configuration~~ (Complete)
|
||||
- [ ] Create database schema (`supabase/migrations/`)
|
||||
- [ ] Scaffold Nuxt 4 app (`app/`)
|
||||
- [ ] Implement email/password auth
|
||||
- [ ] Deploy first version to Coolify
|
||||
|
||||
### Immediate Tasks
|
||||
|
||||
1. **Database Schema** (#10)
|
||||
- Create migration files in `supabase/migrations/`
|
||||
- Tables: `inventory_items`, `products`, `tags`, `item_tags`, `units`
|
||||
- See: `docs/DATABASE.md`
|
||||
|
||||
2. **Nuxt Scaffold** (#8)
|
||||
- Initialize Nuxt 4 project in `app/`
|
||||
- Install dependencies: `@nuxtjs/supabase`, `@nuxt/ui`, Tailwind
|
||||
- Configure `nuxt.config.ts`
|
||||
|
||||
3. **Auth Implementation** (#11)
|
||||
- Supabase Auth integration
|
||||
- Login/signup pages
|
||||
- Protected routes
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Development Workflow
|
||||
|
||||
### Making Changes
|
||||
|
||||
```bash
|
||||
# 1. Create feature branch
|
||||
git checkout -b feature/your-feature
|
||||
|
||||
# 2. Make changes
|
||||
# Edit files...
|
||||
|
||||
# 3. Test locally
|
||||
bun run dev
|
||||
|
||||
# 4. Commit and push
|
||||
git add .
|
||||
git commit -m "feat: Your feature description"
|
||||
git push origin feature/your-feature
|
||||
|
||||
# 5. Create PR on Gitea
|
||||
```
|
||||
|
||||
### Database Migrations
|
||||
|
||||
```bash
|
||||
# Create new migration
|
||||
cd supabase/migrations
|
||||
touch 001_initial_schema.sql
|
||||
|
||||
# Edit migration file (SQL)
|
||||
# Test locally against Coolify Supabase instance
|
||||
|
||||
# Apply migration (TBD - once we set up migration tooling)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚨 Troubleshooting
|
||||
|
||||
### Can't connect to Supabase
|
||||
|
||||
**Test connection:**
|
||||
```bash
|
||||
curl -s "https://supabasekong-ewo8wssk4gs8cgg0c8kosk40.jeanlucmakiola.de/rest/v1/" \
|
||||
-H "apikey: <ANON_KEY>"
|
||||
```
|
||||
|
||||
Should return OpenAPI spec. If not:
|
||||
- Check Coolify service status
|
||||
- Verify URL in `.env`
|
||||
- Check network/firewall
|
||||
|
||||
### Environment variables not loading
|
||||
|
||||
- Ensure `.env` exists in project root
|
||||
- Check `.env` has no syntax errors
|
||||
- Restart dev server after changes
|
||||
|
||||
### Database migration issues
|
||||
|
||||
- Verify `SUPABASE_SERVICE_ROLE_KEY` is set
|
||||
- Check migration SQL syntax
|
||||
- Review Supabase logs in Coolify
|
||||
|
||||
---
|
||||
|
||||
## 📚 Documentation
|
||||
|
||||
- [Project Plan](docs/PROJECT_PLAN.md) - Vision, roadmap
|
||||
- [Architecture](docs/ARCHITECTURE.md) - Tech stack, design
|
||||
- [Database Schema](docs/DATABASE.md) - Tables, RLS, functions
|
||||
- [API Reference](docs/API.md) - Endpoints, usage
|
||||
- [Development Guide](docs/DEVELOPMENT.md) - Conventions, workflow
|
||||
- [Deployment](docs/DEPLOYMENT.md) - Docker, Coolify
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2026-02-08
|
||||
**Status:** Week 1 - Foundation in progress
|
||||
Reference in New Issue
Block a user