# Projects

Projects are the foundation of resource organization in Ghaymah CLI. They provide a structured way to group and manage your resources, making it easier to maintain complex deployments and collaborate with team members.



## Commands Reference

### Creating a Project

Create a new project with a specified name:

```bash
gy resource project create --set .name="my-awesome-project"
```

**Short form:**
```bash
gy r p c --set .name="my-awesome-project"
```

**Example:**
```bash
# Create a project for a web application
gy resource project create --set .name="web-app-frontend"
```

![Creating a Project](project_recorded/createprojct.gif)

### Listing Projects

View all existing projects:

```bash
gy resource project get
```

**Short form:**
```bash
gy r p g
```

**Example:**
![List Projects](project_recorded/getproject.gif)

### Updating a Project

Modify an existing project's properties:

```bash
gy resource project update <PROJECT_ID> --set .name="updated-name"
```

**Short form:**
```bash
gy r p u <PROJECT_ID> --set .name="updated-name"
```

**Example:**
```bash
# Update project name
gy resource project update proj_123abc --set .name="web-app-backend"
```
![Update Projects](project_recorded/updateproject.gif)

### Deleting a Project

Remove a project and all its associated resources:

```bash
gy resource project delete <PROJECT_ID>
```

**Short form:**
```bash
gy r p d <PROJECT_ID>
```

**Example:**
```bash
# Delete project by ID
gy resource project delete proj_123abc
```
![Delete Projects](project_recorded/deleteproject.gif) 

> ⚠️ **Warning**: Deleting a project will permanently remove all associated resources. This action cannot be undone.

## Best Practices

### Naming Conventions
- Use descriptive names: `web-app-frontend`, `api-service-v2`
- Include environment indicators: `my-app-staging`, `my-app-production`
- Keep names concise but meaningful



## Related Commands

- `gy resource --help` - View all resource management commands
- `gy resource project --help` - View all project management commands

---
 
