Skip to content

Commit 94eb541

Browse files
authored
Merge branch 'appwrite:main' into auth0-alternatives
2 parents 82b15b8 + bb11ddc commit 94eb541

File tree

17 files changed

+219
-45
lines changed

17 files changed

+219
-45
lines changed

src/routes/(marketing)/(components)/scale.svelte

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,24 @@
2525
children,
2626
stats = [
2727
{
28-
number: 12,
29-
suffix: '+',
30-
description: 'Regions served'
28+
number: 50,
29+
suffix: 'K+',
30+
description: 'GitHub stars'
3131
},
3232
{
33-
number: 1000,
34-
suffix: '+ TB',
35-
description: 'of data served'
33+
number: 300,
34+
suffix: '+',
35+
description: 'PoP locations'
3636
},
3737
{
38-
number: 50,
39-
suffix: 'B',
40-
description: 'requests'
38+
number: 300,
39+
suffix: 'K+',
40+
description: 'developers'
4141
},
4242
{
43-
number: 300,
44-
suffix: 'K',
45-
description: 'projects'
43+
number: 200,
44+
suffix: 'B+',
45+
description: 'monthly database operations'
4646
}
4747
]
4848
}: Props = $props();

src/routes/(marketing)/+page.svelte

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -43,28 +43,6 @@
4343
company: 'K-Collect',
4444
image: '/images/testimonials/ryan-oconner-testimonial.png'
4545
}}
46-
stats={[
47-
{
48-
number: 50,
49-
suffix: 'K+',
50-
description: 'GitHub stars'
51-
},
52-
{
53-
number: 300,
54-
suffix: '+',
55-
description: 'PoP locations'
56-
},
57-
{
58-
number: 300,
59-
suffix: 'K+',
60-
description: 'developers'
61-
},
62-
{
63-
number: 200,
64-
suffix: 'B+',
65-
description: 'monthly database operations'
66-
}
67-
]}
6846
>
6947
The switch to using Appwrite brought
7048
<span class="text-primary">infinite value that I'm still discovering today.</span>
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
layout: post
3+
title: "Introducing Type generation: Automate your type definitions with Appwrite"
4+
description: "Automatically generate types from your collections with support for multiple languages."
5+
date: 2025-06-24
6+
cover: /images/blog/type-generation-feature/cover.png
7+
timeToRead: 4
8+
author: chirag-aggarwal
9+
category: announcement
10+
---
11+
12+
We're excited to announce Appwrite’s newest CLI feature, **Type generation**. Designed specifically to enhance your developer experience. Type generation automates the creation of type definitions directly from your database collections, seamlessly integrating with your preferred programming language.
13+
14+
# Say goodbye to manual mapping
15+
16+
Manually creating and maintaining complex type definitions can be tedious, error-prone, and time-consuming. With Type generation, Appwrite does the heavy lifting for you. Automatically generate accurate and up-to-date type definitions, ensuring your code always syncs with your database schema.
17+
18+
# Effortless multi-language support
19+
20+
Whether you work with PHP, Swift, Dart, TypeScript, JavaScript, Java, or Kotlin, Type generation has you covered. The Appwrite CLI automatically detects your project's language and generates the appropriate type definitions, handling complex scenarios including [Enums](/docs/sdks#enums), class relationships, and language-specific semantics. We will continue to add support for more languages over time.
21+
22+
# Simplified workflow, immediate benefits
23+
24+
Using Type generation is straightforward.
25+
26+
First, ensure you have the [Appwrite CLI](/docs/tooling/command-line/installation#getting-started) installed and your project is [initialised](/docs/tooling/command-line/installation#initialization). Then, run the following command in your terminal to pull collections from your Appwrite project:
27+
28+
```bash
29+
appwrite pull collections
30+
```
31+
32+
To generate types, you can use the Appwrite CLI command:
33+
```bash
34+
appwrite types [options] <output-directory>
35+
36+
```
37+
38+
![Workflow](/images/blog/type-generation-feature/workflow.png)
39+
40+
# Better experience:
41+
42+
- **Time savings**: Eliminate hours of manual work and dedicate your time to building impactful features.
43+
- **Reduced errors**: Keep your types consistently aligned with your database schema, drastically reducing outdated and mismatched types.
44+
- **Faster iterations**: Automatically propagate schema changes, allowing for rapid development and seamless collaboration.
45+
46+
# Built with you in mind
47+
48+
Type generation was built explicitly for developers, addressing key pain points and enhancing your productivity. Whether using Appwrite in a cloud environment or self-hosted, Type generation fits seamlessly into your workflow.
49+
50+
Many other solutions offer type generation limited to TypeScript, Appwrite expands your capabilities with robust multi-language support, ensuring you have flexibility and comprehensive integration, regardless of your preferred technology stack.
51+
52+
By simplifying integration and reducing friction, type generation helps accelerate onboarding and ensures long-term satisfaction, significantly benefiting developer teams and their organizations.
53+
54+
# More resources
55+
56+
- [Visit the documentation to get started](/docs/products/databases/type-generation)
57+
- [Learn about using the Appwrite CLI](/blog/post/how-to-execute-database-migration-with-appwrite-cli)
58+
- [Improve your Appwrite developer experience with dev keys](/blog/post/improve-devex-dev-keys)

src/routes/blog/post/understand-oauth2/+page.markdoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ unlisted: true
1111
category: product
1212
---
1313

14-
In today’s interconnected app ecosystem, users expect seamless, secure access across services. OAuth2 has emerged as the industry standard for handling secure delegated access, making it a critical protocol for developers to understand.
14+
Modern applications rarely operate in isolation. Whether it's logging in with Google or sharing data with a third-party service, users demand interoperability and security. That’s where OAuth2 steps in: a powerful protocol designed to delegate access without compromising user credentials.
1515

1616
This guide explains OAuth2, how it works, the different flows available, and when to use each one, helping you build secure, scalable authorization experiences.
1717

@@ -42,7 +42,7 @@ Refer to the OAuth2 [documentation](/docs/product/auth/oauth2) for complete tech
4242

4343
1. **Authorization request**: The client asks the resource owner for permission.
4444
2. **Authorization grant**: If the user consents, the server issues a grant (authorization code, token, etc.).
45-
3. **Token request**: The client exchanges the grant for an access token.
45+
3. **Token request**: The client exchanges the grant for an access [token](/docs/products/auth/tokens).
4646
4. **Resource access**: The client uses the token to access protected resources.
4747

4848
Tokens are typically short-lived and scoped, meaning they only allow the operations the user approved.
@@ -68,7 +68,7 @@ OAuth2 offers different "flows" to accommodate various scenarios. Here's a break
6868

6969
- Web apps with secure backend servers.
7070

71-
{% call_to_action title="Customer identity without the hassle" description="Add secure authentication for your users in just a couple of minutes." point1="Multiple OAuth providers" point2="Built-in security" point3="Custom roles and permissions" point4="Integrates with your favourite SDK" cta="Contact sales" url="https://appwrite.io/contact-us/enterprise" /%}
71+
{% call_to_action title="Customer identity without the hassle" description="Add secure authentication for your users in just a couple of minutes." point1="Multiple OAuth providers" point2="Built-in security" point3="Custom roles and permissions" point4="Integrates with your favourite SDK" cta="Request a demo" url="https://appwrite.io/contact-us/enterprise" /%}
7272

7373

7474
## 2. Authorization code flow with PKCE (Proof Key for Code Exchange)
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
---
2+
layout: post
3+
title: "What is CIAM (Customer Identity and Access Management)?"
4+
description: Understand what CIAM is and why it’s key to secure, personalized customer experiences.
5+
date: 2025-06-25
6+
cover: /images/blog/what-is-ciam/cover.png
7+
timeToRead: 6
8+
author: laura-du-ry
9+
callToAction: true
10+
unlisted: true
11+
category: product
12+
---
13+
14+
Balancing security and user experience has always been a challenge for digital businesses. Too much friction, and users abandon. Too little, and security is compromised. Customer Identity and Access Management (CIAM) bridges this gap, offering a secure, seamless way to authenticate, authorize, and personalize user journeys at scale.
15+
16+
**Customer Identity and Access Management (CIAM)** refers to the technologies and policies that allow businesses to capture and manage [customer identity](/docs/products/auth/identities) and profile data securely. CIAM solutions empower organizations to deliver personalized, secure, and scalable user experiences while ensuring compliance with privacy regulations.
17+
18+
Unlike traditional IAM systems that focus on internal employees, CIAM is for external users. This includes customers, partners, and citizens. CIAM offers a balance between user convenience and [data security](/docs/products/auth/security).
19+
20+
# Key features of CIAM
21+
22+
A comprehensive CIAM solution includes:
23+
24+
- **Registration and authentication:** Simplified sign-up and login processes, including options like social logins, multi-factor authentication (MFA), and single sign-on (SSO). Explore multiple [authentication methods](https://appwrite.io/docs/products/auth) supported by Appwrite.
25+
- **Profile management:** Customers can update their profile information, preferences, and privacy settings easily.
26+
- **Consent and privacy management:** CIAM ensures that businesses are compliant with regulations like GDPR and CCPA by capturing and managing customer consents.
27+
- **Scalability:** Designed to handle millions of users simultaneously without compromising performance.
28+
- **Security measures:** Features like passwordless [authentication](/products/auth), biometric verification, and threat detection protect both customer data and business operations.
29+
30+
{% call_to_action title="Customer identity without the hassle" description="Add secure authentication for your users in just a couple of minutes." point1="Email/Password, SMS, OAuth, and more" point2="Server side rendering" point3="Session control and management" point4="Built-in security and compliance" cta="Request a demo" url="https://appwrite.io/contact-us/enterprise" /%}
31+
32+
# Why CIAM matters
33+
34+
With growing concerns over data breaches and privacy, customers today demand transparency and control over their personal information. At the same time, businesses must deliver frictionless experiences to remain competitive. CIAM helps organizations meet these expectations by:
35+
36+
- **Enhancing customer experience:** Easy onboarding, personalized services, and secure interactions boost customer satisfaction and loyalty.
37+
- **Improving security posture:** Advanced authentication mechanisms and centralized identity management minimize risks.
38+
- **Achieving regulatory compliance:** Proper management of consent and personal data storage helps businesses avoid heavy fines and reputational damage.
39+
- **Enabling business growth:** CIAM solutions provide critical customer insights that inform marketing strategies and product development.
40+
41+
# CIAM vs Traditional IAM
42+
43+
While CIAM and traditional IAM share foundational technologies, their goals and execution are different:
44+
45+
| **Aspect** | **Traditional IAM** | **CIAM** |
46+
| --- | --- | --- |
47+
| **User base** | Employees/Internal users | Customers/External users |
48+
| **Focus** | Operational efficiency and security | Customer experience and personalization |
49+
| **Scale** | Thousands of users | Millions of users |
50+
| **Regulatory focus** | Enterprise security policies | Privacy regulations (GDPR, CCPA, etc.) |
51+
| **Authentication** | Enterprise credentials | Social login, biometrics, federated ID |
52+
53+
# The future of CIAM
54+
55+
As digital ecosystems expand and customer expectations evolve, CIAM will continue to grow in importance. Trends like [passwordless authentication](/docs/products/auth/magic-url), AI-driven identity verification, and decentralized identities are shaping the next generation of CIAM solutions.
56+
57+
Organizations that focus on strong CIAM strategies will better protect customer data. They will also build trust, improve brand loyalty, and drive business success in a more connected world.
58+
59+
# Further reading
60+
61+
- [Appwrite Authentication docs](/docs/products/auth)
62+
- [Appwrite Authentication quick start doc](/docs/products/auth/quick-start)
63+
- [Appwrite Authentication overview](/products/auth)
64+
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
layout: changelog
3+
title: "Introducing Type generation: Automate your type definitions with Appwrite"
4+
date: 2025-06-25
5+
cover: /images/changelog/2025-06-25.png
6+
---
7+
8+
Manually creating and maintaining complex type definitions can be tedious, error-prone, and time-consuming.
9+
10+
With Type generation, Appwrite does the heavy lifting for you. Automatically generate accurate and up-to-date type definitions, ensuring your code always syncs with your database schema.
11+
12+
{% arrow_link href="/blog/post/announcing-type-generation-feature" %}
13+
Read the announcement to learn more
14+
{% /arrow_link %}

src/routes/integrations/+page.svelte

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
2121
const title = 'Integrations' + TITLE_SUFFIX;
2222
const description =
23-
'Connect your favorite apps to Appwrite for one unified tech stack. Explore our catalog of integrations now.';
23+
'Connect your favorite apps to Appwrite for a unified tech stack. Explore the Appwrite catalog: a marketplace to find integrations for your projects.';
2424
const ogImage = DEFAULT_HOST + '/images/open-graph/website.png';
2525
2626
// search functionality
@@ -111,8 +111,8 @@
111111
Discover infinite possibilities
112112
</h1>
113113
<p class="text-description">
114-
Unlock the full potential of Appwrite by seamlessly integrating your
115-
favorite apps with your projects.
114+
Find your favourite apps to integrate with your projects in Appwrite's
115+
marketplace.
116116
</p>
117117
</div>
118118
</div>

src/routes/integrations/+page.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { base } from '$app/paths';
22
import { groupBy } from 'remeda';
33
import type { SearchableCategory } from '$lib/constants';
4-
import { partnerCategoryDescriptions as categoryDescriptions } from '$lib/constants';
4+
import { integrationCategoryDescriptions as categoryDescriptions } from '$lib/constants';
55

66
export type Integration = {
77
title: string;
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
---
2+
layout: partner
3+
title: Devkind
4+
description: Devkind is a Melbourne-based web application development agency specializing in crafting robust and scalable digital solutions.
5+
date: 2025-06-25
6+
featured: false
7+
partnerLevel: Silver
8+
isNew: true
9+
cover: /images/partners/covers/devkind.png
10+
category: agency
11+
website: devkind.com.au
12+
email: mailto:[email protected]
13+
product:
14+
avatar: '/images/partners/avatars/devkind.png'
15+
vendor: Devkind
16+
description: Devkind is a Melbourne-based web application development agency specializing in crafting robust and scalable digital solutions.
17+
technologies:
18+
- PHP
19+
- Laravel
20+
- JavaScript
21+
- Express.js
22+
- Adonis
23+
- Next.js
24+
- React Native
25+
- Python
26+
- Shopify Polaris
27+
- Chakra UI
28+
- GraphQL
29+
- Nest.js
30+
- PHP Unit
31+
- Cypress
32+
- Flask
33+
- Vue
34+
- Nuxt.js
35+
- Astro.js
36+
37+
services:
38+
- Mobile App Development
39+
- Web App Development
40+
- E-commerce solutions
41+
- SaaS applications
42+
regions:
43+
- Europe
44+
- USA
45+
- Australia
46+
languages:
47+
- English
48+
---
49+
50+
# Overview
51+
52+
Devkind is a Melbourne-based web application development agency specializing in crafting robust and scalable digital solutions. We offer a full spectrum of services, including web and e-commerce development, AI development, custom API integration, and strategic marketing, to empower businesses across diverse industries. Our expertise ensures cutting-edge digital products that drive growth and enhance online presence.
53+
54+
# Services
55+
56+
We offer end-to-end services in web development, e-commerce solutions, and custom application development, including bespoke SaaS platforms and mobile apps. Our expertise extends to API development, digital marketing, AI integration, and business automation (AaaS), ensuring comprehensive digital transformation for our clients.
57+
58+
We leverage Appwrite to rapidly develop secure and scalable web and mobile applications for our clients. Its robust features for user authentication, real-time databases, file storage, and serverless functions allow us to accelerate development, improve efficiency, and deliver high-performance solutions with reduced time-to-market.
59+
60+
Our ideal projects involve building complex web applications, AI agent creation, scalable e-commerce platforms, and bespoke SaaS solutions for businesses across various industries, including retail, healthcare, and logistics. We excel in projects requiring seamless integrations, robust backend infrastructure, and a focus on optimizing business processes.

src/routes/partners/catalog/panara-studio/+page.markdoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
layout: partner
3-
title: Panra Studio
3+
title: Panara Studio
44
description: Panara Studio started as a one-person agency in 2021 and has grown into a small team of experts. We've worked with clients from 10+ countries, including startups, early-stage ventures, angel investors, and creators. Collaborate directly with Kamal Panara, the founder and engineer, and our talented professionals.
55
date: 2025-03-21
66
featured: false
@@ -43,6 +43,6 @@ Panara Studio started as a one-person agency in 2021 and has grown into a small
4343

4444
# Services
4545

46-
At Panera Studio, we specialize in UI/UX design, mobile app development, and web app development, creating high-quality digital products tailored to your needs. Whether it’s an e-commerce app, e-learning platform, CRM system, or a fully bespoke application, we bring ideas to life with a strong focus on performance, scalability, and user experience.
46+
At Panara Studio, we specialize in UI/UX design, mobile app development, and web app development, creating high-quality digital products tailored to your needs. Whether it’s an e-commerce app, e-learning platform, CRM system, or a fully bespoke application, we bring ideas to life with a strong focus on performance, scalability, and user experience.
4747

4848
We use Appwrite as the backend foundation for our internal tools, SaaS products, and client projects, ensuring modern, secure, and efficient development every step of the way.

0 commit comments

Comments
 (0)