# \`entryfile\` in Project.toml

**URL:** <https://discourse.julialang.org/t/entryfile-in-project-toml/137532>\
**Category:** Package Management\
**Tags:** question, pkg\
**Created:** [June 9, 2026, 9:53pm UTC](https://discourse.julialang.org/t/entryfile-in-project-toml/137532 "2026-06-09T21:53:22Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kevin\_Gruhlke](https://avatars.discourse-cdn.com/v4/letter/k/82dd89/32.png) [@Kevin\_Gruhlke](https://discourse.julialang.org/u/Kevin_Gruhlke)\
**Post date:** [June 9, 2026, 9:53pm UTC](https://discourse.julialang.org/t/entryfile-in-project-toml/137532/1 "2026-06-09T21:53:22Z")

</div>

I recently discovered that if you have an `entryfile` entry in your package’s Project.toml file, you can put the package’s top-level module somewhere other than the typical `src/Package.jl`. This Project.toml, for example, works for a file at the specified path:

```julia-auto
name = "EntryfileTest"
uuid = "88708527-90b9-4996-ac61-aaaaaaaaaaaa"
version = "0.1.0"
authors = ["author <author@test.com>"]
entryfile = "src/other_src/EntryfileTest.jl"

```

When I looked for information on this feature, I couldn’t find any info on it in the `Pkg.jl` docs; in fact, the only “official” place I could find it even mentioned was buried halfway in the [Code Loading](https://docs.julialang.org/en/v1/manual/code-loading/#Project-environments) section of the manual.

Why is this? It seems like a handy feature. Is this just not part of the public API?
