AOSSIE-Org / AOSSIE-Org/InPactAI
Improve Local Setup Documentation: Add Clear Steps for API Keys & Python Virtual Environment
- 主要言語
- TypeScript
- スター
- 102
- フォーク
- 144
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
### Is this related to an existing part of the documentation?
- [x] Yes, it is related to an existing section
### What needs to be updated?
## Title: Improve Local Setup Documentation: Add Clear Steps for API Keys & Python Virtual Environment
---
## Describe the Problem
The current `README.md` provides basic setup instructions (cloning, installing dependencies, running servers), but **critical onboarding steps are missing or incomplete**, making it difficult for new contributors (especially beginners) to run the project locally.
### Missing or Unclear Parts
1. **API Key Setup (`GEMINI_API_KEY`, `YOUTUBE_API_KEY`, `GROQ_API_KEY`)**
- The `.env.example` lists these keys, but **there are no instructions** on how to obtain them.
- No links, steps, or free-tier details — users get stuck at the `.env` stage.
2. **Supabase Database Credentials (`host`, `password`, etc.)**
- While Supabase URL and anon key are mentioned, the **PostgreSQL connection string breakdown** (`host`, `password`, `port`, etc.) is not explained.
- Users don’t know where to find these in the Supabase dashboard.
3. **Python Virtual Environment (venv) for FastAPI Backend**
- The README says `pip install -r requirements.txt`, but **does not recommend or explain using a virtual environment**.
- This leads to dependency conflicts, especially on shared machines or with multiple Python projects.
These gaps increase friction for first-time contributors and reduce project accessibility.
---
## Suggested Solution
Add a new **“Local Development Setup”** section to `README.md` with clear, step-by-step instructions and a **properly formatted table** for API keys.
### 1. API Keys Table (place under “Environment Variables” or a new heading)
```markdown
Create a `.env` file in `backend/app/` (copy from `.env.example`). Fill the values below:
| Variable | Service | How to Obtain |
|------------------------|-----------------------------|---------------|
| `GROQ_API_KEY` | [Groq](https://console.groq.com) | 1. Go to [console.groq.com](https://console.groq.com)
2. Sign up / log in
3. **API Keys → Create API Key**
4. Copy the key (`gsk_…`) |
| `GEMINI_API_KEY` | [Google AI Studio](https://aistudio.google.com) | 1. Visit [aistudio.google.com/app/apikey](https://aistudio.google.com/app/apikey)
2. Sign in with Google
3. **Create API key**
4. Copy the key |
| `YOUTUBE_API_KEY` | [Google Cloud Console](https://console.cloud.google.com) | 1. Go to [console.cloud.google.com](https://console.cloud.google.com)
2. Create a new project (e.g., “InPact-YouTube”)
3. Enable **YouTube Data API v3**
4. **Credentials → Create Credentials → API key** |
| `SUPABASE_URL` & `SUPABASE_KEY` | [Supabase](https://supabase.com) | 1. Go to [supabase.com/dashboard](https://supabase.com/dashboard)
2. Create a new project
3. **Settings → API** → copy **Project URL** and **anon public** key |
| `host`, `password` | Supabase PostgreSQL | In Supabase: **Settings → Database** → copy **Host** and the **Database password** you set during project creation |
```
> **Note**: All services have free tiers sufficient for local development.
### 2. Python Virtual Environment (Recommended)
To avoid dependency conflicts:
```bash
# In project root or backend/
python -m venv venv
# Activate
# Windows:
venv\Scripts\activate
# macOS / Linux:
source venv/bin/activate
# Install backend deps (with venv active)
pip install -r backend/requirements.txt
```
> **Note** : Always activate the **venv** before running **uvicorn**
### 3. Update `.env.example` (Optional but Helpful)
Ensure `backend/.env.example` includes **all** required keys with comments:
```env
# Supabase DB
user=postgres
password=YOUR_DB_PASSWORD
host=YOUR_PROJECT.supabase.co
port=5432
dbname=postgres
# API Keys
GROQ_API_KEY=your_groq_key_here
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_KEY=your-anon-key
GEMINI_API_KEY=your-gemini-key
YOUTUBE_API_KEY=your-youtube-key
```
---
## Additional Context
- **Date & Time**: November 16, 2025, 10:01 AM IST
- **Location**: India (IN)
- **Fork**: [SunilBaghel002/InPactAI](https://github.com/SunilBaghel002/InPactAI)
- **OS Tested**: Windows 11 (also verified on Ubuntu 24.04 via WSL)
- **Contributor**: First-time open-source contributor — eager to improve onboarding for the global community!
- **Motivation**: I spent **~45 minutes** just figuring out API keys and venv setup. Clear docs would have saved me (and others) hours.
---
## Impact
| Before | After |
|--------|-------|
| New contributors get stuck at `.env` → give up | Setup time drops from **~1 hour → ~10 minutes** |
| Dependency conflicts break local runs | Isolated venv = zero conflicts |
| No guidance on free-tier limits | Confidence that free tiers are enough for dev |
| High barrier for non-US/English users | Step-by-step + India-localized time = inclusive |
**Result**:
- **More pull requests** from beginners (especially from India & APAC timezones)
- **Faster project growth**
- **Lower maintainer support load** (fewer “how do I get X key?” issues)
---
**Happy to open a PR with these exact changes** — just let me know!
### Relevant Documentation Link (if any)
_No response_
### Record
- [x] I agree to follow this project's Code of Conduct
- [x] I want to work on this update
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
評価
この issue はまだ評価されていません。