# Creating a new project

Once you have the CaffeineC compiler installed, we can continue by making our first project.\
Open up a command line and paste in

```bash
CaffeineC --version
```

to verify that the compiler has been installed correctly.

Once we have verified the functionality of the compiler, either open up a new command line in the folder where you want to create the project, or use the `cd` command to move to it. Then run the following command and replace `projectname` with the name of your project.

```bash
CaffeineC init projectname
```

The compiler will ask you a series of questions about the project. When it is done, you will be left with a new folder which will contain a cfconf.yaml that looks something like this:

```yaml
name: NewProject
description: A new CaffeineC project
version: 1.0.0
main: src/main.cffc
dependencies: []
author: Anonymous
license: MIT
```

and a `src/` folder with a `main.cffc` file in it. This file should contain a starter program that looks like this:

```go
package main;

extern func printf(format: *i8): void;

func main(): i64 {
    printf("Hello, world!\n");
    return 0;
}
```

To run the program, simply move into the project's root direcotry and type:

<pre class="language-bash"><code class="lang-bash"><strong>CaffeineC run
</strong></code></pre>


---

# 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://c.vypal.me/getting-started/creating-a-new-project.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.
