# Quick Start with Appwrite

Learn how to add Appwrite to your web apps.

Head to the [Appwrite Console](https://cloud.appwrite.io/console).

If this is your first time using Appwrite, create an account and create your first project.

Then, under **Add a platform**, add a **Web app**. The **Hostname** should be `localhost` or the domain on which you're hosting your web app.

### Cross-Origin Resource Sharing (CORS)

Adding `localhost` as a platform lets your local app talk to Appwrite. For production, add your live domain to avoid CORS errors.

Learn more in our [CORS error guide](/content/blog/post/cors-error/index.html).

You can skip optional steps.

You can install the Appwrite Web SDK using a package manager.

```sh

```

You can also add the Appwrite Web SDK using CDN by adding a script tag to your HTML file. The SDK will be available globally through the `Appwrite` namespace.

```html

```

If you installed via npm, you can import `Client` and `Account` from the Appwrite SDK.

```client-web

```

If you're using CDN, the library loads directly in your browser as a global object, so you access it through Appwrite instead of imports.

```js

```

If you prefer TypeScript, you can import TypeScript models from the Appwrite SDK.

```ts

```

Sometimes you'll need to extend TypeScript models with your own type definitions.

For example, when you fetch a list of rows from a table, you can define the expected structure of the rows like this.

```ts

```

When you fetch rows, you can use this new `Idea` interface like this.

```ts

```

The Appwrite SDK works with your favorite Web frameworks.

Learn to use Appwrite by adding authentication to a simple web app.

- [Get started with Appwrite and Next.js](/content/docs/quick-starts/nextjs/index.html) 
- [Get started with Appwrite and React](/content/docs/quick-starts/react/index.html) 
- [Get started with Appwrite and Vue.js](/content/docs/quick-starts/vue/index.html) 
- [Get started with Appwrite and Nuxt](/content/docs/quick-starts/nuxt/index.html) 
- [Get started with Appwrite and SvelteKit](/content/docs/quick-starts/sveltekit/index.html) 
- [Get started with Appwrite and Angular](/content/docs/quick-starts/angular/index.html)

Learn to use Appwrite by building an idea tracker app.

- [Get started with Appwrite and React](/content/docs/tutorials/react/index.html) 
- [Get started with Appwrite and Vue.js](/content/docs/tutorials/vue/index.html) 
- [Get started with Appwrite and Nuxt](/content/docs/tutorials/nuxt/index.html) 
- [Get started with Appwrite and SvelteKit](/content/docs/tutorials/sveltekit/index.html)

### Type safety with TypeScript

For better type safety in TypeScript projects, define interfaces and use generics:

```typescript

```

#### Generate types automatically

Use the [Appwrite CLI](/content/docs/products/databases/type-generation/index.html) to generate TypeScript interfaces automatically: `appwrite types ./types`

##### Recommended

- [API reference/Account](/content/docs/references/cloud/client-web/account/index.html)
- [API reference/Teams](/content/docs/references/cloud/client-web/teams/index.html)
- [API reference/Databases](/content/docs/references/cloud/client-web/databases/index.html)
- [API reference/Storage](/content/docs/references/cloud/client-web/storage/index.html)
