You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To ensure that free users can continue exploring the platform and its features, we will provide up to 10 phone OTP login attempts per month at no charge. This will allow you to continue utilizing OTP logins to evaluate Appwrite's capabilities and integration into your workflows.
35
-
36
32
# We're here to help
37
33
38
34
If you have any questions about this change or need assistance with adjusting your application, please don't hesitate to contact us at [[email protected]](mailto:[email protected]).
Today, a personal portfolio website is no less than real estate on the internet for developers. It's your digital home address, where people can discover who you are, what you do, how they can contact you, and so much more in between. However, many of us don't have our portfolio websites ready despite their importance because, even with modern vibe coding tools, a clean and straightforward portfolio is much harder to design than expected.
15
+
16
+
That's why, as part of the Sites templates, Appwrite offers a portfolio template that you can deploy in just a few short steps.
17
+
18
+
# Overview of the portfolio template
19
+
20
+
The Appwrite portfolio template is a personal portfolio app for developers. Built with Next.js and styled with Tailwind CSS, it features several pages:
21
+
22
+
- Landing page with an about section and project listing
23
+
- Individual project pages
24
+
- Contact me page with an email form (currently just logs form data on the console)
Firstly, you must head to Appwrite Cloud and [create an account](https://cloud.appwrite.io/console/register) if you haven't already (or [self-host Appwrite 1.7](https://appwrite.io/docs/advanced/self-hosting)). Next, create your first project, which will lead you to the project overview page.
Head to the **Sites** page from the left sidebar, click on the **Create site** button, and select the **Clone a template** option. This will take you to the Appwrite Sites templates listing, where you should select **Portfolio** under the **Use case** category on the left sidebar. This will show you numerous templates, some developed by our team and some by our partners, from which you must click on the `Portfolio template` option.
After selecting the template, connect a GitHub repository now (you can do this later, too). Leave the production branch and root directory as is, update the domain name if you want, and click the **Deploy** button. You can watch the deployment logs as Appwrite builds your site.
After your site has been successfully deployed, Appwrite will show you a **Congratulations** page. You can view the site by clicking the **Visit site** button, or view the site configuration (deployments, logs, domains, usage, and settings) by clicking the **Go to dashboard** button.
To learn how to make changes in the portfolio site, let's update the contact form action to email you whenever someone submits a message. For this demo, we shall use Resend, a popular API service for sending emails.
49
+
50
+
First, create an account on [Resend](https://resend.com/), then go to the **API Keys** tab in the left sidebar to create a new API key. Save this API key for later usage.
51
+
52
+

53
+
54
+
> Note: While this isn't mandatory for the demo, for production apps, you should add and verify a [domain](https://resend.com/docs/dashboard/domains/introduction) to send emails via Resend.
55
+
56
+
Next, you must update the environment variables of our Appwrite Site. Head back to your Appwrite project, visit **Sites** from the left sidebar, and click on your portfolio site. Head to the **Settings** tab of your site, scroll down to the **Environment variables** section, and create the following environment variables:
57
+
58
+
- `RESEND_API_KEY`: The Resend API key you created earlier
59
+
- `EMAIL_ADDRESS`: The email address you want to receive contact form messages on
Lastly, clone the repository Appwrite created for your portfolio site. Enter the directory, and install Resend's Node.js library by running the following command:
64
+
65
+
```js
66
+
npm install resend
67
+
```
68
+
69
+
Then, head to the `src/actions/contact.ts` file and update it to the following:
Copy file name to clipboardExpand all lines: src/routes/docs/advanced/platform/phone-otp/+page.markdoc
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -12,13 +12,13 @@ Appwrite supports SMS-based OTP (One-Time Password) authentication to provide se
12
12
13
13
# Free messages {% #free-messages %}
14
14
15
-
All Appwrite plans include **10 free SMS messages** per month, which allows you to test and implement OTP functionality without immediate costs.
15
+
All paid Appwrite plans include **10 free SMS messages** per month, which allows you to test and implement OTP functionality without immediate costs.
16
16
17
17
In addition you can also use the [Mock phone numbers](/docs/products/auth/security#mock-phone-numbers) feature to continue testing your integrations without incurring additional costs.
18
18
19
19
# Additional messages {% #additional-messages %}
20
20
21
-
To send more than 10 SMS messages per month, you need to upgrade to a **paid plan**. For detailed information about the different pricing options and features, please visit the [pricing page](/pricing).
21
+
After the first 10 free SMS messages, you'll be charged per SMS.
22
22
23
23
The cost for additional messages is calculated based on two factors:
Copy file name to clipboardExpand all lines: src/routes/docs/products/auth/phone-sms/+page.markdoc
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ description: Enhance security with SMS and phone authentication in Appwrite. Add
5
5
---
6
6
7
7
{% info title="Note" %}
8
-
The first 10 SMS messages each month are free. Thereafter OTPs are billed per message, with rates varying by country. See the [phone OTP rates](/docs/advanced/platform/phone-otp#rates) for more information.
8
+
Paid plans receive 10 free SMS messages each month. Thereafter OTPs are billed per message, with rates varying by country. See the [phone OTP rates](/docs/advanced/platform/phone-otp#rates) for more information.
9
9
{% /info %}
10
10
11
11
Phone authentication lets users create accounts using their phone numbers and log in through SMS messages.
In order to allow creating OAuth sessions, the following activity needs to be added inside the `<application>` tag, along side the existing `<activity>` tags in your [AndroidManifest.xml](https://github.com/appwrite/playground-for-android/blob/master/app/src/main/AndroidManifest.xml).
In order to allow creating OAuth sessions, the following activity needs to be added inside the `<application>` tag, along side the existing `<activity>` tags in your [AndroidManifest.xml](https://github.com/appwrite/playground-for-flutter/blob/master/android/app/src/main/AndroidManifest.xml).
0 commit comments