Package Exports
- faf-scoring-kernel
- faf-scoring-kernel/faf_wasm_sdk.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (faf-scoring-kernel) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
faf-scoring-kernel
FAF Mk4 Scoring Kernel — WASM-compiled Rust engine for scoring .faf files and compiling .fafb binaries.
The Foundry. 281KB. 136 tests. In Rust We Trust.
Install
npm install faf-scoring-kernelWorks in Node.js and Bun.
Usage
const kernel = require('faf-scoring-kernel');
// Score a .faf file
const result = JSON.parse(kernel.score_faf(`
project:
name: my-project
goal: Ship fast
main_language: TypeScript
`));
console.log(result.score); // 14
console.log(result.tier); // 🔴
console.log(result.populated, '/', result.active); // 3 / 21API
8 pure-function exports. No classes. No state.
| Function | Input | Output | Description |
|---|---|---|---|
sdk_version() |
— | string |
Engine version |
score_faf(yaml) |
YAML string | JSON string | Mk4 base scoring (21 slots) |
score_faf_enterprise(yaml) |
YAML string | JSON string | Mk4 enterprise scoring (33 slots) |
validate_faf(yaml) |
YAML string | boolean |
Check if valid YAML mapping |
compile_fafb(yaml) |
YAML string | Uint8Array |
Compile .faf to .fafb binary |
decompile_fafb(bytes) |
Uint8Array |
JSON string | Decompile .fafb to JSON |
score_fafb(bytes) |
Uint8Array |
JSON string | Read score from .fafb binary |
fafb_info(bytes) |
Uint8Array |
JSON string | Header/section metadata |
Tier System
| Score | Tier | Status |
|---|---|---|
| 100% | 🏆 Trophy | Perfect |
| 99% | 🥇 Gold | Exceptional |
| 95-98% | 🥈 Silver | Top tier |
| 85-94% | 🥉 Bronze | Production ready |
| 70-84% | 🟢 Green | Solid foundation |
| 55-69% | 🟡 Yellow | Needs improvement |
| <55% | 🔴 Red | Major work needed |
Compile .fafb
const kernel = require('faf-scoring-kernel');
// Compile YAML to FAFb binary
const yaml = 'faf_version: "1.0"\nproject_name: my-project';
const bytes = kernel.compile_fafb(yaml);
// bytes[0..4] === "FAFB" (magic bytes)
// Decompile back
const json = kernel.decompile_fafb(bytes);
// Read score from binary
const score = kernel.score_fafb(bytes);What Is This?
This is the universal FAF scoring and compilation engine, compiled from Rust to WebAssembly. It implements:
- Mk4 Engine — 33-slot scoring with placeholder rejection and tier calculation
- FAFb Binary Format — 32-byte header, CRC32 checksum, priority sections
One binary. Same scores everywhere. The code is the spec.
Links
License
MIT