> ## Documentation Index
> Fetch the complete documentation index at: https://build.onswig.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Projects Overview

Projects are the foundation of your Swig Developer Portal experience. They serve as containers for your team members, API keys, policies, and paymasters.

## What is a Project?

A project in Swig represents an application or product that uses the Swig protocol. Each project has:

* **Members** with different roles and permissions
* **A subscription** that determines available features
* **API keys** for programmatic access
* **Policies** defining wallet permissions
* **Paymasters** for transaction sponsorship

## Key Features

### Team Collaboration

Projects support multiple members with role-based access control:

| Role        | Description                                                         |
| ----------- | ------------------------------------------------------------------- |
| **Owner**   | Full access to everything, including billing and ownership transfer |
| **Admin**   | Can manage members and most settings                                |
| **Member**  | Standard access to project resources                                |
| **Billing** | Access to billing and subscription management only                  |

### Subscription Tiers

Each project has a subscription that determines available features:

| Feature          | FREE | PRO       | ULTRA     | ENTERPRISE |
| ---------------- | ---- | --------- | --------- | ---------- |
| API Keys         | 1    | Unlimited | Unlimited | Unlimited  |
| Paymaster Access | No   | Yes       | Yes       | Yes        |
| Paymaster Limit  | -    | \$10k/mo  | \$20k/mo  | Custom     |
| Team Seats       | 1    | Limited   | Limited   | Unlimited  |

### Automatic Setup

When you sign up for Swig:

1. A project is automatically created for you
2. You're assigned as the **Owner**
3. A **FREE** subscription is activated
4. You can start creating API keys and policies immediately

## Project Structure

```
Project
├── Members (Owner, Admins, Members, Billing)
├── Subscription (FREE, PRO, ULTRA, ENTERPRISE)
├── API Keys
├── Policies
│   ├── Signers
│   └── Permissions
└── Paymasters
```

## Getting Started

<CardGroup cols={2}>
  <Card title="Create Project" icon="plus" href="./create-project">
    Set up a new project for your application
  </Card>

  <Card title="Manage Members" icon="users" href="./manage-members">
    Invite team members and manage roles
  </Card>

  <Card title="Subscriptions & Billing" icon="credit-card" href="./subscriptions-billing">
    Upgrade your plan and manage billing
  </Card>
</CardGroup>

## Best Practices

### Project Naming

Choose a clear, descriptive name for your project:

* Use your company or application name
* Keep it recognizable for team members
* Avoid special characters

### Role Assignment

Follow the principle of least privilege:

* Give **Owner** role only to key decision-makers
* Use **Admin** for team leads who need member management
* Assign **Member** role for developers
* Use **Billing** for finance team members who only need billing access

### Multiple Projects

You can be a member of multiple projects:

* Use separate projects for different applications
* Keep production and development environments separate
* Maintain clear boundaries between client projects

## Next Steps

* [Create a project](./create-project) for your application
* [Invite team members](./manage-members) to collaborate
* [Choose a subscription](./subscriptions-billing) that fits your needs
