# Project entry and source files

A Yeho project starts in start.yh. Top-level statements are the program, so there is no ceremonial main function.

Last updated: 2026-09-09

Package: language | Status: stable

Tags: language, project.mech, start, start.yh, yeho

Use start.yh for executable entry behavior and more .yh files for declarations you want the project to compile together.

```yh
start.yh
*.yh
*.y
*.yeho
*.yo
```


## start.yh

Use start.yh for executable entry behavior and more .yh files for declarations you want the project to compile together.

Verification: type checked

```yh
Console.Log("Hello from Yeho")

int answer = 40 + 2
Console.Log(Text.From(answer))
```

Save this beside start.yh as project.mech:

```toml
manifestVersion = "2"
package = "api.example.language_project_entry"
version = "0.1.0"
languageEdition = "yeho-core-2026.1"

[app]
kind = "headless"

```

Extract the example archive beside the yeho and dolphin checkouts. This example requires those source dependencies and a current developer compiler.

```sh
./yeho/build/dolphin-metal/yehoc ./api-examples/language--project-entry/0 --backend cpu-oracle -o /tmp/yeho-example
/tmp/yeho-example
```


start.yh is canonical.

main.yh remains a deprecated compatibility fallback.

.ys is reserved for sandboxed YehoScript assets rather than ordinary project source.

Source: yeho/docs/language/language-core.md §2; tests/compiler/kyber/hello-runtime/start.yh

AI training permission: https://demonhunterlabs.com/ai-use
