Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
6c7685e
Add React library docs and announcement blog post
atharvadeosthale May 25, 2026
ab6233b
Update quickstart AI prompts for React library
atharvadeosthale May 25, 2026
44d76b0
Document useAuth and useUser refresh helper
atharvadeosthale May 25, 2026
9c2f61b
Address Greptile review on PR #3022
atharvadeosthale May 25, 2026
d96ebb4
Bifurcate Advanced > Platform docs into other relevant sections
adityaoberai Jun 3, 2026
3cafd25
Shift Roles docs to Advanced > Security
adityaoberai Jun 3, 2026
b70e8d6
Merge branch 'main' into bifurcate-platforms-docs
adityaoberai Jun 3, 2026
52e1031
Update admin client docs for helpers.createAdminClient
atharvadeosthale Jun 5, 2026
c51c331
Note createAdminClient requires apiKey in helper config
atharvadeosthale Jun 5, 2026
a804856
Promote tablesDB over legacy databases in prose
atharvadeosthale Jun 5, 2026
5f2c043
Restructure APIs docs and apply PR review feedback
adityaoberai Jun 5, 2026
b9e60ff
Merge branch 'main' into bifurcate-platforms-docs
adityaoberai Jun 11, 2026
475e7af
APIs docs overview page + layout update
adityaoberai Jun 11, 2026
b16455f
Remove outdated notes
adityaoberai Jun 11, 2026
381e31b
Improve API docs overview structuring
adityaoberai Jun 11, 2026
dc5bb92
Add new VCS variables
adityaoberai Jun 11, 2026
c6df96b
Format env var tables
atharvadeosthale Jun 12, 2026
dde978b
Merge branch 'main' into bifurcate-platforms-docs
atharvadeosthale Jun 22, 2026
5d62a68
Flatten APIs nav and merge error handling into Response codes
adityaoberai Jun 22, 2026
a679a72
Merge pull request #3038 from appwrite/bifurcate-platforms-docs
atharvadeosthale Jun 23, 2026
dbf2fa0
Fix APIs docs nav
adityaoberai Jun 23, 2026
8db4ea3
Shift release policy to API docs
adityaoberai Jun 23, 2026
51e59ab
Merge branch 'main' into react-library
atharvadeosthale Jun 24, 2026
c282744
Add React library launch cover, changelog entry, beta tag
atharvadeosthale Jun 24, 2026
187ddbd
Merge pull request #3059 from appwrite/fix-api-docs-nav
eldadfux Jun 24, 2026
0c2aa50
ci: move production deploy to declarative setup, target default.yaml
levivannoort Jun 26, 2026
c4c2d1c
ci: use release tag instead of sha for production image tag
levivannoort Jun 26, 2026
702501f
ci: make declarative deploy push resilient to concurrent runs
levivannoort Jun 26, 2026
e2a57d8
ci: serialize declarative deploys with a shared concurrency group
levivannoort Jun 26, 2026
17aa996
ci: drop push rebase-retry, rely on shared concurrency group
levivannoort Jun 26, 2026
dbd50a3
ci: fall back to sha when no release tag is present
levivannoort Jun 26, 2026
78656fc
ci: pin workflow action steps to commit SHAs
levivannoort Jun 26, 2026
98ccbdd
Merge pull request #3061 from appwrite/declarative-production-deploy
levivannoort Jun 26, 2026
e000945
latest seo blog
aishwaripahwa12 Jun 26, 2026
80e5798
Apply suggestion from @greptile-apps[bot]
aishwaripahwa12 Jun 26, 2026
997e4e0
Address React library PR review feedback
atharvadeosthale Jun 26, 2026
5b72dc8
Swap production-ready FAQ for generic ones
atharvadeosthale Jun 26, 2026
f4910ac
Apply suggestions from code review
atharvadeosthale Jun 26, 2026
3bb1edd
Update +page.markdoc
aishwaripahwa12 Jun 26, 2026
7e662f4
Update +page.markdoc
aishwaripahwa12 Jun 26, 2026
0c19e0b
Tab the useSignIn email and OAuth parameters
atharvadeosthale Jun 26, 2026
dbdccdc
Trim blog FAQs to generic auth-library questions
atharvadeosthale Jun 26, 2026
d15508d
Merge pull request #3022 from appwrite/react-library
atharvadeosthale Jun 26, 2026
9e2a2d0
Revert "ci: move production deploy to declarative setup, target defau…
atharvadeosthale Jun 26, 2026
44b68fc
Merge pull request #3062 from appwrite/what-is-ci-cd-guide-for-develo…
atharvadeosthale Jun 26, 2026
55d6159
Merge pull request #3063 from appwrite/revert-3061-declarative-produc…
atharvadeosthale Jun 26, 2026
a8b400c
Add Appwrite 1.9.5 self-hosted release blog, changelog, and docs updates
atharvadeosthale Jun 26, 2026
c1b5617
Address review feedback on 1.9.5 release post
atharvadeosthale Jun 29, 2026
c7fe0d5
Add worker-screenshots and task-interval services to compose generator
atharvadeosthale Jun 29, 2026
423dfe5
Add changelog entry for paused free project deletion
atharvadeosthale Jun 29, 2026
7aecc62
Revert "Revert "ci: move production deploy to declarative setup, "
levivannoort Jun 29, 2026
eec57a6
Merge pull request #3068 from appwrite/revert-3063-revert-3061-declar…
levivannoort Jun 29, 2026
16c4232
ci: push production image to DockerHub alongside GHCR
levivannoort Jun 29, 2026
f49c66d
Merge pull request #3069 from appwrite/ci/production-push-dockerhub
levivannoort Jun 29, 2026
376e417
Convert journeys to guides in docs
adityaoberai Jun 29, 2026
bd5c89b
Expand paused project deletion changelog with rationale and reassurance
atharvadeosthale Jun 29, 2026
40c4905
Merge pull request #3067 from appwrite/paused-project-deletion
eldadfux Jun 29, 2026
cd6ee50
Merge branch 'main' into journeys-to-guides
adityaoberai Jun 29, 2026
fac8469
Merge pull request #3070 from appwrite/journeys-to-guides
adityaoberai Jun 29, 2026
f0bf5fa
latest seo blog for developers
aishwaripahwa12 Jun 30, 2026
e26ffda
Apply suggestion from @greptile-apps[bot]
aishwaripahwa12 Jun 30, 2026
f26f63f
Update +page.markdoc
aishwaripahwa12 Jun 30, 2026
58ba4d1
Move 1.9.5 release blog and changelog date to 2026-06-30
atharvadeosthale Jun 30, 2026
18075ea
Merge pull request #3064 from appwrite/appwrite-1.9.5
atharvadeosthale Jun 30, 2026
ef27c5d
Remove email policies from 1.9.5 release blog and changelog
atharvadeosthale Jun 30, 2026
8e49391
Merge pull request #3074 from appwrite/remove-email-policies-1.9.5
atharvadeosthale Jun 30, 2026
1bfb997
Apply suggestion from @aishwaripahwa12
aishwaripahwa12 Jul 1, 2026
3ec3bd7
Apply suggestion from @aishwaripahwa12
aishwaripahwa12 Jul 1, 2026
2ce646f
Apply suggestions from code review
atharvadeosthale Jul 1, 2026
dd1d0ea
Merge pull request #3073 from appwrite/what-is-redis-complete-guide-f…
atharvadeosthale Jul 1, 2026
6c2967f
latest anthropic release
aishwaripahwa12 Jul 1, 2026
e52ad2b
Update +page.markdoc
aishwaripahwa12 Jul 1, 2026
ce46f1b
Apply suggestion from @atharvadeosthale
aishwaripahwa12 Jul 1, 2026
1382657
Apply suggestions from code review
atharvadeosthale Jul 1, 2026
464c920
Merge pull request #3075 from appwrite/claude-sonnet-anthropic-most-a…
atharvadeosthale Jul 1, 2026
a7980a9
latest anthropic update
aishwaripahwa12 Jul 2, 2026
b0e55d4
Apply suggestions from code review
atharvadeosthale Jul 2, 2026
5268f5e
made changes to blog
aishwaripahwa12 Jul 2, 2026
0d0588f
Merge pull request #3076 from appwrite/claude-faable-returns-with-str…
atharvadeosthale Jul 2, 2026
3571de2
Update +page.markdoc
aishwaripahwa12 Jul 2, 2026
5017467
Merge pull request #3077 from appwrite/best-vibe-coding-tools-updated…
atharvadeosthale Jul 2, 2026
6048cad
ci: write image tag to global.image.tag
levivannoort Jul 3, 2026
a7fd8ad
Merge pull request #3081 from appwrite/chore/global-image-tag
levivannoort Jul 3, 2026
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
96 changes: 50 additions & 46 deletions .github/workflows/production.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,44 @@ on:
workflow_dispatch:

env:
ENVIRONMENT: production
PROJECT: website
DECLARATIVE_OWNER: appwrite-labs
DECLARATIVE_REPOSITORY: assets-applications
REGISTRY_GITHUB: ghcr.io
REGISTRY_DOCKERHUB: docker.io
IMAGE_NAME: appwrite/website
TAG: ${{ github.event.release.tag_name || github.sha }}
STACK_FILE: docker/production.yml
REPOSITORY: website
REGISTRY_USERNAME: christyjacob4

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout the repo
uses: actions/checkout@v4
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1

- name: Login to DockerHub
uses: docker/login-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: ghcr.io
registry: ${{ env.REGISTRY_GITHUB }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Login to Docker Hub
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: ${{ env.REGISTRY_DOCKERHUB }}
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build and push
uses: docker/build-push-action@v6
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
with:
context: .
push: true
tags: ghcr.io/appwrite/website:${{ env.TAG }}
tags: |
${{ env.REGISTRY_GITHUB }}/${{ env.IMAGE_NAME }}:${{ env.TAG }}
${{ env.REGISTRY_DOCKERHUB }}/${{ env.IMAGE_NAME }}:${{ env.TAG }}
build-args: |
"PUBLIC_APPWRITE_ENDPOINT=${{ vars.PUBLIC_APPWRITE_ENDPOINT }}"
"PUBLIC_APPWRITE_DASHBOARD=${{ vars.PUBLIC_APPWRITE_DASHBOARD }}"
Expand All @@ -49,49 +62,40 @@ jobs:
"SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }}"
"SENTRY_RELEASE=${{ github.event.release.tag_name }}"

deploy_kubernetes:
deploy:
if: github.event_name != 'release' || !contains(github.event.release.tag_name, '-rc')
strategy:
matrix:
region: [{ full: fra1, short: fra }]
needs: build
runs-on: ubuntu-latest
concurrency:
group: declarative-deploy-website
cancel-in-progress: false
steps:
- name: Checkout the repo
uses: actions/checkout@v4
- name: Install Kubectl
uses: azure/setup-kubectl@v4
- name: Install Helm
uses: azure/setup-helm@v4
- name: Install doctl
uses: digitalocean/action-doctl@v2
- name: Get token for ${{ env.DECLARATIVE_REPOSITORY }}
id: app-token
uses: actions/create-github-app-token@fee1f7d63c2ff003460e3d139729b119787bc349 # v2.2.2
with:
token: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
- name: Save DigitalOcean kubeconfig with short-lived credentials
run: doctl kubernetes cluster kubeconfig save --expiry-seconds 600 assets-${{ matrix.region.full }}-prod

- name: Ensure namespaces exist
run: |
kubectl create namespace website --dry-run=client -o yaml | kubectl apply -f -
app-id: ${{ vars.DECLARATIVE_DEPLOYMENT_GITHUB_APP_ID }}
private-key: ${{ secrets.DECLARATIVE_DEPLOYMENT_GITHUB_APP_PRIVATE_KEY }}
owner: ${{ env.DECLARATIVE_OWNER }}
repositories: ${{ env.DECLARATIVE_REPOSITORY }}

- name: Create docker pull secret
run: |
kubectl -n website create secret docker-registry ghcr \
--docker-server=ghcr.io \
--docker-username=${{ secrets.GHCR_USERNAME }} \
--docker-password=${{ secrets.GHCR_TOKEN }} \
--docker-email=ci@appwrite.io \
--dry-run=client -o yaml | kubectl apply -f -
- name: Checkout ${{ env.DECLARATIVE_REPOSITORY }}
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
repository: ${{ env.DECLARATIVE_OWNER }}/${{ env.DECLARATIVE_REPOSITORY }}
token: ${{ steps.app-token.outputs.token }}

- name: Create app secrets
run: |
kubectl -n website create secret generic website-secrets \
--from-literal=STATSIG_SERVER_SECRET='${{ secrets.STATSIG_SERVER_SECRET }}' \
--dry-run=client -o yaml | kubectl apply -f -
- name: Update image tag
run: yq -i '.global.image.tag = strenv(TAG)' ${{ env.ENVIRONMENT }}/${{ env.PROJECT }}/default.yaml

- name: Deploy
- name: Commit and push
run: |
helm upgrade --install --namespace website website deploy/website/ \
--values deploy/website/environments/production/${{ matrix.region.full }}.values.yaml \
--set imagePullSecret='ghcr' \
--set version=${{ env.TAG }}
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add ${{ env.ENVIRONMENT }}/${{ env.PROJECT }}/default.yaml
if git diff --cached --quiet; then
echo "No changes to commit"
else
git commit -m "chore(${{ env.ENVIRONMENT }}): ${{ env.PROJECT }} image tag to ${{ env.TAG }}"
git push
fi
19 changes: 11 additions & 8 deletions .github/workflows/staging.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,24 +25,24 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repo
uses: actions/checkout@v6
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: ${{ env.REGISTRY_GITHUB }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Login to Docker Hub
uses: docker/login-action@v3
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: ${{ env.REGISTRY_DOCKERHUB }}
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build and push
uses: docker/build-push-action@v6
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
with:
context: .
push: true
Expand All @@ -69,30 +69,33 @@ jobs:
deploy:
needs: build
runs-on: ubuntu-latest
concurrency:
group: declarative-deploy-website
cancel-in-progress: false
steps:
- name: Get token for ${{ env.DECLARATIVE_REPOSITORY }}
id: app-token
uses: actions/create-github-app-token@v2
uses: actions/create-github-app-token@fee1f7d63c2ff003460e3d139729b119787bc349 # v2.2.2
with:
app-id: ${{ vars.DECLARATIVE_DEPLOYMENT_GITHUB_APP_ID }}
private-key: ${{ secrets.DECLARATIVE_DEPLOYMENT_GITHUB_APP_PRIVATE_KEY }}
owner: ${{ env.DECLARATIVE_OWNER }}
repositories: ${{ env.DECLARATIVE_REPOSITORY }}

- name: Checkout ${{ env.DECLARATIVE_REPOSITORY }}
uses: actions/checkout@v6
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
repository: ${{ env.DECLARATIVE_OWNER }}/${{ env.DECLARATIVE_REPOSITORY }}
token: ${{ steps.app-token.outputs.token }}

- name: Update image tag
run: yq -i '.website.image.tag = strenv(TAG)' ${{ env.ENVIRONMENT }}/${{ env.PROJECT }}/fra1.yaml
run: yq -i '.global.image.tag = strenv(TAG)' ${{ env.ENVIRONMENT }}/${{ env.PROJECT }}/default.yaml

- name: Commit and push
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add ${{ env.ENVIRONMENT }}/${{ env.PROJECT }}/fra1.yaml
git add ${{ env.ENVIRONMENT }}/${{ env.PROJECT }}/default.yaml
if git diff --cached --quiet; then
echo "No changes to commit"
else
Expand Down
6 changes: 6 additions & 0 deletions .optimize-cache.json
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,7 @@
"static/images/blog/announcing-appwrite-pro/credits.png": "285905e1fd8b8282cb45a4f2259debd851812c23665145d865e141f5133c0be0",
"static/images/blog/announcing-appwrite-pro/header.png": "ab709ff45870607ec4472bd4dc9e4a028e320bbfb89009ec04c98ec69248a15a",
"static/images/blog/announcing-appwrite-pro/pro.png": "01427f30610de4d6d19cd9160154d8849ffa75da04d063d12bf3e9bba481b4e7",
"static/images/blog/announcing-appwrite-react-library/cover.png": "db2536faba9c82ad441662e10bf69375c8f6d1716e151324e37b0a5bbca9ee48",
"static/images/blog/announcing-appwrite-rust-sdk/cover.png": "b5b69e19f4fc1ac5eb985016c1b058bb9ed308680197f315f3b9b861f3377310",
"static/images/blog/announcing-atomic-numeric-operations/cover.png": "9fbe339856b8040eb49fb01ca4353b5600609962ab8044dcfc34ffbe0e8a9738",
"static/images/blog/announcing-auto-increment-support/cover.png": "83a7b1dd0e31ae86e49fa873cde0b6c0319a552b27dc447b4a214efd7f3fd534",
Expand Down Expand Up @@ -258,6 +259,7 @@
"static/images/blog/apply-appwrite-how/cover.png": "d23f45ced245b42c8712c021f5d2068c17aebd94fd049cb90222cb9647a41a4a",
"static/images/blog/appwrite-1-8-0-self-hosted-release/cover.png": "c15a9d88ccd16c2dc8333dc74e715e1f4a6c7818d3b4a05f4d68342eacdc0523",
"static/images/blog/appwrite-1-8-1-self-hosted-release/cover.png": "82f0a396c56b6b299b24133079acc6a317c66b2bf02fd91f4862bd3be0f8f373",
"static/images/blog/appwrite-1-9-5-self-hosted-release/cover.png": "f5958ba97aa507888c54c11ba156bf8a4e0643d129ed900ef1c83915efa31e88",
"static/images/blog/appwrite-1.5-now-available-on-cloud/cloud15.png": "a1df7388572a9f08d0e315e4b6bc8c9464c1418768e7efbec22758fd728eb970",
"static/images/blog/appwrite-auth-methods/cover.png": "361513d8b59de8fde7b294dcc6688aada30c46e11933070c529733e486784690",
"static/images/blog/appwrite-backups-and-restores/cover.png": "369b5d91f3dc515e7fb86588f8871aa5ffd788b40023e8373ac694840479c1ab",
Expand Down Expand Up @@ -479,8 +481,10 @@
"static/images/blog/claude-code-tips-tricks/cover.png": "df329d51541267d46b2b913c376cca27c7ddf12b6a2a36986d418ec41253ddc9",
"static/images/blog/claude-design/cover.png": "7530f6d1c1a999089f2a68038d6a17d9953435afb1535d09b462b485f77ce1df",
"static/images/blog/claude-fable-5-and-mythos-5-access-suspended/cover.avif": "f6c50bbd5f1eaabef50803b5b76792f8f5f7a2fb009ed8670a08cd9ad1f23971",
"static/images/blog/claude-fable-5-returns-with-stronger-jailbreak-safeguards/cover.png": "bfe441fb7c04a21cb431119065ae05f2c1b044d9885cba7ef3651290f2ff3bb3",
"static/images/blog/claude-mythos-preview/cover.png": "aea7b0c45c492939048fbf04a9b001b96c7bf727bcf7e5afc8274f84644dd35d",
"static/images/blog/claude-mythos-release-date-what-we-know-so-far/cover.png": "0197caa87f00bc03063fb2b1872052cf02733298b2991871852762f32fcfa202",
"static/images/blog/claude-sonnet-5-is-anthropics-most-agentic-sonnet-yet/cover.png": "15a3350966c037f6747c4b3626e9770ba4ee8065439702903ee3cde13a4573e2",
"static/images/blog/claude-vs-gpt-vs-gemini-for-developers-who-wins-in-2026/cover.png": "b931411d483646bcc79649dfc518e86fa4768504b13dbd3d03885c9a2bbde531",
"static/images/blog/client-dashboards-internal-tools/cover.png": "d758f2f517487e24037cef5b3e9036ade6c238cd2f216ef6c76ce5467c665d92",
"static/images/blog/client-vs-server-components-react/cover.png": "b7ae8b7614902c8b4dd7826d59cfdb36db9abbe27bde99b3deb69c4bf178f425",
Expand Down Expand Up @@ -1257,10 +1261,12 @@
"static/images/blog/what-is-an-ai-backend/cover.png": "cb36f49035cbdcd97a70ac658783741f275d3a220b7cfd16b39d4fb86a929edd",
"static/images/blog/what-is-cdn/cover.png": "ef77860288e150c6c22f3950a5eae4c88aefefb6db204f10c2a0544e51548703",
"static/images/blog/what-is-ciam/cover.png": "45a5261ae1bb8a38777f60a21ea60426c0832e3d58bf3164100548400d388ce1",
"static/images/blog/what-is-cicd-a-complete-guide-for-developers/cover.png": "7abddce55b1467188faab83abd58189173bf9aba84de3d9f28fff0be8c6e9276",
"static/images/blog/what-is-docker-a-simple-guide-for-developers/cover.png": "acd9c50ad749fcf676dd58b38cc6bbffba913bf5d817c6b725bd2c305088689e",
"static/images/blog/what-is-mcp/claude-mcp-chat.png": "26842cfebca3ec2cec89448e1c0d7ddb3f5421cc57acdb8780d48d30a54cad82",
"static/images/blog/what-is-mcp/claude-mcp-tools.png": "3a5ae700867b8671b5c9e3af61b094aeb64611168463db66ff440e0d427ac6bc",
"static/images/blog/what-is-mcp/cover.png": "dc4537990c91d6f1768c5ab8775e5c52239eb901b15e2e74fce8b5a018855c32",
"static/images/blog/what-is-redis-a-complete-guide-for-developers/cover.png": "b7b87a372bbb99421c2ab6df37430da960728b5cf339f1803c432644154c764f",
"static/images/blog/when-custom-backend-stops-being-worth-it/cover.png": "d03b13c4e8f3294823a7883cdae89ca18a4030b170c51f597bd139c9ca274793",
"static/images/blog/why-ai-generated-apps-need-backend/cover.png": "8761878c13c51dd8a720a625606b89b93d9c56651aed636fa1b2bd346bd4fd82",
"static/images/blog/why-developers-choose-appwrite-auth/cover.png": "f56c37ebfc25191e113b928ff3cf144563be740159e46d75a427bdafdd11214b",
Expand Down
2 changes: 1 addition & 1 deletion CONTENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ Remember to use a specific language label if the code is using an Appwrite SDK.

### Sections

Use sections when there is a clear step-by-step format to a page. This is used mainly in journey pages and tutorials.
Use sections when there is a clear step-by-step format to a page. This is used mainly in guide pages and tutorials.

```md
{% section #featured-products-1 step=1 title="Title" %}
Expand Down
15 changes: 10 additions & 5 deletions STYLE.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,11 @@ APIs section:
- [GraphQL](https://appwrite.io/docs/apis/graphql)
- [REST](https://appwrite.io/docs/apis/rest)
- [Realtime](https://appwrite.io/docs/apis/realtime)
- [Events](https://appwrite.io/docs/apis/events)
- [Webhooks](https://appwrite.io/docs/apis/webhooks)
- [Response codes](https://appwrite.io/docs/apis/response-codes)
- [Release policy](https://appwrite.io/docs/apis/release-policy)
- [Error handling](https://appwrite.io/docs/apis/error-handling)

Tooling section:

Expand All @@ -57,7 +62,7 @@ Tooling section:

Advanced section:

- [Platform](https://appwrite.io/docs/advanced/platform)
- [Billing](https://appwrite.io/docs/advanced/billing)
- [Migrations](https://appwrite.io/docs/advanced/migrations)
- [Self-hosting](https://appwrite.io/docs/advanced/self-hosting)
- [Security](https://appwrite.io/docs/advanced/security)
Expand Down Expand Up @@ -89,7 +94,7 @@ Each product page has three main sections
- These pages usually align with sections shown in the product in the Appwrite Console.
- Focused on describing concepts a user should know, but not actions you might take.
- Cover all the details
- Journeys
- Guides
- These pages focus on common actions and work flows
- Detailed examples that span many concepts
- Like cookbook at other organizations' documentation.
Expand Down Expand Up @@ -214,10 +219,10 @@ Split content such that each piece makes sense without reading dependents or exp
- [ ] Point Cloud to new version in [src/routes/docs/references/[version]/[platform]/[service]/+page.server.ts](src/routes/docs/references/[version]/[platform]/[service]/+page.server.ts)
- [ ] Update install command in [/workspaces/website/src/routes/docs/advanced/self-hosting/+page.markdoc](/workspaces/website/src/routes/docs/advanced/self-hosting/+page.markdoc)
- [ ] Update events [src/partials/[product]-events.md](src/partials/)
- [ ] Update response code [src/routes/docs/advanced/platform/response-codes/+page.markdoc](src/routes/docs/advanced/platform/response-codes/+page.markdoc)
- [ ] Update response code [src/routes/docs/apis/response-codes/+page.markdoc](src/routes/docs/apis/response-codes/+page.markdoc)
- [ ] Bump latest SDK versions in SDKs page, quick start, and tutorials
- [ ] Create new sections for new products
- [ ] Create new concept and journey pages for new features
- [ ] Create new concept and guide pages for new features
- [ ] Update docs for breaking changes

### Documenting a new API
Expand Down Expand Up @@ -346,7 +351,7 @@ easily, and the code example is expected to be runnable and complete.

This means, you need to include imports, dependencies, and all parts needed to arrive at a functional example.

For concept and journey product pages, still try your best to have complete examples, unless:
For concept and guide product pages, still try your best to have complete examples, unless:

1. The example will become opinionated. We avoid opinionated implementation and choices in product pages. Keep them in blogs, quick starts, and tutorials.
2. The example cannot be given in a complete form cleanly. For example, many of the Messaging services's examples cannot be given in complete form because the boiler plate and set up is complex and documented in Android/Swift documentation.
Loading
Loading