Add complete community documentation
- README.md: Product overview + issue tracker landing - SECURITY.md: Responsible disclosure policy - CODE_OF_CONDUCT.md: Community guidelines - CONTRIBUTING.md: How to contribute - SUPPORT.md: Comprehensive support guide - Issue templates: Bug, feature, support, docs, security All references updated to evercatch.dev domain.
This commit is contained in:
39
.env.example
39
.env.example
@@ -1,39 +0,0 @@
|
||||
# ─────────────────────────────────────────────
|
||||
# Evercatch — Environment Variables
|
||||
# Copy this file to .env and fill in values.
|
||||
# NEVER commit .env to version control.
|
||||
# ─────────────────────────────────────────────
|
||||
|
||||
# App
|
||||
APP_ENV=development
|
||||
APP_PORT=8000
|
||||
APP_SECRET_KEY=change-me
|
||||
|
||||
# Database — PostgreSQL
|
||||
POSTGRES_HOST=localhost
|
||||
POSTGRES_PORT=5432
|
||||
POSTGRES_DB=evercatch
|
||||
POSTGRES_USER=evercatch
|
||||
POSTGRES_PASSWORD=change-me
|
||||
|
||||
# Database — MongoDB
|
||||
MONGO_URI=mongodb://localhost:27017
|
||||
MONGO_DB=evercatch_events
|
||||
|
||||
# Redis
|
||||
REDIS_URL=redis://localhost:6379
|
||||
|
||||
# Stripe
|
||||
STRIPE_SECRET_KEY=sk_test_...
|
||||
STRIPE_WEBHOOK_SECRET=whsec_...
|
||||
STRIPE_PRICE_ID_INDIE=price_...
|
||||
STRIPE_PRICE_ID_PRO=price_...
|
||||
STRIPE_PRICE_ID_BUSINESS=price_...
|
||||
|
||||
# Providers
|
||||
SENDGRID_WEBHOOK_KEY=
|
||||
SHOPIFY_WEBHOOK_SECRET=
|
||||
GITHUB_WEBHOOK_SECRET=
|
||||
|
||||
# Internal
|
||||
BOT_ACCESS_TOKEN=
|
||||
46
.gitea/issue_template/bug_report.md
Normal file
46
.gitea/issue_template/bug_report.md
Normal file
@@ -0,0 +1,46 @@
|
||||
---
|
||||
name: 🐛 Bug Report
|
||||
about: Report a bug or unexpected behavior
|
||||
title: '[BUG] '
|
||||
labels: bug, status:investigating
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## Bug Description
|
||||
<!-- A clear description of what the bug is -->
|
||||
|
||||
## Steps to Reproduce
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
## Expected Behavior
|
||||
<!-- What you expected to happen -->
|
||||
|
||||
## Actual Behavior
|
||||
<!-- What actually happened -->
|
||||
|
||||
## Environment
|
||||
- **Subscription Tier**: Sandbox / Indie / Studio / Enterprise
|
||||
- **Endpoint Used**: (e.g., POST /api/v1/webhooks/stripe/...)
|
||||
- **Timestamp**: (e.g., 2026-02-13T10:30:00Z)
|
||||
- **Event ID** (if applicable): evt_...
|
||||
- **Browser** (if dashboard issue): Chrome / Firefox / Safari / Edge
|
||||
|
||||
## Screenshots / Logs
|
||||
<!-- If applicable, add screenshots or error logs -->
|
||||
```
|
||||
Paste logs here
|
||||
```
|
||||
|
||||
## Additional Context
|
||||
<!-- Any other context about the problem -->
|
||||
|
||||
## Workaround
|
||||
<!-- If you found a temporary workaround, share it here -->
|
||||
|
||||
---
|
||||
|
||||
**⚠️ SECURITY WARNING**
|
||||
Do NOT include API keys, secrets, or sensitive customer data.
|
||||
For security issues, email security@evercatch.dev instead.
|
||||
45
.gitea/issue_template/documentation.md
Normal file
45
.gitea/issue_template/documentation.md
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
name: 📚 Documentation Issue
|
||||
about: Report missing, incorrect, or unclear documentation
|
||||
title: '[DOCS] '
|
||||
labels: documentation
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## Documentation Page
|
||||
<!-- Link to the docs page with the issue -->
|
||||
https://docs.evercatch.dev/...
|
||||
|
||||
## Issue Type
|
||||
- [ ] Missing documentation
|
||||
- [ ] Incorrect information
|
||||
- [ ] Unclear/confusing explanation
|
||||
- [ ] Broken link
|
||||
- [ ] Code example doesn't work
|
||||
- [ ] Typo/grammar
|
||||
- [ ] Outdated information
|
||||
|
||||
## Description
|
||||
<!-- What's wrong with the docs? -->
|
||||
|
||||
## Current Content
|
||||
<!-- Quote the current problematic content -->
|
||||
```
|
||||
Current text/code here
|
||||
```
|
||||
|
||||
## Suggested Fix
|
||||
<!-- How would you improve it? -->
|
||||
```
|
||||
Suggested text/code here
|
||||
```
|
||||
|
||||
## Additional Context
|
||||
<!-- Screenshots, correct information, working examples, etc. -->
|
||||
|
||||
## Impact
|
||||
<!-- How does this affect users? -->
|
||||
- [ ] Critical - Causes errors if followed
|
||||
- [ ] High - Likely to confuse users
|
||||
- [ ] Medium - Could be clearer
|
||||
- [ ] Low - Minor improvement
|
||||
54
.gitea/issue_template/feature_request.md
Normal file
54
.gitea/issue_template/feature_request.md
Normal file
@@ -0,0 +1,54 @@
|
||||
---
|
||||
name: ✨ Feature Request
|
||||
about: Suggest a new feature or enhancement
|
||||
title: '[FEATURE] '
|
||||
labels: feature
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## Problem Statement
|
||||
<!-- What problem does this feature solve? -->
|
||||
|
||||
## Proposed Solution
|
||||
<!-- Describe your ideal solution -->
|
||||
|
||||
## Use Case
|
||||
<!-- How would you use this feature? Be specific. -->
|
||||
|
||||
**Example scenario:**
|
||||
```
|
||||
When I... [describe situation]
|
||||
I want to... [describe action]
|
||||
So that... [describe benefit]
|
||||
```
|
||||
|
||||
## Current Workaround
|
||||
<!-- How are you currently handling this? -->
|
||||
|
||||
## Tier Relevance
|
||||
<!-- Which subscription tier would benefit most? -->
|
||||
- [ ] Sandbox (Free)
|
||||
- [ ] Indie
|
||||
- [ ] Studio
|
||||
- [ ] Enterprise
|
||||
- [ ] All tiers
|
||||
|
||||
## Similar Features
|
||||
<!-- Have you seen this feature in other products? -->
|
||||
|
||||
## Additional Context
|
||||
<!-- Screenshots, mockups, examples from competitors, etc. -->
|
||||
|
||||
## Impact
|
||||
<!-- How important is this feature to you? -->
|
||||
- [ ] Critical - Blocking my business
|
||||
- [ ] High - Very useful
|
||||
- [ ] Medium - Nice to have
|
||||
- [ ] Low - Just an idea
|
||||
|
||||
## Willingness to Pay
|
||||
<!-- Would you upgrade your tier for this feature? -->
|
||||
- [ ] Yes, I would upgrade immediately
|
||||
- [ ] Yes, I would consider upgrading
|
||||
- [ ] No, but it would improve my experience
|
||||
- [ ] N/A - Already on Enterprise
|
||||
44
.gitea/issue_template/security_vulnerability.md
Normal file
44
.gitea/issue_template/security_vulnerability.md
Normal file
@@ -0,0 +1,44 @@
|
||||
---
|
||||
name: 🔐 Security Vulnerability
|
||||
about: Report a security issue (PRIVATE - use email instead)
|
||||
title: 'DO NOT USE - Email security@evercatch.dev'
|
||||
labels: security
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
# ⚠️ STOP - DO NOT USE THIS TEMPLATE
|
||||
|
||||
**Security vulnerabilities should NOT be reported publicly.**
|
||||
|
||||
Please email us instead: **security@evercatch.dev**
|
||||
|
||||
## Why?
|
||||
|
||||
Public disclosure of security issues can:
|
||||
- Put user data at risk
|
||||
- Allow attackers to exploit the vulnerability
|
||||
- Violate responsible disclosure practices
|
||||
|
||||
## What to Include in Your Email
|
||||
|
||||
- **Description** - What is the vulnerability?
|
||||
- **Steps to Reproduce** - How can we reproduce it?
|
||||
- **Impact** - What could an attacker do?
|
||||
- **Proof of Concept** - Code or screenshots (optional)
|
||||
- **Suggested Fix** - If you have one
|
||||
- **Your Contact Info** - For follow-up
|
||||
|
||||
## Our Commitment
|
||||
|
||||
- ✅ Response within 24 hours
|
||||
- ✅ Updates every 48 hours
|
||||
- ✅ Credit in security advisories (if desired)
|
||||
- ✅ Potential bug bounty (for critical issues)
|
||||
|
||||
## Security Policy
|
||||
|
||||
Read our full security policy: [SECURITY.md](../../SECURITY.md)
|
||||
|
||||
---
|
||||
|
||||
**Thank you for keeping Evercatch secure!** 🔒
|
||||
52
.gitea/issue_template/support_request.md
Normal file
52
.gitea/issue_template/support_request.md
Normal file
@@ -0,0 +1,52 @@
|
||||
---
|
||||
name: ❓ Support Request
|
||||
about: Get help with using Evercatch
|
||||
title: '[SUPPORT] '
|
||||
labels: question
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
## Issue Summary
|
||||
<!-- Brief description of what you need help with -->
|
||||
|
||||
## What I'm Trying to Do
|
||||
<!-- Describe your goal -->
|
||||
|
||||
## What I've Tried
|
||||
<!-- List what you've already attempted -->
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
## Account Information
|
||||
- **Email**: (your account email)
|
||||
- **User ID** (if known):
|
||||
- **Subscription Tier**: Sandbox / Indie / Studio / Enterprise
|
||||
|
||||
## Relevant Documentation
|
||||
<!-- Links to docs you've read -->
|
||||
- [ ] I've searched [docs.evercatch.dev](https://docs.evercatch.dev)
|
||||
- [ ] I've checked [existing issues](../../issues)
|
||||
- [ ] I've reviewed the [API docs](https://docs.evercatch.dev/api)
|
||||
|
||||
## Error Messages
|
||||
<!-- If applicable, paste any error messages -->
|
||||
```
|
||||
Paste error here
|
||||
```
|
||||
|
||||
## Questions
|
||||
1.
|
||||
2.
|
||||
|
||||
## Screenshots
|
||||
<!-- If applicable, add screenshots -->
|
||||
|
||||
---
|
||||
|
||||
**💡 TIP:** Before opening a support ticket, check:
|
||||
- [Documentation](https://docs.evercatch.dev)
|
||||
- [API Reference](https://docs.evercatch.dev/api)
|
||||
- [Existing Issues](../../issues)
|
||||
- [Status Page](https://status.evercatch.dev)
|
||||
47
.gitignore
vendored
47
.gitignore
vendored
@@ -1,47 +0,0 @@
|
||||
# Environment
|
||||
.env
|
||||
.env.*
|
||||
!.env.example
|
||||
|
||||
# Python
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*.pyo
|
||||
*.pyd
|
||||
.Python
|
||||
*.egg-info/
|
||||
dist/
|
||||
build/
|
||||
.venv/
|
||||
venv/
|
||||
*.log
|
||||
|
||||
# Node / Angular
|
||||
node_modules/
|
||||
dist/
|
||||
.angular/
|
||||
*.tsbuildinfo
|
||||
|
||||
# Docker
|
||||
.docker/
|
||||
|
||||
# IDE
|
||||
.vscode/
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Coverage
|
||||
.coverage
|
||||
htmlcov/
|
||||
coverage/
|
||||
*.lcov
|
||||
|
||||
# Secrets
|
||||
*.pem
|
||||
*.key
|
||||
*.p12
|
||||
*.pfx
|
||||
secrets/
|
||||
@@ -1,5 +0,0 @@
|
||||
# Evercatch Code Owners
|
||||
# These users are automatically requested for review on PRs.
|
||||
# Format: path @username
|
||||
|
||||
* @psmattas
|
||||
80
CODE_OF_CONDUCT.md
Normal file
80
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
We are committed to providing a welcoming, inclusive, and harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
||||
|
||||
## Our Standards
|
||||
|
||||
### ✅ Expected Behavior
|
||||
|
||||
- Be respectful and professional
|
||||
- Use welcoming and inclusive language
|
||||
- Accept constructive feedback gracefully
|
||||
- Focus on what's best for the community
|
||||
- Show empathy towards others
|
||||
- Help others when you can
|
||||
|
||||
### ❌ Unacceptable Behavior
|
||||
|
||||
- Harassment, discrimination, or hate speech
|
||||
- Trolling, insulting, or inflammatory comments
|
||||
- Personal or political attacks
|
||||
- Publishing others' private information
|
||||
- Spam or excessive self-promotion
|
||||
- Any conduct that would be inappropriate in a professional setting
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies to:
|
||||
|
||||
- Issue tracker discussions
|
||||
- Pull request comments
|
||||
- Community forums
|
||||
- Email communications
|
||||
- Social media interactions
|
||||
- Any Evercatch community space
|
||||
|
||||
## Enforcement
|
||||
|
||||
### Reporting
|
||||
|
||||
If you experience or witness unacceptable behavior:
|
||||
|
||||
**Email:** [conduct@evercatch.dev](mailto:conduct@evercatch.dev)
|
||||
|
||||
Include:
|
||||
- Description of the incident
|
||||
- Date and time
|
||||
- Links to evidence (if applicable)
|
||||
- Your contact information
|
||||
|
||||
### Response
|
||||
|
||||
We will:
|
||||
|
||||
1. **Acknowledge** - Respond within 24 hours
|
||||
2. **Investigate** - Review the incident
|
||||
3. **Act** - Take appropriate action
|
||||
4. **Follow-up** - Update you on the outcome
|
||||
|
||||
### Consequences
|
||||
|
||||
Violations may result in:
|
||||
|
||||
- **Warning** - First offense, minor violation
|
||||
- **Temporary Ban** - Repeated violations
|
||||
- **Permanent Ban** - Severe or repeated violations
|
||||
- **Legal Action** - For threats, harassment, or illegal activity
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org/), version 2.1.
|
||||
|
||||
## Questions?
|
||||
|
||||
Email [conduct@evercatch.dev](mailto:conduct@evercatch.dev)
|
||||
|
||||
---
|
||||
|
||||
**Thank you for helping make Evercatch a welcoming community!** ❤️
|
||||
317
CONTRIBUTING.md
317
CONTRIBUTING.md
@@ -1,63 +1,308 @@
|
||||
# Contributing to Evercatch
|
||||
|
||||
Thank you for contributing. Please read this guide before opening issues or PRs.
|
||||
Thank you for your interest in contributing to Evercatch! 🎉
|
||||
|
||||
While Evercatch is currently **closed-source**, we welcome community contributions in several ways.
|
||||
|
||||
---
|
||||
|
||||
## 🌿 Branching
|
||||
## 🐛 Bug Reports
|
||||
|
||||
Branch from `main` using the format `EC-ID-short-description`.
|
||||
Found a bug? Please report it!
|
||||
|
||||
```bash
|
||||
git checkout -b EC-12-implement-stripe-inbound
|
||||
```
|
||||
**Before reporting:**
|
||||
1. Search [existing issues](../../issues) to avoid duplicates
|
||||
2. Check [docs.evercatch.dev](https://docs.evercatch.dev) for solutions
|
||||
3. Verify it's reproducible
|
||||
|
||||
**How to report:**
|
||||
1. Use our [Bug Report Template](../../issues/new?template=bug_report.md)
|
||||
2. Include clear steps to reproduce
|
||||
3. Provide environment details (tier, timestamps, event IDs)
|
||||
4. **Never include** API keys or sensitive data
|
||||
|
||||
**What happens next:**
|
||||
- We'll acknowledge within 24-48 hours
|
||||
- We'll add appropriate labels
|
||||
- We'll investigate and provide updates
|
||||
- Critical bugs are prioritized
|
||||
|
||||
---
|
||||
|
||||
## ✨ Commit Messages
|
||||
## ✨ Feature Requests
|
||||
|
||||
Follow the Conventional Commits standard prefixed with the issue ID.
|
||||
Have an idea? We'd love to hear it!
|
||||
|
||||
**Format:** `EC-00: <type>(scope): message`
|
||||
**Before requesting:**
|
||||
1. Check the [Public Roadmap](https://roadmap.evercatch.dev)
|
||||
2. Search [existing requests](../../issues?q=is%3Aissue+label%3Afeature)
|
||||
3. Think about the use case and impact
|
||||
|
||||
| Type | Description |
|
||||
| :--- | :--- |
|
||||
| `feat` | New feature |
|
||||
| `fix` | Bug fix |
|
||||
| `docs` | Documentation |
|
||||
| `style` | Formatting |
|
||||
| `refactor` | Refactor |
|
||||
| `perf` | Performance |
|
||||
| `test` | Tests |
|
||||
| `build` | Build system |
|
||||
| `ci` | CI/CD config |
|
||||
| `chore` | Maintenance |
|
||||
**How to request:**
|
||||
1. Use our [Feature Request Template](../../issues/new?template=feature_request.md)
|
||||
2. Explain the problem it solves
|
||||
3. Describe your ideal solution
|
||||
4. Share your use case
|
||||
5. Mention which tier would benefit
|
||||
|
||||
**Examples:**
|
||||
- `EC-12: feat(webhooks): implement stripe inbound endpoint`
|
||||
- `EC-18: fix(relay): resolve double-delivery on retry`
|
||||
**What happens next:**
|
||||
- We'll review and discuss with you
|
||||
- Popular requests get upvoted
|
||||
- We'll add to roadmap if aligned with our vision
|
||||
- You'll be notified when we start building it
|
||||
|
||||
---
|
||||
|
||||
## 🔍 Pull Requests
|
||||
## 📚 Documentation
|
||||
|
||||
- Link the issue in your PR description
|
||||
- All CI checks must pass before requesting review
|
||||
- Minimum one approval required to merge
|
||||
- Keep PRs focused — one feature or fix per PR
|
||||
Help us improve our docs!
|
||||
|
||||
**Ways to contribute:**
|
||||
- Report unclear or missing documentation
|
||||
- Suggest better examples
|
||||
- Point out broken links
|
||||
- Fix typos or grammar
|
||||
|
||||
**How to contribute:**
|
||||
1. Use our [Documentation Template](../../issues/new?template=documentation.md)
|
||||
2. Link to the specific docs page
|
||||
3. Explain what's wrong
|
||||
4. Suggest improvements
|
||||
|
||||
---
|
||||
|
||||
## 🏷️ Labels
|
||||
## 🧪 Beta Testing
|
||||
|
||||
Apply the appropriate labels to your issue or PR:
|
||||
Want early access to new features?
|
||||
|
||||
- `type:` — what kind of change is this
|
||||
- `priority:` — how urgent is it
|
||||
- `status:` — current state of the issue or PR
|
||||
**Join our beta program:**
|
||||
1. Sign up at [evercatch.dev/beta](https://evercatch.dev/beta)
|
||||
2. Get invited to private beta releases
|
||||
3. Test new features before they're public
|
||||
4. Provide feedback directly to the team
|
||||
|
||||
**Beta testers get:**
|
||||
- ✨ Early access to features
|
||||
- 🎯 Direct line to product team
|
||||
- 🎁 Swag and perks
|
||||
- 🏆 Recognition in release notes
|
||||
|
||||
---
|
||||
|
||||
## ❓ Questions
|
||||
## 💬 Community Support
|
||||
|
||||
Open an issue with the `type: chore` label or reach out via the org README.
|
||||
Help other users in the community!
|
||||
|
||||
**Ways to help:**
|
||||
- Answer questions in issues
|
||||
- Share your integration examples
|
||||
- Write blog posts about Evercatch
|
||||
- Create video tutorials
|
||||
|
||||
**Recognition:**
|
||||
Top contributors get:
|
||||
- 🎖️ "Community Helper" badge
|
||||
- 💎 Free tier upgrades
|
||||
- 🎁 Swag package
|
||||
- 🌟 Featured in our newsletter
|
||||
|
||||
---
|
||||
|
||||
## 🔐 Security
|
||||
|
||||
**Found a security vulnerability?**
|
||||
|
||||
**DO NOT** open a public issue. Instead:
|
||||
|
||||
📧 **Email:** [security@evercatch.dev](mailto:security@evercatch.dev)
|
||||
|
||||
See our [Security Policy](SECURITY.md) for details.
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Integration Examples
|
||||
|
||||
Share how you're using Evercatch!
|
||||
|
||||
**We're looking for:**
|
||||
- Code examples in different languages
|
||||
- Integration guides for specific providers
|
||||
- Creative use cases
|
||||
- Performance optimizations
|
||||
|
||||
**How to share:**
|
||||
1. Open a [Feature Request](../../issues/new?template=feature_request.md)
|
||||
2. Label it as "integration-example"
|
||||
3. Share your code (sanitized of secrets!)
|
||||
4. Explain the use case
|
||||
|
||||
**We'll feature the best examples on:**
|
||||
- [docs.evercatch.dev](https://docs.evercatch.dev)
|
||||
- Our blog
|
||||
- Social media
|
||||
|
||||
---
|
||||
|
||||
## 📝 Blog Posts & Tutorials
|
||||
|
||||
Written about Evercatch?
|
||||
|
||||
**Let us know!** We'll:
|
||||
- Share it on our blog
|
||||
- Promote it on social media
|
||||
- Link to it from our docs
|
||||
- Send you swag 🎁
|
||||
|
||||
**Email:** [community@evercatch.dev](mailto:community@evercatch.dev)
|
||||
|
||||
**Include:**
|
||||
- Link to your post
|
||||
- Brief summary
|
||||
- Your name/company
|
||||
- Preferred social handle
|
||||
|
||||
---
|
||||
|
||||
## 🎨 Design Feedback
|
||||
|
||||
Got UI/UX suggestions?
|
||||
|
||||
**We love design feedback:**
|
||||
- Dashboard improvements
|
||||
- API response formats
|
||||
- Documentation layout
|
||||
- Error messages
|
||||
|
||||
**How to share:**
|
||||
1. Open a [Feature Request](../../issues/new?template=feature_request.md)
|
||||
2. Include screenshots or mockups
|
||||
3. Explain the improvement
|
||||
4. Share design rationale
|
||||
|
||||
---
|
||||
|
||||
## 💡 Best Practices
|
||||
|
||||
### Writing Good Issues
|
||||
|
||||
**Do:**
|
||||
- ✅ Use clear, descriptive titles
|
||||
- ✅ Include all requested template information
|
||||
- ✅ Provide context and examples
|
||||
- ✅ Be respectful and professional
|
||||
- ✅ Follow up on questions
|
||||
|
||||
**Don't:**
|
||||
- ❌ Create duplicate issues
|
||||
- ❌ Ask multiple unrelated questions in one issue
|
||||
- ❌ Bump issues without new information
|
||||
- ❌ Include API keys or sensitive data
|
||||
- ❌ Demand features or fixes
|
||||
|
||||
### Communication Guidelines
|
||||
|
||||
**Be:**
|
||||
- 🤝 Respectful and professional
|
||||
- 📝 Clear and concise
|
||||
- 💭 Open to discussion
|
||||
- 🙏 Patient with response times
|
||||
- ❤️ Kind to other community members
|
||||
|
||||
**Remember:**
|
||||
- We're a small team
|
||||
- Enterprise users get priority support
|
||||
- Free tier users may wait longer
|
||||
- Some features may not align with our roadmap
|
||||
- We appreciate your understanding
|
||||
|
||||
---
|
||||
|
||||
## 🏆 Recognition
|
||||
|
||||
### Hall of Fame
|
||||
|
||||
Top contributors get featured in our:
|
||||
- Monthly newsletter
|
||||
- Annual report
|
||||
- About page
|
||||
- Conference talks
|
||||
|
||||
### Contributor Tiers
|
||||
|
||||
**🥉 Bronze** (1-5 contributions)
|
||||
- Thank you in release notes
|
||||
- Digital badge
|
||||
|
||||
**🥈 Silver** (6-15 contributions)
|
||||
- Free Indie plan (1 year)
|
||||
- Swag package
|
||||
- Featured in newsletter
|
||||
|
||||
**🥇 Gold** (16+ contributions)
|
||||
- Free Studio plan (1 year)
|
||||
- Premium swag
|
||||
- Video call with founders
|
||||
- Listed as "Top Contributor"
|
||||
|
||||
---
|
||||
|
||||
## 📅 Release Process
|
||||
|
||||
**Our schedule:**
|
||||
- 🚀 **Major releases** - Quarterly
|
||||
- 🔄 **Minor releases** - Monthly
|
||||
- 🐛 **Bug fixes** - Weekly
|
||||
- 🔥 **Hotfixes** - As needed
|
||||
|
||||
**Stay updated:**
|
||||
- [Changelog](https://changelog.evercatch.dev)
|
||||
- [Twitter](https://twitter.com/evercatch)
|
||||
- [Newsletter](https://evercatch.dev/newsletter)
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Code of Conduct
|
||||
|
||||
All contributors must follow our [Code of Conduct](CODE_OF_CONDUCT.md).
|
||||
|
||||
**Summary:**
|
||||
- Be respectful and inclusive
|
||||
- No harassment or discrimination
|
||||
- Focus on constructive feedback
|
||||
- Help create a welcoming community
|
||||
|
||||
**Violations:** Report to [conduct@evercatch.dev](mailto:conduct@evercatch.dev)
|
||||
|
||||
---
|
||||
|
||||
## ❓ Questions?
|
||||
|
||||
**Not sure where to start?**
|
||||
|
||||
- 📚 Read the [docs](https://docs.evercatch.dev)
|
||||
- 💬 Ask in [issues](../../issues)
|
||||
- 📧 Email [community@evercatch.dev](mailto:community@evercatch.dev)
|
||||
- 🐦 Tweet [@evercatch](https://twitter.com/evercatch)
|
||||
|
||||
---
|
||||
|
||||
## 🎁 Thank You!
|
||||
|
||||
Every contribution matters, no matter how small:
|
||||
- 🐛 Bug reports help us improve
|
||||
- ✨ Feature ideas shape our roadmap
|
||||
- 📚 Documentation helps other users
|
||||
- 💬 Community support makes everyone's experience better
|
||||
|
||||
**We appreciate you!** ❤️
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
<strong>Built with ❤️ by developers, for developers</strong>
|
||||
<br/>
|
||||
<a href="https://evercatch.dev">Website</a> •
|
||||
<a href="https://docs.evercatch.dev">Docs</a> •
|
||||
<a href="https://roadmap.evercatch.dev">Roadmap</a> •
|
||||
<a href="https://status.evercatch.dev">Status</a>
|
||||
</p>
|
||||
|
||||
244
README.md
244
README.md
@@ -1,72 +1,230 @@
|
||||
# 📦 Repository Name
|
||||
# 🎯 Evercatch
|
||||
|
||||
> Short one-line description of what this repository does.
|
||||
> **The webhook infrastructure platform for developers who want simplicity without sacrificing power.**
|
||||
|
||||
Evercatch is a modern webhook ingestion and forwarding platform that captures, normalizes, and reliably delivers webhooks from any source to any destination. Built for developers, by developers.
|
||||
|
||||
---
|
||||
|
||||
## 🧭 Overview
|
||||
## 📋 What is Evercatch?
|
||||
|
||||
Describe what this service/module is responsible for within the Evercatch platform.
|
||||
Evercatch sits between your webhook providers (Stripe, SendGrid, GitHub, etc.) and your application, giving you:
|
||||
|
||||
- **📦 Unified Schema** - One normalized format for all webhook providers
|
||||
- **🔄 Reliable Delivery** - Automatic retries with exponential backoff
|
||||
- **📊 Event History** - Search, filter, and replay webhooks up to 90 days
|
||||
- **⚡ Lightning Fast** - Sub-100ms webhook ingestion
|
||||
- **🔐 Secure by Design** - API key authentication, filtered sensitive data
|
||||
- **💰 Usage-Based Pricing** - Pay only for what you use, with generous free tier
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Tech Stack
|
||||
## 💡 Why Evercatch?
|
||||
|
||||
| Layer | Technology |
|
||||
| :--- | :--- |
|
||||
| Language | — |
|
||||
| Framework | — |
|
||||
| Key Dependencies | — |
|
||||
### The Problem
|
||||
You're integrating with multiple services (Stripe for payments, SendGrid for emails, Shopify for orders). Each has:
|
||||
- Different webhook formats
|
||||
- Different retry behaviors
|
||||
- Different ways to verify authenticity
|
||||
- No central dashboard to debug issues
|
||||
|
||||
**You spend more time managing webhooks than building your product.**
|
||||
|
||||
### The Evercatch Solution
|
||||
Point all your webhooks at Evercatch. We:
|
||||
1. ✅ Receive and validate webhooks from any provider
|
||||
2. ✅ Normalize them to a unified schema
|
||||
3. ✅ Store them with intelligent retention (7-90 days)
|
||||
4. ✅ Forward them to your app with automatic retries
|
||||
5. ✅ Give you a beautiful dashboard to search, filter, and replay events
|
||||
|
||||
**You focus on your product. We handle the webhooks.**
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Getting Started
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Docker & Docker Compose
|
||||
- Node.js / Python (specify version)
|
||||
|
||||
### Local Development
|
||||
## 🚀 Quick Start
|
||||
|
||||
### 1. Sign Up
|
||||
```bash
|
||||
# Clone the repo
|
||||
git clone https://git.psmattas.com/Evercatch/REPO_NAME.git
|
||||
cd REPO_NAME
|
||||
|
||||
# Copy environment variables
|
||||
cp .env.example .env
|
||||
|
||||
# Start services
|
||||
docker compose up -d
|
||||
curl -X POST https://api.evercatch.dev/api/v1/auth/signup \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"email": "you@example.com",
|
||||
"full_name": "Your Name",
|
||||
"country": "IE"
|
||||
}'
|
||||
```
|
||||
|
||||
---
|
||||
**Response:**
|
||||
```json
|
||||
{
|
||||
"user": { "id": "550e8400-...", "email": "you@example.com" },
|
||||
"api_key": {
|
||||
"api_key": "ec_live_abc123...",
|
||||
"prefix": "ec_live_abc1"
|
||||
},
|
||||
"subscription": { "tier": "sandbox", "status": "trialing" }
|
||||
}
|
||||
```
|
||||
|
||||
## 🌿 Branching & Commits
|
||||
### 2. Point Your Webhooks at Evercatch
|
||||
```
|
||||
https://api.evercatch.dev/api/v1/webhooks/stripe/550e8400-...
|
||||
```
|
||||
|
||||
All work follows the Evercatch contribution guide defined in the org README.
|
||||
**Example: Configure Stripe**
|
||||
1. Go to [Stripe Dashboard → Webhooks](https://dashboard.stripe.com/webhooks)
|
||||
2. Click "Add Endpoint"
|
||||
3. Enter: `https://api.evercatch.dev/api/v1/webhooks/stripe/550e8400-...`
|
||||
4. Select events
|
||||
5. Add header: `X-API-Key: ec_live_abc123...`
|
||||
|
||||
**Branch format:** `EC-ID-short-description`
|
||||
**Commit format:** `EC-00: type(scope): message`
|
||||
### 3. Configure Your Destination
|
||||
```bash
|
||||
curl -X POST https://api.evercatch.dev/api/v1/destinations \
|
||||
-H "X-API-Key: ec_live_abc123..." \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"name": "Production API",
|
||||
"url": "https://yourapp.com/webhooks",
|
||||
"providers": ["stripe"],
|
||||
"event_types": ["payment.*"]
|
||||
}'
|
||||
```
|
||||
|
||||
See [Evercatch Org README](https://git.psmattas.com/Evercatch) for full conventions.
|
||||
### 4. That's It! 🎉
|
||||
Evercatch now:
|
||||
- ✅ Receives webhooks from Stripe
|
||||
- ✅ Normalizes them to a unified schema
|
||||
- ✅ Stores them for 24 hours (Sandbox tier)
|
||||
- ✅ Forwards them to `yourapp.com/webhooks`
|
||||
- ✅ Retries on failure
|
||||
|
||||
---
|
||||
|
||||
## ⚙️ CI/CD
|
||||
## 📊 Pricing
|
||||
|
||||
Automated via Jenkins. Merges to `main` trigger staging deployments.
|
||||
| Plan | Price | Events/mo | Retention | Destinations | Overage |
|
||||
|------|-------|-----------|-----------|--------------|---------|
|
||||
| **Sandbox** | €0 | 100k | 24 hours | 2 | — |
|
||||
| **Indie** | €29 | 1M | 7 days | 10 | €0.50/100k |
|
||||
| **Studio** | €99 | 10M | 30 days | Unlimited | €0.30/100k |
|
||||
| **Enterprise** | €299 | 50M | 90 days | Unlimited | €0.20/100k |
|
||||
|
||||
| Pipeline | Status |
|
||||
| :--- | :---: |
|
||||
| Build |  |
|
||||
| Lint |  |
|
||||
| Test |  |
|
||||
**All plans include:**
|
||||
- ✅ Unlimited API keys
|
||||
- ✅ Real-time event forwarding
|
||||
- ✅ Automatic retries
|
||||
- ✅ 99.9% uptime SLA
|
||||
- ✅ Support via email
|
||||
|
||||
**Studio+ includes:**
|
||||
- ✨ Full-text search
|
||||
- ✨ Advanced filtering
|
||||
- ✨ Event replay
|
||||
- ✨ Custom retention
|
||||
|
||||
**Enterprise includes:**
|
||||
- 🚀 Priority support
|
||||
- 🚀 Custom SLAs
|
||||
- 🚀 Dedicated Slack channel
|
||||
- 🚀 SSO/SAML
|
||||
- 🚀 Custom contracts
|
||||
|
||||
[**→ Start Free**](https://evercatch.dev/signup) · [**→ View Full Pricing**](https://evercatch.dev/pricing)
|
||||
|
||||
---
|
||||
|
||||
## 📄 License
|
||||
## 🐛 Found a Bug?
|
||||
|
||||
**Copyright © 2026 Evercatch.**
|
||||
Proprietary and confidential. Unauthorised distribution is strictly prohibited.
|
||||
We want to fix it! **[→ Report a Bug](../../issues/new?template=bug_report.md)**
|
||||
|
||||
Please include:
|
||||
- Clear steps to reproduce
|
||||
- Expected vs actual behavior
|
||||
- Your subscription tier
|
||||
- Event IDs (if applicable)
|
||||
|
||||
**Do NOT include API keys or sensitive data.**
|
||||
|
||||
---
|
||||
|
||||
## ✨ Have a Feature Idea?
|
||||
|
||||
We'd love to hear it! **[→ Request a Feature](../../issues/new?template=feature_request.md)**
|
||||
|
||||
Tell us:
|
||||
- What problem it solves
|
||||
- How you'd use it
|
||||
- Which tier would benefit
|
||||
|
||||
---
|
||||
|
||||
## 🔐 Security Vulnerability?
|
||||
|
||||
**DO NOT open a public issue.**
|
||||
|
||||
**Email:** [security@evercatch.dev](mailto:security@evercatch.dev)
|
||||
|
||||
We'll respond within 24 hours. See our [Security Policy](SECURITY.md) for details.
|
||||
|
||||
---
|
||||
|
||||
## ❓ Need Help?
|
||||
|
||||
- 📚 **Documentation**: [docs.evercatch.dev](https://docs.evercatch.dev)
|
||||
- 📧 **Email Support**: [support@evercatch.dev](mailto:support@evercatch.dev)
|
||||
- 💳 **Billing**: [billing@evercatch.dev](mailto:billing@evercatch.dev)
|
||||
- **[→ Open a Support Ticket](../../issues/new?template=support_request.md)**
|
||||
|
||||
---
|
||||
|
||||
## 📚 Resources
|
||||
|
||||
- **Documentation:** [docs.evercatch.dev](https://docs.evercatch.dev)
|
||||
- **API Reference:** [docs.evercatch.dev/api](https://docs.evercatch.dev/api)
|
||||
- **Status Page:** [status.evercatch.dev](https://status.evercatch.dev)
|
||||
- **Blog:** [blog.evercatch.dev](https://blog.evercatch.dev)
|
||||
- **Roadmap:** [roadmap.evercatch.dev](https://roadmap.evercatch.dev)
|
||||
- **Changelog:** [changelog.evercatch.dev](https://changelog.evercatch.dev)
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Contributing
|
||||
|
||||
We welcome community contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for:
|
||||
- Bug reports
|
||||
- Feature requests
|
||||
- Documentation improvements
|
||||
- Beta testing
|
||||
- Integration examples
|
||||
|
||||
---
|
||||
|
||||
## 📜 Code of Conduct
|
||||
|
||||
All community members must follow our [Code of Conduct](CODE_OF_CONDUCT.md).
|
||||
|
||||
**TL;DR:** Be respectful, professional, and kind. No harassment, discrimination, or spam.
|
||||
|
||||
**Report violations:** [conduct@evercatch.dev](mailto:conduct@evercatch.dev)
|
||||
|
||||
---
|
||||
|
||||
## ⚖️ Legal
|
||||
|
||||
- **Terms of Service:** [evercatch.dev/terms](https://evercatch.dev/terms)
|
||||
- **Privacy Policy:** [evercatch.dev/privacy](https://evercatch.dev/privacy)
|
||||
- **SLA:** [evercatch.dev/sla](https://evercatch.dev/sla)
|
||||
- **Acceptable Use:** [evercatch.dev/acceptable-use](https://evercatch.dev/acceptable-use)
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
<strong>Evercatch - No webhook left behind</strong>
|
||||
<br/>
|
||||
<a href="https://evercatch.dev">Website</a> •
|
||||
<a href="https://docs.evercatch.dev">Docs</a> •
|
||||
<a href="https://app.evercatch.dev">Dashboard</a> •
|
||||
<a href="https://status.evercatch.dev">Status</a>
|
||||
</p>
|
||||
|
||||
105
SECURITY.md
105
SECURITY.md
@@ -2,23 +2,98 @@
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
If you discover a security vulnerability in any Evercatch repository,
|
||||
please do **not** open a public issue.
|
||||
**We take security seriously.** If you discover a security vulnerability, please report it responsibly.
|
||||
|
||||
Report it privately to: **security@evercatch.io**
|
||||
### 🔒 How to Report
|
||||
|
||||
Include:
|
||||
- A description of the vulnerability
|
||||
- Steps to reproduce
|
||||
- Potential impact
|
||||
- Any suggested fixes if available
|
||||
**Email:** [security@evercatch.dev](mailto:security@evercatch.dev)
|
||||
|
||||
We will acknowledge receipt within 48 hours and aim to release a fix
|
||||
within 14 days depending on severity.
|
||||
**DO NOT:**
|
||||
- ❌ Open a public GitHub/Gitea issue
|
||||
- ❌ Disclose the vulnerability publicly
|
||||
- ❌ Exploit the vulnerability
|
||||
|
||||
## Supported Versions
|
||||
**DO:**
|
||||
- ✅ Email us with detailed information
|
||||
- ✅ Give us reasonable time to fix it
|
||||
- ✅ Follow responsible disclosure practices
|
||||
|
||||
| Version | Supported |
|
||||
| :--- | :---: |
|
||||
| Latest `main` | ✅ |
|
||||
| Older releases | ❌ |
|
||||
### 📧 What to Include
|
||||
|
||||
Please include as much information as possible:
|
||||
|
||||
- **Description** - What is the vulnerability?
|
||||
- **Impact** - What could an attacker do?
|
||||
- **Steps to Reproduce** - How can we reproduce it?
|
||||
- **Proof of Concept** - Code, screenshots, or examples
|
||||
- **Suggested Fix** - If you have ideas
|
||||
- **Your Contact Info** - For follow-up questions
|
||||
|
||||
### ⏱️ Our Response Process
|
||||
|
||||
1. **Acknowledgment** - We'll respond within 24 hours
|
||||
2. **Assessment** - We'll evaluate severity and impact
|
||||
3. **Updates** - We'll provide updates every 48 hours
|
||||
4. **Fix** - We'll develop and test a patch
|
||||
5. **Disclosure** - We'll coordinate public disclosure with you
|
||||
6. **Credit** - We'll credit you in our security advisory (if desired)
|
||||
|
||||
### 🎯 Severity Levels
|
||||
|
||||
| Level | Description | Response Time |
|
||||
|-------|-------------|---------------|
|
||||
| **Critical** | Data breach, RCE, privilege escalation | 24 hours |
|
||||
| **High** | Auth bypass, SQL injection, XSS | 48 hours |
|
||||
| **Medium** | CSRF, info disclosure, DoS | 1 week |
|
||||
| **Low** | Security misconfigurations | 2 weeks |
|
||||
|
||||
### 💰 Bug Bounty Program
|
||||
|
||||
We currently don't have a formal bug bounty program, but we may provide:
|
||||
|
||||
- 🎁 Swag (t-shirts, stickers)
|
||||
- 💳 Free subscription upgrades
|
||||
- 💵 Monetary rewards for critical vulnerabilities (case-by-case)
|
||||
- 🏆 Public recognition (if desired)
|
||||
|
||||
### ✅ In Scope
|
||||
|
||||
- API endpoints (api.evercatch.dev)
|
||||
- Web dashboard (app.evercatch.dev)
|
||||
- Authentication/authorization
|
||||
- Data storage and access controls
|
||||
- Webhook forwarding logic
|
||||
- Billing system
|
||||
|
||||
### ❌ Out of Scope
|
||||
|
||||
- Social engineering attacks
|
||||
- Physical attacks
|
||||
- DoS/DDoS attacks
|
||||
- Spam or abuse of service
|
||||
- Issues in third-party services (Stripe, SendGrid, etc.)
|
||||
- Theoretical vulnerabilities without proof of concept
|
||||
|
||||
### 🛡️ Security Measures We Take
|
||||
|
||||
- **Encryption** - TLS 1.3 in transit, AES-256 at rest
|
||||
- **Authentication** - API keys hashed with bcrypt
|
||||
- **Rate Limiting** - Per-tier limits prevent abuse
|
||||
- **Input Validation** - All inputs sanitized
|
||||
- **Monitoring** - 24/7 monitoring for suspicious activity
|
||||
- **Audits** - Regular security audits
|
||||
- **Compliance** - SOC2 Type II (planned Q2 2026)
|
||||
|
||||
### 📜 Security Advisories
|
||||
|
||||
Past security advisories: [evercatch.dev/security](https://evercatch.dev/security)
|
||||
|
||||
### 📞 Contact
|
||||
|
||||
- **Security Team:** security@evercatch.dev
|
||||
- **PGP Key:** [Download](https://evercatch.dev/pgp)
|
||||
- **Status Page:** [status.evercatch.dev](https://status.evercatch.dev)
|
||||
|
||||
---
|
||||
|
||||
**Thank you for helping keep Evercatch and our users safe!** 🔐
|
||||
|
||||
244
SUPPORT.md
Normal file
244
SUPPORT.md
Normal file
@@ -0,0 +1,244 @@
|
||||
# Getting Support
|
||||
|
||||
Need help with Evercatch? We're here for you! 🙋
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Quick Links
|
||||
|
||||
- 📚 **Documentation**: [docs.evercatch.dev](https://docs.evercatch.dev)
|
||||
- 🔍 **API Reference**: [docs.evercatch.dev/api](https://docs.evercatch.dev/api)
|
||||
- 📊 **Status Page**: [status.evercatch.dev](https://status.evercatch.dev)
|
||||
- 🗺️ **Roadmap**: [roadmap.evercatch.dev](https://roadmap.evercatch.dev)
|
||||
- 📝 **Changelog**: [changelog.evercatch.dev](https://changelog.evercatch.dev)
|
||||
|
||||
---
|
||||
|
||||
## 📚 Self-Service Resources
|
||||
|
||||
**Before contacting support, try these:**
|
||||
|
||||
### Documentation
|
||||
- [Getting Started Guide](https://docs.evercatch.dev/getting-started)
|
||||
- [Integration Guides](https://docs.evercatch.dev/integrations)
|
||||
- [API Reference](https://docs.evercatch.dev/api)
|
||||
- [Troubleshooting](https://docs.evercatch.dev/troubleshooting)
|
||||
- [FAQ](https://docs.evercatch.dev/faq)
|
||||
|
||||
### Common Issues
|
||||
- [Webhook not being received?](https://docs.evercatch.dev/troubleshooting/webhook-not-received)
|
||||
- [Forwarding failed?](https://docs.evercatch.dev/troubleshooting/forwarding-failed)
|
||||
- [Rate limited?](https://docs.evercatch.dev/troubleshooting/rate-limits)
|
||||
- [Authentication errors?](https://docs.evercatch.dev/troubleshooting/auth-errors)
|
||||
|
||||
---
|
||||
|
||||
## 💬 Community Support
|
||||
|
||||
**Free for all users**
|
||||
|
||||
### Issue Tracker
|
||||
Search or create issues for:
|
||||
- 🐛 [Bug Reports](../../issues?q=label%3Abug)
|
||||
- ✨ [Feature Requests](../../issues?q=label%3Afeature)
|
||||
- ❓ [Questions](../../issues?q=label%3Aquestion)
|
||||
|
||||
**[→ Search Issues](../../issues)** · **[→ Ask a Question](../../issues/new?template=support_request.md)**
|
||||
|
||||
### Community Forum
|
||||
- Ask questions
|
||||
- Share tips and tricks
|
||||
- Connect with other users
|
||||
- **[→ Join Community](https://community.evercatch.dev)**
|
||||
|
||||
---
|
||||
|
||||
## 📧 Email Support
|
||||
|
||||
### General Support
|
||||
**Email:** [support@evercatch.dev](mailto:support@evercatch.dev)
|
||||
|
||||
**Response times by tier:**
|
||||
- **Sandbox**: 3-5 business days
|
||||
- **Indie**: 2-3 business days
|
||||
- **Studio**: 1-2 business days
|
||||
- **Enterprise**: 4 hours (SLA)
|
||||
|
||||
**What to include:**
|
||||
- Your account email or user ID
|
||||
- Subscription tier
|
||||
- Clear description of the issue
|
||||
- Steps to reproduce
|
||||
- Event IDs or timestamps (if applicable)
|
||||
- What you've already tried
|
||||
|
||||
### Billing Support
|
||||
**Email:** [billing@evercatch.dev](mailto:billing@evercatch.dev)
|
||||
|
||||
For questions about:
|
||||
- Invoices and receipts
|
||||
- Payment methods
|
||||
- Subscription changes
|
||||
- Overage charges
|
||||
- Refund requests
|
||||
|
||||
**Response time:** 1-2 business days
|
||||
|
||||
### Account Issues
|
||||
**Email:** [accounts@evercatch.dev](mailto:accounts@evercatch.dev)
|
||||
|
||||
For issues with:
|
||||
- Login problems
|
||||
- Password resets
|
||||
- Email changes
|
||||
- Account deletion
|
||||
- Data exports
|
||||
|
||||
**Response time:** 1 business day
|
||||
|
||||
---
|
||||
|
||||
## 🚨 Urgent Issues
|
||||
|
||||
### Service Outage
|
||||
1. Check [status.evercatch.dev](https://status.evercatch.dev)
|
||||
2. Subscribe to status updates
|
||||
3. Email [urgent@evercatch.dev](mailto:urgent@evercatch.dev) (Enterprise only)
|
||||
|
||||
### Security Vulnerability
|
||||
**DO NOT use public support channels**
|
||||
|
||||
**Email:** [security@evercatch.dev](mailto:security@evercatch.dev)
|
||||
|
||||
See [SECURITY.md](SECURITY.md) for full policy.
|
||||
|
||||
---
|
||||
|
||||
## 🏢 Enterprise Support
|
||||
|
||||
**For Enterprise customers only**
|
||||
|
||||
### Dedicated Support
|
||||
- 🎯 Dedicated Slack channel
|
||||
- 📞 Phone support
|
||||
- ⚡ 4-hour response SLA
|
||||
- 🔧 Custom integration help
|
||||
- 📊 Quarterly business reviews
|
||||
|
||||
### Contact Your Team
|
||||
- **Account Manager**: Your dedicated contact
|
||||
- **Enterprise Support**: [enterprise@evercatch.dev](mailto:enterprise@evercatch.dev)
|
||||
- **Slack**: #evercatch-yourcompany (invite sent on onboarding)
|
||||
|
||||
---
|
||||
|
||||
## 📞 Contact Methods by Issue Type
|
||||
|
||||
| Issue Type | Best Channel | Response Time |
|
||||
|------------|--------------|---------------|
|
||||
| Bug Report | [Issue Tracker](../../issues/new?template=bug_report.md) | 24-48 hours |
|
||||
| Feature Request | [Issue Tracker](../../issues/new?template=feature_request.md) | Review within 1 week |
|
||||
| How-to Question | [Documentation](https://docs.evercatch.dev) or [Support Email](mailto:support@evercatch.dev) | Varies by tier |
|
||||
| Billing | [billing@evercatch.dev](mailto:billing@evercatch.dev) | 1-2 business days |
|
||||
| Account Issue | [accounts@evercatch.dev](mailto:accounts@evercatch.dev) | 1 business day |
|
||||
| Service Outage | [Status Page](https://status.evercatch.dev) | Real-time updates |
|
||||
| Security | [security@evercatch.dev](mailto:security@evercatch.dev) | 24 hours |
|
||||
| Enterprise | Slack or [enterprise@evercatch.dev](mailto:enterprise@evercatch.dev) | 4 hours (SLA) |
|
||||
|
||||
---
|
||||
|
||||
## 🎓 Learning Resources
|
||||
|
||||
### Video Tutorials
|
||||
- [Getting Started (5 min)](https://evercatch.dev/tutorials/getting-started)
|
||||
- [Setting up Stripe Webhooks (3 min)](https://evercatch.dev/tutorials/stripe-setup)
|
||||
- [Event Replay (4 min)](https://evercatch.dev/tutorials/event-replay)
|
||||
|
||||
### Blog Posts
|
||||
- [Best Practices for Webhook Reliability](https://blog.evercatch.dev/webhook-reliability)
|
||||
- [Debugging Failed Webhooks](https://blog.evercatch.dev/debugging-webhooks)
|
||||
- [Scaling Webhook Infrastructure](https://blog.evercatch.dev/scaling-webhooks)
|
||||
|
||||
### Integration Guides
|
||||
- [Stripe](https://docs.evercatch.dev/integrations/stripe)
|
||||
- [SendGrid](https://docs.evercatch.dev/integrations/sendgrid)
|
||||
- [GitHub](https://docs.evercatch.dev/integrations/github)
|
||||
- [Shopify](https://docs.evercatch.dev/integrations/shopify)
|
||||
- [More...](https://docs.evercatch.dev/integrations)
|
||||
|
||||
---
|
||||
|
||||
## 💡 Tips for Better Support
|
||||
|
||||
### Before Contacting Us
|
||||
1. ✅ Check the [Status Page](https://status.evercatch.dev)
|
||||
2. ✅ Search [existing issues](../../issues)
|
||||
3. ✅ Review [documentation](https://docs.evercatch.dev)
|
||||
4. ✅ Gather relevant information (event IDs, timestamps)
|
||||
|
||||
### When Contacting Us
|
||||
1. ✅ Use descriptive subject lines
|
||||
2. ✅ Include your subscription tier
|
||||
3. ✅ Provide steps to reproduce
|
||||
4. ✅ Share error messages or screenshots
|
||||
5. ✅ Tell us what you've already tried
|
||||
6. ❌ Don't include API keys or secrets
|
||||
|
||||
### Follow-Up
|
||||
1. ✅ Respond promptly to our questions
|
||||
2. ✅ Test suggested solutions
|
||||
3. ✅ Confirm when issue is resolved
|
||||
4. ✅ Share feedback on the support experience
|
||||
|
||||
---
|
||||
|
||||
## 🌟 Other Ways to Get Help
|
||||
|
||||
### Twitter
|
||||
- Tweet [@evercatch](https://twitter.com/evercatch)
|
||||
- DM us for quick questions
|
||||
- Not for urgent issues
|
||||
|
||||
### Newsletter
|
||||
- Monthly tips and best practices
|
||||
- **[Subscribe](https://evercatch.dev/newsletter)**
|
||||
|
||||
### Office Hours (Enterprise Only)
|
||||
- Monthly video call with product team
|
||||
- Q&A and roadmap discussions
|
||||
|
||||
---
|
||||
|
||||
## 🗺️ Support Roadmap
|
||||
|
||||
**Coming Soon:**
|
||||
- 💬 Live chat support (Studio+)
|
||||
- 📞 Phone support (Enterprise)
|
||||
- 🎥 Expanded video library
|
||||
- 🤖 AI-powered docs search
|
||||
- 🎓 Certification program
|
||||
|
||||
**Want early access?** Email [beta@evercatch.dev](mailto:beta@evercatch.dev)
|
||||
|
||||
---
|
||||
|
||||
## ⭐ Help Us Improve
|
||||
|
||||
**Had a great support experience?**
|
||||
- Leave us a review
|
||||
- Share on social media
|
||||
- Refer a friend
|
||||
|
||||
**Support could be better?**
|
||||
- Email [feedback@evercatch.dev](mailto:feedback@evercatch.dev)
|
||||
- We read every message
|
||||
|
||||
---
|
||||
|
||||
<p align="center">
|
||||
<strong>We're here to help you succeed!</strong>
|
||||
<br/>
|
||||
<a href="mailto:support@evercatch.dev">Email Support</a> •
|
||||
<a href="https://docs.evercatch.dev">Documentation</a> •
|
||||
<a href="https://status.evercatch.dev">Status</a>
|
||||
</p>
|
||||
Reference in New Issue
Block a user