Skip to content

Commit f239ba1

Browse files
committed
update project.pxcf code in readme and other docs
1 parent 1ab234d commit f239ba1

File tree

2 files changed

+60
-44
lines changed

2 files changed

+60
-44
lines changed

README.md

Lines changed: 32 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -382,24 +382,38 @@ prm update
382382
prm remove old-package
383383
```
384384

385-
### Project Structure (`prox.toml`)
386-
387-
```toml
388-
[package]
389-
name = "my-web-server"
390-
version = "1.1.0"
391-
authors = ["Your Name <you@example.com>"]
392-
edition = "2025"
393-
description = "A fast web server built with ProXPL"
394-
license = "MIT"
395-
396-
[dependencies]
397-
http_parser = "2.1.0"
398-
json = "1.5.0"
399-
400-
[build]
401-
target = "native"
402-
optimize = true
385+
### Project Structure (`project.pxcf`)
386+
387+
```javascript
388+
// project.pxcf
389+
project {
390+
name: "my-web-server"
391+
version: "1.1.0"
392+
author: "Your Name <you@example.com>"
393+
license: "MIT"
394+
}
395+
396+
compiler {
397+
optimize: true
398+
debug: false
399+
target: "native"
400+
}
401+
402+
paths {
403+
src: "./src"
404+
build: "./build"
405+
entry: "src/main.prox"
406+
}
407+
408+
dependencies {
409+
http: "1.2.0"
410+
json: "1.1.0"
411+
}
412+
413+
runtime {
414+
threads: 8
415+
memory_limit: "1GB"
416+
}
403417
```
404418

405419
---

docs/ECOSYSTEM_DESIGN.md

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -128,42 +128,44 @@ module std.sys {
128128

129129
PRM is the official CLI toolchain for ProXPL, handling dependency management, building, testing, and publishing.
130130

131-
### 3.1 Package Format (`prox.toml`)
132-
Every project is defined by a TOML manifest.
133-
134-
```toml
135-
[package]
136-
name = "my-web-server"
137-
version = "1.0.0"
138-
authors = ["Jane Doe <jane@example.com>"]
139-
edition = "2025"
140-
description = "A fast web server for ProXPL"
141-
license = "MIT"
142-
143-
[dependencies]
144-
std = "0.1.0" # Core stdlib is versioned too!
145-
http_parser = { git = "https://github.com/...", tag = "v1.2" }
146-
json = "2.1.0"
147-
148-
[build]
149-
target = "native" # or "bytecode"
150-
optimize = true
131+
### 3.1 Package Format (`project.pxcf`)
132+
Every project is defined by a `.pxcf` manifest.
133+
134+
```javascript
135+
// project.pxcf
136+
project {
137+
name: "my-web-server"
138+
version: "1.0.0"
139+
author: "Jane Doe <jane@example.com>"
140+
license: "MIT"
141+
}
142+
143+
dependencies {
144+
std: "0.1.0"
145+
http_parser: "1.2.0"
146+
json: "2.1.0"
147+
}
148+
149+
compiler {
150+
target: "native"
151+
optimize: true
152+
}
151153
```
152154

153155
### 3.2 Command Suite
154156

155157
| Command | Description |
156158
| :--- | :--- |
157-
| `prm init <name>` | Scaffolds a new project with `prox.toml` and `src/main.prox`. |
159+
| `prm init <name>` | Scaffolds a new project with `project.pxcf` and `src/main.prox`. |
158160
| `prm build` | Compiles the project. Supports `--dev` (fast, debug info) and `--release` (opt, stripped). |
159161
| `prm run` | Builds and runs the binary (or interprets in dev mode). |
160162
| `prm test` | Discovers and runs tests in `tests/` or files ending in `_test.prox`. |
161-
| `prm add <pkg>` | Adds a dependency to `prox.toml` and updates lockfile. |
163+
| `prm add <pkg>` | Adds a dependency to `project.pxcf` and updates lockfile. |
162164
| `prm update` | Updates dependencies within semantic versioning bounds. |
163-
| `prm install` | Downloads dependencies defined in `prox.lock`. |
165+
| `prm install` | Downloads dependencies defined in `project-lock.pxcf`. |
164166

165167
### 3.3 Dependency Resolution & Cache
166-
- **Lockfile (`prox.lock`)**: Pin exact versions of entire dependency tree. Checked into git.
168+
- **Lockfile (`project-lock.pxcf`)**: Pin exact versions of entire dependency tree. Checked into git.
167169
- **Global Cache**: `~/.prox/cache/registry` stores downloaded packages to avoid re-downloading.
168170
- **Structure**:
169171
- `~/.prox/bin/`: Installed global binaries.
@@ -226,12 +228,12 @@ test "failure case" {
226228
### Phase 1: Foundation (Weeks 1-4)
227229
*Goal: Minimum usable Standard Library and Build System.*
228230
- [ ] **Stdlib v0.1**: Implement `std.core`, `std.io`, `std.fs`, `std.sys` (Native bindings).
229-
- [ ] **PRM v0.1**: Basic `prox.toml` parsing and `prm build` (local files only).
231+
- [ ] **PRM v0.1**: Basic `project.pxcf` parsing and `prm build` (local files only).
230232
- [ ] **Docs**: Initial `stdlib` API reference.
231233

232234
### Phase 2: Package Management (Weeks 5-8)
233235
*Goal: Allow sharing code.*
234-
- [ ] **PRM v0.5**: Git dependency support. `prm install` & `prox.lock`.
236+
- [ ] **PRM v0.5**: Git dependency support. `prm install` & `project-lock.pxcf`.
235237
- [ ] **Stdlib v0.2**: Add `std.net` (basic sockets) and `std.json`.
236238

237239
### Phase 3: Tooling & Stability (Weeks 9-12)

0 commit comments

Comments
 (0)