Skip to content
This repository has been archived by the owner on Sep 29, 2023. It is now read-only.

Update Landing Page #329

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/views/docs/custom-domains.phtml
Original file line number Diff line number Diff line change
Expand Up @@ -319,7 +319,7 @@ $dns = [

<p>To overcome these issues and make sure your web application works securely on all browsers, Appwrite allows you to access the Appwrite API using your own private custom domain. When accessing Appwrite from the same domain as the one your app uses, Appwrite cookies will no longer be treated as 3rd party cookies by any browser and will store your users' sessions securely.</p>

<p>For example, if your app runs on <span class="link">my-app.com</span>, you can set the subdomain <span class="link">appwrite.my-app.com</span> to access the Appwrite API. This will allow browsers to respect the Appwrite sessions cookies as they are set on the same domain as your app.</p>
<p>For example, if your app runs on <span class="link">my-app.com</span>, you can set the subdomain <span class="link">appwrite.my-app.com</span> to access the Appwrite API. This will allow browsers to respect the Appwrite sessions cookies as they are set on the same domain as your app.</p>

<h2><a href="/docs/custom-domains#addYourDomain" id="addYourDomain">Add Your Domain</a></h2>

Expand Down
6 changes: 3 additions & 3 deletions app/views/docs/debugging.phtml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

<p>The doctor CLI helps you validate your server health and best practices. Using the Doctor CLI, you can verify your server configuration for best practices, validate your Appwrite stack connectivity and storage read and write access, and available storage space.</p>

<p>To run the Doctor check, simply run the following command from your terminal. You might need to replace ‘appwritewith your Appwrite Docker container ID. To find out whats your container ID, you can run `docker ps` command (more on that, in the next section).</p>
<p>To run the Doctor check, simply run the following command from your terminal. You might need to replace ‘appwrite ' with your Appwrite Docker container ID. To find out what 's your container ID, you can run `docker ps` command (more on that, in the next section).</p>

<div class="ide margin-bottom" data-lang="bash" data-lang-label="Bash">
<pre class="line-numbers"><code class="prism language-bash" data-prism>docker exec appwrite doctor</code></pre>
Expand Down Expand Up @@ -34,9 +34,9 @@

<h2><a href="/docs/debugging#devMode" id="devMode">Dev Mode</a></h2>

<p>When moving to dev mode, your server will produce much more verbose error messages. Instead of getting a general 500 error, youll be able to view the exact error that happened on the server, debug the issue further or <a href="https://github.com/appwrite/appwrite/issues/new?body=500%20Error" target="_blank" rel="noopener">report it to the Appwrite team</a>.</p>
<p>When moving to dev mode, your server will produce much more verbose error messages. Instead of getting a general 500 error, you 'll be able to view the exact error that happened on the server, debug the issue further or <a href="https://github.com/appwrite/appwrite/issues/new?body=500%20Error" target="_blank" rel="noopener">report it to the Appwrite team</a>.</p>

<p>To change your dev environment, edit your server _APP_ENV environment variable from ‘productionto ‘development in your Appwrite docker-compose.yml file located in the `appwrite` directory in the location where you first installed Appwrite.</p>
<p>To change your dev environment, edit your server _APP_ENV environment variable from ‘production ' to ‘development ' in your Appwrite docker-compose.yml file located in the `appwrite` directory in the location where you first installed Appwrite.</p>

<div class="ide margin-bottom" data-lang="yaml" data-lang-label="yaml">
<pre class="line-numbers"><code class="prism language-yaml" data-prism>...
Expand Down
11 changes: 5 additions & 6 deletions app/views/docs/main.phtml
Original file line number Diff line number Diff line change
Expand Up @@ -92,17 +92,16 @@ $getSpecsUrl = function($type, $platform) use ($latestVersion) {
</div>

<div class="margin-bottom-large">
<h2 class="margin-bottom">API References</h2>
<h2 class="margin-bottom">Explore APIs</h2>
<p>You can integrate with Appwrite's APIs in many other flexible ways.</p>

<p>The Appwrite API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded or JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.</p>

<p>Specifications for the Appwrite API are available in multiple formats, including Open API 3 for <a href="<?php echo $getSpecsUrl('open-api3', 'client'); ?>">clients</a> or <a href="<?php echo $getSpecsUrl('open-api3', 'server'); ?>">servers</a> and Swagger2 for <a href="<?php echo $getSpecsUrl('swagger2', 'client'); ?>">clients</a> or <a href="<?php echo $getSpecsUrl('swagger2', 'server'); ?>">servers</a>.</p>
<p>You can use Appwrite without an SDK by integrating directly with the <a href="/docs/rest">REST API</a>. Appwrite also provides a fully featured <a href="/docs/rest">GraphQL API</a> that you can access with or without an SDK. For handling real-time events, Appwrite provides a <a href="/docs/realtime">Realtime API</a> for client apps to subscribe to changes on your Appwrite project.</p>
</div>

<div class="margin-bottom-large">
<h2 class="margin-bottom">Contributing</h2>

<p>Are you looking to get started contributing to Appwrite? Our <a href="https://github.com/appwrite/appwrite/blob/master/CONTRIBUTING.md" target="_blank" rel="noopener">contribution guide</a> has you covered. Want an SDK for a language we dont yet support? Check out the <a href="https://github.com/appwrite/sdk-generator" target="_blank" rel="noopener">SDK generator</a> project. Also, have a look at our <a href="https://github.com/appwrite" target="_blank" rel="noopener">GitHub organization</a>.</p>
<p>Are you looking to get started contributing to Appwrite? Our <a href="https://github.com/appwrite/appwrite/blob/master/CONTRIBUTING.md" target="_blank" rel="noopener">contribution guide</a> has you covered. Want an SDK for a language we don 't yet support? Check out the <a href="https://github.com/appwrite/sdk-generator" target="_blank" rel="noopener">SDK generator</a> project. Also, have a look at our <a href="https://github.com/appwrite" target="_blank" rel="noopener">GitHub organization</a>.</p>
</div>

<div class="margin-bottom-large">
Expand All @@ -111,4 +110,4 @@ $getSpecsUrl = function($type, $platform) use ($latestVersion) {
<p>Follow our <a href="https://dev.to/appwrite" target="_blank" rel="noopener">blog</a> and subscribe to our newsletter to learn more about Appwrite and stay up-to-date with Appwrite's latest news and announcements. You can also join our <a href="https://appwrite.io/discord" target="_blank" rel="noopener">Discord server</a>, where you can chat with fellow developers and get support from our team and community members.</p>
</div>

</div>
</div>
6 changes: 3 additions & 3 deletions app/views/docs/production.phtml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<h2><a href="/docs/production#encryption" id="encryption">Encryption</a></h2>

<p>By default, the Appwrite setup doesnt come with a uniquely generated encryption key. This key is used to store your files and sensitive data like webhook passwords or API keys in a safe way. To take advantage of this feature, you must generate a unique key and set it as the value of the <b>_APP_OPENSSL_KEY_V1</b> environment variable.</p>
<p>By default, the Appwrite setup doesn 't come with a uniquely generated encryption key. This key is used to store your files and sensitive data like webhook passwords or API keys in a safe way. To take advantage of this feature, you must generate a unique key and set it as the value of the <b>_APP_OPENSSL_KEY_V1</b> environment variable.</p>

<p>Make sure to keep this key in a safe place and never make it publicly accessible. There are many online resources with methods of keeping your secret keys safe in your servers.</p>

Expand Down Expand Up @@ -31,15 +31,15 @@

<p>Sending emails is hard. There are a lot of SPAM rules and configurations to master in order to set a functional SMTP server. The SMTP server that comes packaged with Appwrite is great for development but needs some work done to function well against SPAM filters.</p>

<p>Another easier option is to use an ‘SMTP as a service product like Sendgrid or Mailgun. You can <a href="/docs/email-delivery">change Appwrite SMTP settings</a> and credentials to any 3rd party provider you like who support SMTP integration using our Docker environment variables. Most SMTP providers offer a decent free tier to get started with.</p>
<p>Another easier option is to use an ‘SMTP as a service ' product like Sendgrid or Mailgun. You can <a href="/docs/email-delivery">change Appwrite SMTP settings</a> and credentials to any 3rd party provider you like who support SMTP integration using our Docker environment variables. Most SMTP providers offer a decent free tier to get started with.</p>

<h2><a href="/docs/production#backups" id="backups">Backups</a></h2>

<p>Backups are highly recommended for any production environment. Currently, there is no built-in script we provide to do this automatically. To be able to backup your Appwrite server data, stats, and files, you will need to do the following.</p>

<ol>
<li>Create a script to backups and restore your MariaDB Appwrite schema. Note that trying to backup MariaDB using a docker volume backup can result in a corrupted copy of your data. It is recommended to use MariaDB or MySQL built-in tools for this.</li>
<li>Create a script to backups and restore your InfluxDB stats. If you dont care much about your server stats, you can skip this.</li>
<li>Create a script to backups and restore your InfluxDB stats. If you don 't care much about your server stats, you can skip this.</li>
<li>Create a script to backup Appwrite storage volume. There are many online resources explaining different ways to backup a docker volume. When running on multiple servers, it is very recommended to use an attachable storage point. Some cloud providers offer integrated backups to such attachable mount like GCP, AWS, DigitalOcean, and the list continues.</li>
</ol>

Expand Down
4 changes: 2 additions & 2 deletions app/views/docs/response-codes.phtml
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ $errorTypes = $this->getParam('errors', []);
<tr>
<td data-title="Code: ">429</td>
<td data-title="Text: ">Too Many Requests</td>
<td data-title="Description: ">Returned in when a request cannot be served due to the applications rate limit having been exhausted for the resource. <a href="/docs/rate-limits">See Rate Limits</a></td>
<td data-title="Description: ">Returned in when a request cannot be served due to the application 's rate limit having been exhausted for the resource. <a href="/docs/rate-limits">See Rate Limits</a></td>
</tr>

<tr>
Expand All @@ -118,7 +118,7 @@ $errorTypes = $this->getParam('errors', []);
<tr>
<td data-title="Code: ">504</td>
<td data-title="Text: ">Gateway timeout</td>
<td data-title="Description: ">The Appwrite servers are up, but the request couldnt be serviced due to some failure within the stack. Try again later.</td>
<td data-title="Description: ">The Appwrite servers are up, but the request couldn 't be serviced due to some failure within the stack. Try again later.</td>
</tr>

</tbody>
Expand Down