# Cloud Infrastructure

Every app you build with CodeWords runs on managed infrastructure. Cody handles the operational setup so you can focus on product behavior and user experience.

| Component         | What it does                                                         | Typical use cases                                                      |
| ----------------- | -------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| Backend           | Server-side logic for app behavior and automation                    | Form handling, validations, API calls, business rules, notifications   |
| Database and Auth | Supabase-powered data model, authentication, and storage when needed | User accounts, product catalogs, submissions, content systems          |
| File Handling     | Cloud-based upload and retrieval workflows                           | Profile images, documents, CSV inputs, generated reports, media assets |
| Deployment        | Publish your app to a live URL through the Cody flow                 | Launching to `*.codewords.run`, then iterating and republishing        |
| Integrations      | Connect app workflows to external tools and services                 | Sheets sync, Slack alerts, Stripe flows, CRM updates                   |

### Backend: Powering Your Apps

CodeWords can build full backend behavior for your app, not just front-end pages.\
That includes data processing, third-party API calls, and custom logic tied to user actions.

Example requests you can give Cody:

* “When a user submits an order, validate inputs, calculate totals, and send a confirmation email.”
* “When a contact form is submitted, store the submission and notify me.”
* “Connect Stripe so upgrades trigger payment handling.”

Backend workloads run in managed, serverless environments, so you do not manage servers directly.

### Database and Authentication

CodeWords does not force a proprietary database layer. For apps that need persistent relational data and user auth, the recommended setup is [Supabase](http://supabase.com/).

Cody can help you implement:

* Database structure and queries
* Sign-up and sign-in flows with Supabase Auth
* File storage tied to app data

Example requests:

> “Create a products table with name, price, image, and description.”

> “Add signup and login using Supabase Auth.”

> “Store form submissions in a table for admin review.”

For lightweight persistence that does not require a full relational model, CodeWords also supports persistent key-value style state for app behavior.

### File handling

CodeWords supports file-based app flows for uploads and generated outputs.

Example requests:

> “Add profile photo upload on the account page.”

> “Create a resources page with downloadable PDFs.”

> “Let users upload a CSV, process it, and return a formatted report.”

### Deployment: Going Live

Deployment follows the same conversational workflow as building:

1. Confirm your app is ready
2. Tell Cody to go live or click the Publish button
3. Choose a URL name
4. Publish to `*.codewords.run`

You can keep editing and republishing through the same preview-to-live loop.

### External Service Integrations

CodeWords connects with a large ecosystem of external services (for example Google Sheets, Slack, Stripe, Shopify, Airtable, and a 1000 more).

Example requests:

* “When a user signs up, add them to a Google Sheet and send a Slack notification.”
* “Pull products from Shopify and show them in the app.”

Cody handles integration wiring, authentication steps, and error handling in the default flow.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.codewords.ai/website-builder/features/cloud-infrastructure.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
