6 changed files with 684 additions and 363 deletions
-
147api/src/mail/templates/inactive-new-user-day-10.hbs
-
85api/src/mail/templates/inactive-new-user-day-3.hbs
-
183api/src/mail/templates/inactive-new-user.hbs
-
282api/src/mail/templates/upgrade-to-pro.hbs
-
295api/src/mail/templates/welcome-1.hbs
-
55api/src/users/users.service.ts
@ -0,0 +1,147 @@ |
|||||
|
<html> |
||||
|
<head> |
||||
|
<meta charset='utf-8' /> |
||||
|
<meta name='viewport' content='width=device-width, initial-scale=1.0' /> |
||||
|
<title>How to Get the Most from textbee.dev</title> |
||||
|
<style> |
||||
|
body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; |
||||
|
line-height: 1.6; color: #333; margin: 0; padding: 0; background-color: |
||||
|
#f7f9fc; } .container { max-width: 600px; margin: 0 auto; padding: 20px; } |
||||
|
.header { text-align: center; padding: 20px 0; } .logo { max-width: 150px; |
||||
|
} .content { background-color: #ffffff; padding: 35px; border-radius: 8px; |
||||
|
box-shadow: 0 2px 10px rgba(0,0,0,0.05); } .button { display: |
||||
|
inline-block; background-color: #4A90E2; color: white; text-decoration: |
||||
|
none; padding: 12px 28px; border-radius: 4px; font-weight: 600; margin: |
||||
|
25px 0; transition: background-color 0.3s ease; } .button:hover { |
||||
|
background-color: #3A80D2; } .footer { text-align: center; font-size: |
||||
|
12px; color: #777; margin-top: 30px; } .use-case-container { border: 1px |
||||
|
solid #e0e6ed; border-radius: 8px; margin: 25px 0; overflow: hidden; } |
||||
|
.use-case-header { background-color: #f0f7ff; padding: 15px 20px; |
||||
|
border-bottom: 1px solid #e0e6ed; } .use-case-header h3 { margin: 0; |
||||
|
color: #4A90E2; } .use-case-body { padding: 20px; } .code-block { |
||||
|
background-color: #f5f7f9; padding: 12px; border-radius: 4px; font-family: |
||||
|
monospace; font-size: 14px; margin: 10px 0; overflow-x: auto; } |
||||
|
.help-offer { background-color: #f6fbff; border-left: 4px solid #4A90E2; |
||||
|
padding: 20px; margin: 30px 0; } .social-links { margin-top: 20px; } |
||||
|
.social-links a { display: inline-block; margin: 0 10px; color: #4A90E2; |
||||
|
text-decoration: none; } |
||||
|
</style> |
||||
|
</head> |
||||
|
<body> |
||||
|
<div class='container'> |
||||
|
<div class='header'> |
||||
|
<!-- Logo could be added here --> |
||||
|
</div> |
||||
|
|
||||
|
<div class='content'> |
||||
|
<h2>Hello {{name}},</h2> |
||||
|
|
||||
|
<p>We noticed you haven't started using textbee.dev yet. We'd love to |
||||
|
help you get started!</p> |
||||
|
|
||||
|
<p>Many of our users find these specific use cases particularly |
||||
|
valuable:</p> |
||||
|
|
||||
|
<div class='use-case-container'> |
||||
|
<div class='use-case-header'> |
||||
|
<h3>Example: Order Notification System</h3> |
||||
|
</div> |
||||
|
<div class='use-case-body'> |
||||
|
<p>Let's say you run an e-commerce site and want to send order |
||||
|
updates via SMS:</p> |
||||
|
|
||||
|
<div class='code-block'> |
||||
|
// Send notification when order status changes<br /> |
||||
|
const response = await |
||||
|
axios.post('https://api.textbee.dev/api/v1/gateway/{DEVICE_ID}/send-sms', |
||||
|
{<br /> |
||||
|
recipients: ['+1234567890'],<br /> |
||||
|
message: 'Your order #12345 has been shipped! Track at |
||||
|
example.com/track/12345'<br /> |
||||
|
}); |
||||
|
</div> |
||||
|
|
||||
|
<p>This simple integration can significantly improve customer |
||||
|
satisfaction!</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class='use-case-container'> |
||||
|
<div class='use-case-header'> |
||||
|
<h3>Example: Two-Factor Authentication</h3> |
||||
|
</div> |
||||
|
<div class='use-case-body'> |
||||
|
<p>Enhance your application security with SMS verification codes:</p> |
||||
|
|
||||
|
<div class='code-block'> |
||||
|
// Generate a random 6-digit code<br /> |
||||
|
const verificationCode = Math.floor(100000 + Math.random() * |
||||
|
900000);<br /><br /> |
||||
|
// Send it via SMS<br /> |
||||
|
await |
||||
|
axios.post('https://api.textbee.dev/api/v1/gateway/{DEVICE_ID}/send-sms', |
||||
|
{<br /> |
||||
|
recipients: ['+1234567890'],<br /> |
||||
|
message: `Your verification code is: |
||||
|
${verificationCode}`<br /> |
||||
|
}); |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<p style="text-align: center; margin-top: 20px;"> |
||||
|
<a href="https://textbee.dev/use-cases" style="color: #4A90E2; text-decoration: underline;"> |
||||
|
Explore more use cases → |
||||
|
</a> |
||||
|
</p> |
||||
|
|
||||
|
<div class='help-offer'> |
||||
|
<h3>Have questions?</h3> |
||||
|
<p>Feel free to reply to this email, I'll be happy to help you get |
||||
|
started.</p> |
||||
|
</div> |
||||
|
|
||||
|
<p>If you prefer to explore on your own, here's how to get started:</p> |
||||
|
|
||||
|
<ol> |
||||
|
<li><strong>Download our Android app</strong> |
||||
|
from |
||||
|
<a href='https://dl.textbee.dev'>dl.textbee.dev</a></li> |
||||
|
<li><strong>Log in to your dashboard</strong> |
||||
|
at |
||||
|
<a href='https://textbee.dev/dashboard'>textbee.dev/dashboard</a> |
||||
|
and generate a QR code</li> |
||||
|
<li><strong>Scan the QR code</strong> |
||||
|
with the app to connect your device</li> |
||||
|
</ol> |
||||
|
|
||||
|
<p style="text-align: center; margin: 20px 0;"> |
||||
|
<a href="https://textbee.dev/docs/quick-start" style="color: #4A90E2; text-decoration: underline;"> |
||||
|
View our Quick Start Guide → |
||||
|
</a> |
||||
|
</p> |
||||
|
|
||||
|
<div style='text-align: center;'> |
||||
|
<a href='https://textbee.dev/dashboard' class='button'>Access Your |
||||
|
Dashboard</a> |
||||
|
</div> |
||||
|
|
||||
|
<p>If you have any questions or need help with setup, please don't |
||||
|
hesitate to reach out. We're here to ensure you get the most out of |
||||
|
textbee.dev.</p> |
||||
|
|
||||
|
<p>Best regards,<br />The textbee.dev Team</p> |
||||
|
|
||||
|
<div class='social-links'> |
||||
|
<a href='https://discord.gg/d7vyfBpWbQ'>Join our Discord Community</a> |
||||
|
| |
||||
|
<a href='https://github.com/vernu/textbee'>Star us on GitHub</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class='footer'> |
||||
|
<p>© 2025 textbee.dev. All rights reserved.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</body> |
||||
|
</html> |
||||
@ -1,85 +0,0 @@ |
|||||
<html> |
|
||||
<head> |
|
||||
<meta charset='utf-8' /> |
|
||||
<meta name='viewport' content='width=device-width, initial-scale=1.0' /> |
|
||||
<title>Get Started with textbee.dev</title> |
|
||||
<style> |
|
||||
body { font-family: Arial, sans-serif; line-height: 1.6; color: #333; |
|
||||
margin: 0; padding: 0; } .container { max-width: 600px; margin: 0 auto; |
|
||||
padding: 20px; } .header { text-align: center; padding: 20px 0; } .logo { |
|
||||
max-width: 150px; } .content { background-color: #f9f9f9; padding: 30px; |
|
||||
border-radius: 5px; } .button { display: inline-block; background-color: |
|
||||
#4A90E2; color: white; text-decoration: none; padding: 12px 24px; |
|
||||
border-radius: 4px; font-weight: bold; margin: 20px 0; } .footer { |
|
||||
text-align: center; font-size: 12px; color: #777; margin-top: 30px; } |
|
||||
.steps { margin: 20px 0; } .step { margin-bottom: 15px; } .step-number { |
|
||||
display: inline-block; width: 25px; height: 25px; background-color: |
|
||||
#4A90E2; color: white; border-radius: 50%; text-align: center; |
|
||||
line-height: 25px; margin-right: 10px; } |
|
||||
</style> |
|
||||
</head> |
|
||||
<body> |
|
||||
<div class='container'> |
|
||||
<div class='header'> |
|
||||
</div> |
|
||||
|
|
||||
<div class='content'> |
|
||||
<h2>Hello {{name}},</h2> |
|
||||
|
|
||||
<p>We noticed it's been 3 days since you signed up for textbee.dev, but |
|
||||
you haven't registered any devices yet.</p> |
|
||||
|
|
||||
<p>We'd love to help you get the most out of our platform! With |
|
||||
textbee.dev, you can:</p> |
|
||||
<ul> |
|
||||
<li>Send and receive SMS messages from your dashboard or API</li> |
|
||||
<li>Receive SMS notifications with webhooks</li> |
|
||||
<li>Integrate SMS functionality into your applications</li> |
|
||||
<li>And much more!</li> |
|
||||
</ul> |
|
||||
|
|
||||
<p>Getting started is quick and easy:</p> |
|
||||
|
|
||||
<div class='steps'> |
|
||||
<div class='step'> |
|
||||
<span class='step-number'>1</span> |
|
||||
Install the textbee.dev android app on your device |
|
||||
</div> |
|
||||
<div class='step'> |
|
||||
<span class='step-number'>2</span> |
|
||||
Grant the necessary permissions |
|
||||
</div> |
|
||||
<div class='step'> |
|
||||
<span class='step-number'>3</span> |
|
||||
Login to your |
|
||||
<a href='{{registerDeviceUrl}}'>dashboard</a> |
|
||||
and generate a QR code |
|
||||
</div> |
|
||||
<div class='step'> |
|
||||
<span class='step-number'>4</span> |
|
||||
Scan the QR code with the app to register your device |
|
||||
</div> |
|
||||
<div class='step'> |
|
||||
<span class='step-number'>5</span> |
|
||||
Start sending and receiving SMS! |
|
||||
</div> |
|
||||
</div> |
|
||||
|
|
||||
<div style='text-align: center;'> |
|
||||
<a href='{{registerDeviceUrl}}' class='button'>Register Your Device |
|
||||
Now</a> |
|
||||
</div> |
|
||||
|
|
||||
<p>Is there anything we can help you with? If you're experiencing any |
|
||||
issues or have questions, our support team is ready to assist at |
|
||||
<a href='mailto:support@textbee.dev'>support@textbee.dev</a>.</p> |
|
||||
|
|
||||
<p>Best regards,<br />The textbee.dev Team</p> |
|
||||
</div> |
|
||||
|
|
||||
<div class='footer'> |
|
||||
<p>© 2025 textbee.dev. All rights reserved.</p> |
|
||||
</div> |
|
||||
</div> |
|
||||
</body> |
|
||||
</html> |
|
||||
@ -1,126 +1,207 @@ |
|||||
<html> |
<html> |
||||
<head> |
<head> |
||||
|
<meta charset='utf-8' /> |
||||
|
<meta name='viewport' content='width=device-width, initial-scale=1.0' /> |
||||
|
<title>Welcome to textbee.dev</title> |
||||
<style> |
<style> |
||||
body { |
|
||||
font-family: Arial, sans-serif; |
|
||||
line-height: 1.6; |
|
||||
color: #333333; |
|
||||
max-width: 600px; |
|
||||
margin: 0 auto; |
|
||||
padding: 20px; |
|
||||
} |
|
||||
.container { |
|
||||
background-color: #ffffff; |
|
||||
border-radius: 8px; |
|
||||
padding: 30px; |
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); |
|
||||
} |
|
||||
.header { |
|
||||
text-align: center; |
|
||||
margin-bottom: 30px; |
|
||||
} |
|
||||
.divider { |
|
||||
border-top: 1px solid #e0e0e0; |
|
||||
margin: 20px 0; |
|
||||
} |
|
||||
.community-section { |
|
||||
text-align: center; |
|
||||
} |
|
||||
.tips-section { |
|
||||
margin: 20px 0; |
|
||||
} |
|
||||
.tips-section ol { |
|
||||
padding-left: 20px; |
|
||||
} |
|
||||
.signature { |
|
||||
margin-top: 20px; |
|
||||
} |
|
||||
|
body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; |
||||
|
line-height: 1.6; color: #333; margin: 0; padding: 0; background-color: |
||||
|
#f7f9fc; } .container { max-width: 600px; margin: 0 auto; padding: 20px; } |
||||
|
.header { text-align: center; padding: 20px 0; } .logo { max-width: 150px; |
||||
|
} .content { background-color: #ffffff; padding: 35px; border-radius: 8px; |
||||
|
box-shadow: 0 2px 10px rgba(0,0,0,0.05); } .button { display: |
||||
|
inline-block; background-color: #4A90E2; color: white; text-decoration: |
||||
|
none; padding: 12px 28px; border-radius: 4px; font-weight: 600; margin: |
||||
|
25px 0; transition: background-color 0.3s ease; } .button:hover { |
||||
|
background-color: #3A80D2; } .footer { text-align: center; font-size: |
||||
|
12px; color: #777; margin-top: 30px; } .welcome-banner { background-color: |
||||
|
#4A90E2; color: white; padding: 30px; text-align: center; border-radius: |
||||
|
8px 8px 0 0; margin: -35px -35px 30px -35px; } .welcome-banner h1 { |
||||
|
margin: 0; font-size: 28px; letter-spacing: 0.5px; } .welcome-banner p { |
||||
|
margin: 10px 0 0 0; opacity: 0.9; } .divider { border-top: 1px solid |
||||
|
#e0e0e0; margin: 25px 0; } .quick-links { display: flex; flex-wrap: wrap; |
||||
|
justify-content: space-between; margin: 25px 0; } .quick-link { |
||||
|
background-color: #f8f9fa; border: 1px solid #e6e8eb; border-radius: 6px; |
||||
|
padding: 15px; margin-bottom: 15px; width: calc(50% - 45px); |
||||
|
text-decoration: none; color: #333; transition: all 0.2s ease; } |
||||
|
.quick-link:hover { background-color: #f0f7ff; border-color: #4A90E2; |
||||
|
transform: translateY(-2px); } .quick-link h3 { margin: 0 0 5px 0; color: |
||||
|
#4A90E2; font-size: 16px; } .quick-link p { margin: 0; font-size: 14px; |
||||
|
color: #666; } .steps-container { background-color: #f8f9fa; |
||||
|
border-radius: 8px; padding: 20px; margin: 25px 0; } .steps-container h2 { |
||||
|
margin-top: 0; color: #333; font-size: 18px; } .step { display: flex; |
||||
|
margin-bottom: 20px; } .step:last-child { margin-bottom: 0; } .step-number |
||||
|
{ background-color: #4A90E2; color: white; width: 28px; height: 28px; |
||||
|
border-radius: 50%; display: flex; align-items: center; justify-content: |
||||
|
center; font-weight: bold; margin-right: 15px; flex-shrink: 0; } |
||||
|
.step-content { flex-grow: 1; } .step-content h3 { margin: 0 0 5px 0; |
||||
|
font-size: 16px; } .step-content p { margin: 0; color: #555; font-size: |
||||
|
14px; } .personal-note { background-color: #f6fbff; border-left: 4px solid |
||||
|
#4A90E2; padding: 20px; margin: 30px 0; } .signature { margin-top: 30px; |
||||
|
display: flex; align-items: center; } .signature-text { margin-left: 15px; |
||||
|
} .signature-text h3 { margin: 0 0 5px 0; } .signature-text p { margin: 0; |
||||
|
color: #666; font-style: italic; } .signature-img { width: 60px; height: |
||||
|
60px; border-radius: 50%; object-fit: cover; } .social-links { margin-top: |
||||
|
20px; display: flex; justify-content: center; flex-wrap: wrap; } |
||||
|
.social-links a { display: inline-flex; align-items: center; margin: 0 |
||||
|
10px 10px 10px; color: #4A90E2; text-decoration: none; padding: 8px 15px; |
||||
|
border-radius: 4px; background-color: #f0f7ff; transition: all 0.2s ease; |
||||
|
} .social-links a:hover { background-color: #e0ebfa; } .social-links img { |
||||
|
width: 18px; height: 18px; margin-right: 8px; } .use-case { margin: 20px |
||||
|
0; padding: 15px; background-color: #f9f9f9; border-radius: 6px; } |
||||
|
.use-case h3 { margin-top: 0; color: #4A90E2; } @media (max-width: 550px) |
||||
|
{ .quick-link { width: 100%; } } |
||||
</style> |
</style> |
||||
</head> |
</head> |
||||
<body> |
<body> |
||||
<div class='container'> |
<div class='container'> |
||||
<div class='header'> |
<div class='header'> |
||||
<h1>Welcome to TextBee!</h1> |
|
||||
|
<!-- Logo could be added here --> |
||||
</div> |
</div> |
||||
|
|
||||
<p>Hi {{name}},</p> |
|
||||
|
|
||||
<p>It's Vernu here, creator of textbee.dev. I built this platform to help you |
|
||||
with all your messaging needs - whether it's sending OTPs, |
|
||||
notifications, or creating automated messaging workflows for your |
|
||||
business.</p> |
|
||||
|
|
||||
<div class='tips-section'> |
|
||||
<h3>Here are a few tips to get you started:</h3> |
|
||||
<ol> |
|
||||
<li><a href='https://github.com/vernu/textbee'>Explore our |
|
||||
Documentation</a> |
|
||||
- Learn how to integrate TextBee with your existing systems</li> |
|
||||
<li><a href='https://dl.textbee.dev'>Download the Mobile App</a></li> |
|
||||
<li><a href='https://textbee.dev/dashboard'>Access your Dashboard</a></li> |
|
||||
<li><a href='https://discord.gg/d7vyfBpWbQ'>Join our Discord Community</a></li> |
|
||||
<li><a href='https://www.patreon.com/vernu'>Support Our Work</a></li> |
|
||||
<li><a href='https://github.com/vernu/textbee'>Star our GitHub |
|
||||
Repository</a></li> |
|
||||
</ol> |
|
||||
</div> |
|
||||
|
<div class='content'> |
||||
|
<div class='welcome-banner'> |
||||
|
<h1>Welcome to textbee.dev!</h1> |
||||
|
<p>Your gateway to powerful SMS integration</p> |
||||
|
</div> |
||||
|
|
||||
|
<h2>Hi {{name}},</h2> |
||||
|
|
||||
|
<p>Welcome to textbee.dev! This platform is designed to provide simple |
||||
|
yet powerful SMS integration for developers and businesses of all |
||||
|
sizes.</p> |
||||
|
|
||||
|
<div class='personal-note'> |
||||
|
<p>Thank you for choosing textbee.dev. We're excited to support your |
||||
|
projects, whether you're building authentication systems for your |
||||
|
customers, notifications, or interactive workflows!</p> |
||||
|
</div> |
||||
|
|
||||
|
<h2>What You Can Build with textbee.dev</h2> |
||||
|
|
||||
|
<div class='use-case'> |
||||
|
<h3>User Authentication</h3> |
||||
|
<p>Implement secure two-factor authentication with SMS verification |
||||
|
codes to protect user accounts and sensitive data.</p> |
||||
|
</div> |
||||
|
|
||||
|
<div class='use-case'> |
||||
|
<h3>Customer Notifications</h3> |
||||
|
<p>Send automated order updates, appointment reminders, delivery |
||||
|
status changes, and other important alerts directly to your |
||||
|
customers' phones.</p> |
||||
|
</div> |
||||
|
|
||||
|
<div class='use-case'> |
||||
|
<h3>Interactive Workflows</h3> |
||||
|
<p>Create conversational experiences where users can reply to messages |
||||
|
to complete tasks, answer surveys, or trigger automated responses.</p> |
||||
|
</div> |
||||
|
|
||||
<div class='divider'></div> |
|
||||
|
|
||||
<p> |
|
||||
<strong>P.S.</strong> |
|
||||
I'd love to hear from you! Why did you choose TextBee? Do you have any |
|
||||
feedback or questions?<br /> |
|
||||
Feel free to reach out to our support team at |
|
||||
<a href='mailto:contact@textbee.dev'>contact@textbee.dev</a>.<br /> |
|
||||
We read and respond to all emails as quickly as possible. |
|
||||
</p> |
|
||||
|
|
||||
<div class='signature'> |
|
||||
<p> |
|
||||
Cheers,<br /> |
|
||||
<strong>Vernu</strong><br /> |
|
||||
Creator, textbee.dev |
|
||||
|
<p style='text-align: center; margin-top: 15px;'> |
||||
|
<a |
||||
|
href='https://textbee.dev/use-cases' |
||||
|
style='color: #4A90E2; text-decoration: underline;' |
||||
|
>Explore more use cases →</a> |
||||
</p> |
</p> |
||||
</div> |
|
||||
|
|
||||
<div class='divider'></div> |
|
||||
|
<h2>Get Started in Minutes</h2> |
||||
|
|
||||
<div class='community-section'> |
|
||||
<p style='font-size: 14px; margin-bottom: 15px;'>Join our community!</p> |
|
||||
<a |
|
||||
href='https://discord.gg/d7vyfBpWbQ' |
|
||||
style='display: inline-block; margin: 0 10px; color: #7289DA; text-decoration: none;' |
|
||||
> |
|
||||
<img |
|
||||
src='https://cdn.prod.website-files.com/6257adef93867e50d84d30e2/636e0a6918e57475a843f59f_icon_clyde_black_RGB.svg' |
|
||||
alt='Discord' |
|
||||
style='width: 20px; vertical-align: middle;' |
|
||||
/> |
|
||||
Join Discord |
|
||||
</a> |
|
||||
<a |
|
||||
href='https://github.com/vernu/textbee' |
|
||||
style='display: inline-block; margin: 0 10px; color: #333; text-decoration: none;' |
|
||||
> |
|
||||
<img |
|
||||
src='https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png' |
|
||||
alt='GitHub' |
|
||||
style='width: 20px; vertical-align: middle;' |
|
||||
/> |
|
||||
Star on GitHub |
|
||||
</a> |
|
||||
<a |
|
||||
href='https://patreon.com/vernu' |
|
||||
style='display: inline-block; margin: 0 10px; color: #FF424D; text-decoration: none;' |
|
||||
> |
|
||||
|
<div class='steps-container'> |
||||
|
<h2>Quick Setup Guide</h2> |
||||
|
|
||||
|
<div class='step'> |
||||
|
<div class='step-number'>1</div> |
||||
|
<div class='step-content'> |
||||
|
<h3>Download the App</h3> |
||||
|
<p>Install our Android app from |
||||
|
<a href='https://dl.textbee.dev'>dl.textbee.dev</a></p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class='step'> |
||||
|
<div class='step-number'>2</div> |
||||
|
<div class='step-content'> |
||||
|
<h3>Connect Your Device</h3> |
||||
|
<p>Visit your dashboard, generate a QR code, and scan it with the |
||||
|
app</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class='step'> |
||||
|
<div class='step-number'>3</div> |
||||
|
<div class='step-content'> |
||||
|
<h3>Start Sending</h3> |
||||
|
<p>Send SMS messages via our dashboard or integrate with our API</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div style='text-align: center;'> |
||||
|
<a href='https://textbee.dev/dashboard' class='button'>Go to Your |
||||
|
Dashboard</a> |
||||
|
</div> |
||||
|
|
||||
|
<div class='divider'></div> |
||||
|
|
||||
|
<h2>Helpful Resources</h2> |
||||
|
|
||||
|
<div class='quick-links'> |
||||
|
<a href='https://textbee.dev/quickstart' class='quick-link'> |
||||
|
<h3>Quick Start Guide</h3> |
||||
|
<p>Step-by-step setup instructions</p> |
||||
|
</a> |
||||
|
|
||||
|
<a href='https://api.textbee.dev' class='quick-link'> |
||||
|
<h3>API Documentation</h3> |
||||
|
<p>Integrate SMS into your applications</p> |
||||
|
</a> |
||||
|
|
||||
|
<a href='https://github.com/vernu/textbee' class='quick-link'> |
||||
|
<h3>GitHub Repository</h3> |
||||
|
<p>Explore the code and contribute</p> |
||||
|
</a> |
||||
|
|
||||
|
<a href='https://discord.gg/d7vyfBpWbQ' class='quick-link'> |
||||
|
<h3>Discord Community</h3> |
||||
|
<p>Get help and share ideas</p> |
||||
|
</a> |
||||
|
|
||||
|
<a href='https://textbee.dev/use-cases' class='quick-link'> |
||||
|
<h3>Code Examples</h3> |
||||
|
<p>Ready-to-use integration samples</p> |
||||
|
</a> |
||||
|
|
||||
|
<a href='https://textbee.dev/#faqs' class='quick-link'> |
||||
|
<h3>FAQ</h3> |
||||
|
<p>Answers to common questions</p> |
||||
|
</a> |
||||
|
</div> |
||||
|
|
||||
|
<div class='divider'></div> |
||||
|
|
||||
|
<p>Have questions or feedback? I'd love to hear from you! Feel free to |
||||
|
reply to this email or contact our support team at |
||||
|
<a href='mailto:support@textbee.dev'>support@textbee.dev</a>.</p> |
||||
|
|
||||
|
<div class='signature'> |
||||
<img |
<img |
||||
src='https://c5.patreon.com/external/logo/downloads_logomark_color_on_white.png' |
|
||||
alt='Patreon' |
|
||||
style='width: 20px; vertical-align: middle;' |
|
||||
|
src='https://ui-avatars.com/api/?name=Vernu&background=4A90E2&color=fff' |
||||
|
class='signature-img' |
||||
|
alt='Vernu' |
||||
/> |
/> |
||||
Support on Patreon |
|
||||
</a> |
|
||||
|
<div class='signature-text'> |
||||
|
<h3>Vernu</h3> |
||||
|
<p>Founder, textbee.dev</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class='footer'> |
||||
|
<p>© 2025 textbee.dev. All rights reserved.</p> |
||||
|
<p>If you don't want to receive these emails, you can |
||||
|
<a href='https://textbee.dev/account/notifications'>update your |
||||
|
preferences</a>.</p> |
||||
</div> |
</div> |
||||
</div> |
</div> |
||||
</body> |
</body> |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue