---
title: Quick Start
description: A console-based XMPP client for power users.
sidebar:
  order: 3
---

## Starting CProof

<br />

To start CProof, run the following command in the terminal:

```bash
profanity
```

To view the available options for the command:

```bash
profanity -h
```

## User Interface

![CProof User Interface](@assets/CProof-ui-1.webp)

The user interface is split into five main areas:
1. **Title Bar**: Displays the name of the contact or chat room you're with, along with your current status (e.g., online or away). It's configurable using the [`/titlebar`](/command-reference/#titlebar) command.
2. **Main Window Area**: Shows the currently active window. The first window (1) is reserved for the 'console', which displays system messages, the roster, and some command responses.
3. **Roster Subwindow**: Lists your contacts, their online status, and any new messages.
4. **Status Bar**: Shows the current time, your logged-in account, and the status of open windows. A highlighted number indicates new messages, while "-1-" marks the active window. It's configurable using the [`/statusbar`](/command-reference/#statusbar) command.
5. **Input Area**: Lets you type messages or commands. Press Tab to autocomplete commands easily.

All commands start with a / character. For example, [`/help`](/command-reference/#help).

## Account setup

### Registration

To use CProof, you first need to register a Jabber ID (JID) and then add your account.

If you don’t have a JID yet, use the [`/register`](/command-reference/#register) command to create one.
  
```bash
/register nickname example.com
```

Once you have your JID, add your account in CProof with the [`/account add`](/command-reference/#account) command followed by a name for your account. For example:

```bash
/account add main_account
```

Next, set your JID and password for this account:

```bash
/account set main_account jid your_account_name@example.com  
/account set main_account password MySecurePassword
```

Finally, connect to your account using the [`/connect`](/command-reference/#connect) command:

```bash
/connect main_account
```

#### Account Management Tips

To connect to an XMPP chat service without adding account:

```bash
/connect user@server.com
```

You will be prompted by the status bar to enter your password.

See the [`/connect`](/command-reference#connect) command for additional arguments that may be used when connecting.

To simplify future logins, enable autoconnect for an account. This ensures automatic connection on each login:

```bash
/autoconnect set main_account
```


## Window Navigation

To switch the active window, use any of the following:

`Alt-1` to `Alt-0`

`F1` to `F10`

`Alt-Left`,`Alt-Right`

The [`/win`](/command-reference#win) command may also be used. Either the window number may be passed, or the window title:

```bash
/win 4
/win someroom@chatserver.org
/win MyBuddy
```

To close the current window:

```bash
/close
```

## One to one chat

To open a new window and send a message use the [`/msg`](/command-reference#msg) command:

```bash
/msg mycontact@server.com Hello there!
```

CProof uses the contact's nickname by default, if one exists. For example:

```bash
/msg Bob Are you there bob?
```

Once a window is opened with the contact, messages can be sent by just typing them in the input window:

```plaintext
Hows it going?
```

## Adding contacts

Add someone to the roster with the following command:

```bash
/roster add newfriend@server.chat.com
```

To subscribe to contacts' presence (to receive notifications about online/offline status, checkmarks for message delivery, and other related features):

```bash
/sub request newfriend@server.chat.com
```

To approve a contact's request to subscribe to your presence:

```bash
/sub allow newfriend@server.chat.com
```

See the [`/roster`](/command-reference#roster) and [`/sub`](/command-reference#sub) commands for more detail.

## Chat rooms

To join a chat room, use the [`/join`](/command-reference#join) command:

```bash
/join room@server.org
```

Once a window is opened for the room, messages can be sent by just typing them in the input window:

```plaintext
Hello everyone
```

See the [`Chat room guide`](/guides/chat-rooms) for more detail.

## Changing your presence

To change your presence, use the following commands:

```bash
/status set away
/status set xa
/status set chat
/status set online
/status set dnd
```

Each of these commands accepts a message as a parameter, so to show the message "I'm very busy" to your contacts when setting status to Do Not Disturb:

```bash
/status set dnd I'm very busy
```

## Logging out

To log out from the current account:

```bash
/disconnect
```

To exit CProof:

```bash
/quit
```
