Skip to main content

developer-relations

Developer relations - community building, documentation, DevRel metrics.

Quellinformationen

Repository
vibeeval/vibecosystem
Letzte Quellaktivität
12. April 2026 um 23:35
Erkannte Sprache von SKILL.md
Türkisch
Sterne
538
Forks
47

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
developer-relations
description
Developer relations - community building, documentation, DevRel metrics.
# Developer Relations ## Open Source Community Management ### Community Health Scorecard | Metrik | Saglikli | Dikkat | Kritik | |--------|---------|--------|--------| | Time to First Response | < 24 saat | 1-3 gun | > 3 gun | | Issue Close Rate (monthly) | > %70 | %40-70 | < %40 | | PR Merge Time | < 3 gun | 3-7 gun | > 7 gun | | External Contributors | > %30 | %10-30 | < %10 | | Bus Factor | > 3 | 2-3 | 1 | | Release Cadence | Regular (2-4 hafta) | Duzensiz | > 3 ay | | Documentation Coverage | > %80 | %50-80 | < %50 | ### Community Roles & Responsibilities ``` Maintainer |-- Core Contributor (write access) | |-- Regular Contributor (frequent PRs) | | |-- Occasional Contributor (1-5 PRs) | | |-- First-time Contributor |-- Reviewer (code review) |-- Triage (issue labeling) |-- Community Moderator (Discord/Slack) |-- Documentation Contributor ``` ### Issue Triage Labels ```yaml # Issue labels taxonomy type: - bug # Something isn't working - feature # New feature request - enhancement # Improvement to existing feature - documentation # Documentation update - question # Community question priority: - critical # Production breaking - high # Important, next release - medium # Normal priority - low # Nice to have status: - needs-triage # Awaiting maintainer review - confirmed # Bug confirmed, feature accepted - needs-info # Waiting for reporter input - in-progress # Being worked on - blocked # Dependency blocker experience: - good-first-issue # Newcomer friendly - help-wanted # Community contribution welcome - mentor-available # Maintainer will guide ``` ### Automated Community Workflows ```yaml # .github/workflows/community.yml name: Community Management on: issues: types: [opened] pull_request: types: [opened] jobs: welcome-new-contributor: runs-on: ubuntu-latest steps: - uses: actions/first-interaction@v1 with: issue-message: | Welcome to the project! Thanks for opening your first issue. Please make sure you've filled out the issue template completely. A maintainer will review this shortly. pr-message: | Thanks for your first PR! A maintainer will review it soon. Please make sure all checks pass and you've signed the CLA. auto-label: runs-on: ubuntu-latest steps: - uses: actions/labeler@v5 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" stale-check: runs-on: ubuntu-latest steps: - uses: actions/stale@v9 with: stale-issue-message: "This issue has been inactive for 30 days. It will be closed in 7 days if no further activity occurs." days-before-stale: 30 days-before-close: 7 ``` ## Developer Documentation Best Practices ### Documentation Architecture ``` docs/ getting-started/ installation.md # 5 dakikada calistir quickstart.md # Ilk basari deneyimi configuration.md # Temel ayarlar guides/ authentication.md # How-to guide data-migration.md # Step-by-step deployment.md # Production setup reference/ api/ # Auto-generated API docs cli/ # CLI commands configuration/ # All config options concepts/ architecture.md # Mimari aciklama data-model.md # Data yapisi examples/ basic/ # Basit ornekler advanced/ # Ileri ornekler integrations/ # 3rd party entegrasyonlar contributing/ CONTRIBUTING.md # Katki rehberi CODE_OF_CONDUCT.md # Davranis kurallari DEVELOPMENT.md # Dev environment setup changelog/ CHANGELOG.md # Release notes ``` ### Documentation Quality Checklist | Kriter | Aciklama | |--------|----------| | 5-Minute Success | Yeni kullanici 5 dk'da calisan bir sey gorebilmeli | | Copy-Paste Ready | Kod ornekleri direkt calisabilmeli | | Up-to-Date | Kod degisince doc da guncellenecek (CI check) | | Searchable | Arama motoru ile bulunabilir | | Progressive Disclosure | Basit -> Orta -> Ileri siralama | | Error Messages | Hata mesajlari doc'a linklemeli | | Platform Coverage | macOS, Linux, Windows ornekleri | | Language Coverage | En az 3 dilde SDK ornegi | ### API Documentation Template ```markdown ## Create User Creates a new user account. ### Request `POST /api/v1/users` #### Headers | Header | Required | Description | |--------|----------|-------------| | Authorization | Yes | Bearer token | | Content-Type | Yes | application/json | #### Body | Field | Type | Required | Description | |-------|------|----------|-------------| | email | string | Yes | Valid email address | | name | string | Yes | Full name (2-100 chars) | | role | string | No | "admin" or "member" (default: "member") | #### Example \```bash curl -X POST https://api.example.com/v1/users \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "email": "user@example.com", "name": "Jane Smith", "role": "member" }' \``` ### Response #### 201 Created \```json { "id": "usr_abc123", "email": "user@example.com", "name": "Jane Smith", "role": "member", "created_at": "2026-01-15T10:30:00Z" } \``` #### 400 Bad Request \```json { "error": { "code": "VALIDATION_ERROR", "message": "Invalid email format" } } \``` #### 409 Conflict \```json { "error": { "code": "DUPLICATE_EMAIL", "message": "A user with this email already exists" } } \``` ``` ## Tutorial ve Workshop Olusturma ### Tutorial Structure ``` 1. WHAT: Ne yapacagiz? (1 paragraf, 30 saniye okuma) 2. WHY: Neden onemli? (1 paragraf) 3. PREREQUISITES: Nelere ihtiyac var? (liste) 4. STEPS: Adim adim (her adim bitmis, calisan bir sey) - Step 1: Setup (copy-paste) - Step 2: Basic usage (calisan output goster) - Step 3: Build something (gercek problem coz) - Step 4: Advanced (opsiyonel) 5. NEXT STEPS: Sonra ne yapabilirim? (linkler) 6. TROUBLESHOOTING: Yaygın sorunlar ve cozumleri ``` ### Workshop Format (90 Dakika) ``` 00:00 - 00:10 Giris ve motivasyon (demo goster) 00:10 - 00:20 Setup kontrolu (herkes calisiyor mu?) 00:20 - 00:40 Guided exercise 1 (birlikte yapariz) 00:40 - 00:50 Solo exercise 1 (kendiniz yapin) 00:50 - 01:00 Ara + sorular 01:00 - 01:20 Guided exercise 2 (ileri seviye) 01:20 - 01:30 Solo exercise 2 01:30 - 01:40 Showcase (katilimcilar gosterir) 01:40 - 01:50 Q&A + next steps ``` ## Conference Talk Preparation ### Talk Structure Template ``` Title: [Catchy, specific, searchable] Duration: [15/25/40 min] Audience Level: [Beginner/Intermediate/Advanced] OUTLINE: 1. Hook (2 min) - Surprising stat or demo - "How many of you have...?" 2. Problem (3 min) - Pain point everyone recognizes - Why existing solutions fall short 3. Solution (Main Content) (60% of time) - Core concept explanation - Live demo or code walkthrough - Before/After comparison 4. Deep Dive (20% of time) - Technical details - Architecture decisions - Performance numbers 5. Takeaways (3 min) - 3 actionable items - Resources & links - QR code to slides/repo ``` ### Speaker Checklist | Asama | Kontrol | |-------|---------| | Proposal | CFP'ye uygun mu? Abstract compelling mi? | | Slides | Max 1 nokta per slide, buyuk font (24pt+) | | Demo | Offline calisir mi? Backup video var mi? | | Timing | Prova yapildi mi? %10 buffer biraktin mi? | | Setup | Adaptor, clicker, backup laptop? | | After | Slides paylastin mi? Repo public mi? | ## Developer Advocate Programi ### Advocate Tipleri | Tip | Odak | Ciktilar | |-----|------|---------| | Content Advocate | Blog, video, tutorial | Haftalik icerik | | Community Advocate | Forum, Discord, events | Gunluk etkilesim | | Technical Advocate | SDK, samples, integrations | Kod + doc | | Field Advocate | Customer visits, workshops | Aylik workshop | | Product Advocate | Feedback loop, beta testing | Feature requests | ### Advocate Program Metrics ```typescript interface AdvocateMetrics { content: { blog_posts: number; videos: number; tutorials: number; total_views: number; avg_engagement_rate: number; }; community: { questions_answered: number; avg_response_time_hours: number; community_satisfaction: number; // 1-5 new_members_influenced: number; }; events: { talks_given: number; workshops_run: number; attendees_reached: number; post_event_signups: number; }; product: { feedback_submitted: number; features_influenced: number; beta_testers_recruited: number; sdk_contributions: number; }; } ``` ## Community Metrics ### GitHub Community Health ```typescript interface GitHubHealth { stars: number; star_growth_weekly: number; forks: number; open_issues: number; closed_issues_30d: number; open_prs: number; merged_prs_30d: number; contributors_total: number; contributors_new_30d: number; avg_issue_close_time_hours: number; avg_pr_merge_time_hours: number; releases_90d: number; commit_frequency_weekly: number; code_frequency: { additions: number; deletions: number }; } // GitHub API ile metrikleri cek async function fetchGitHubHealth(owner: string, repo: string): Promise<GitHubHealth> { const headers = { Authorization: `token ${process.env.GITHUB_TOKEN}` }; const [repoData, issues, prs, contributors, releases] = await Promise.all([ fetch(`https://api.github.com/repos/${owner}/${repo}`, { headers }).then(r => r.json()), fetch(`https://api.github.com/repos/${owner}/${repo}/issues?state=all&per_page=100`, { headers }).then(r => r.json()), fetch(`https://api.github.com/repos/${owner}/${repo}/pulls?state=all&per_page=100`, { headers }).then(r => r.json()), fetch(`https://api.github.com/repos/${owner}/${repo}/contributors?per_page=100`, { headers }).then(r => r.json()), fetch(`https://api.github.com/repos/${owner}/${repo}/releases?per_page=10`, { headers }).then(r => r.json()), ]); return { stars: repoData.stargazers_count, star_growth_weekly: 0, // weekly delta hesapla forks: repoData.forks_count, open_issues: repoData.open_issues_count, closed_issues_30d: issues.filter((i: any) => i.state === "closed").length, open_prs: prs.filter((p: any) => p.state === "open").length, merged_prs_30d: prs.filter((p: any) => p.merged_at).length, contributors_total: contributors.length, contributors_new_30d: 0, avg_issue_close_time_hours: 0, avg_pr_merge_time_hours: 0, releases_90d: releases.length, commit_frequency_weekly: 0, code_frequency: { additions: 0, deletions: 0 }, }; } ``` ### Community Growth Metrics | Metrik | Tanim | Hedef | |--------|-------|-------| | Stars / Week | Haftalik yeni star | +50/hafta |
Auf GitHub ansehen
Diese SKILL.md ist sehr gross, daher zeigt SkillsMP hier nur den ersten Abschnitt. Auf GitHub ansehen