Skip to content
@WebFirstLanguage

WebFirstLanguage

WebFirstLanguage

WebFirstLanguage

Programming that reads like plain English.

store name as "World"
display "Hello, " with name with "!"

Most languages ask you to meet the machine halfway — to learn its punctuation, its ceremony, its legacy conventions — before you can say the simple thing you meant. We think that trade was never necessary. WFL is a programming language whose syntax mirrors how people actually describe what they want, and everything in this organization is built to prove that idea holds all the way up: not just in a tutorial, but in a templating engine, a CMS, and the website you're reading about.


The law we don't break

WFL is deliberately a first language and a production language. That only works as a gradient, never as a compromise:

For every feature, the beginner form and the expert form must be the same form, or connected by a smooth path with nothing to unlearn.

This is the No-Unlearning Invariant, and it outranks every other principle when they conflict. If a beginner learns a habit on day one that a production user has to undo on day one-thousand, that's a crack in the tightrope — something to fix, not to document. A terser expert form is welcome only if a beginner can grow into it.


The 19 beliefs

These pin every project in this organization — the language, its tooling, and every program we write in it. The full text lives in PRINCIPLES.md.

# Belief What it means
1 Natural-Language Syntax Code should read like English, so thinking and writing are the same act.
2 Minimize Special Characters Prefer words to symbols; a character has to earn its place.
3 Readability & Clarity Self-explanatory beats clever. Always.
4 Clear & Actionable Errors An error should tell you what to do next, not just that you failed.
5 Type Safety & Compatibility Strict checking with inference — safety you don't have to type out.
6 Support for Modern Features Async and pattern matching, said in plain words.
7 Interoperability with Web Standards Meet the web where it already is: HTML, CSS, JavaScript.
8 Built-in Security Secure defaults, so the safe path is the lazy path.
9 Accessibility for Beginners Nothing between a newcomer and their first running program.
10 Expressiveness for Experts Power without ceremony, for people who've earned it.
11 Balanced Simplicity & Power Simple to use, never toy-sized.
12 Community & Collaboration Clear code is how we teach each other.
13 Performance Optimization The language optimizes; you don't hand-tune.
14 Integration with Standard Libraries A stdlib that speaks the same English the language does.
15 Scalability & Maintainability Grow from a script to a system without a rewrite.
16 Gradual Learning Curve Advanced ideas arrive when you're ready, never as a wall.
17 Error Transparency Debugging should be honest and legible.
18 Encouragement of Best Practices The default way should be the good way.
19 Avoidance of Unnecessary Conventions If a convention can't justify itself, it goes.

The projects

They are also the argument. WFL's website runs on a CMS written in WFL, rendered by a templating engine written in WFL, executed by the WFL runtime. It's turtles all the way down on purpose — a language that can't build its own tools hasn't proven anything.

Project What it is
wfl The language itself — lexer, parser, analyzer, type checker, and async interpreter, written in Rust. Ships with an LSP server, a VS Code extension, a REPL, a linter, and a built-in test framework.
Scribe A Twig-inspired templating engine, written entirely in WFL. HTML auto-escaping is on by default — you have to opt out of being safe.
Scriptorium A WordPress-style CMS, written entirely in WFL. Public site, admin panel, SQLite persistence, Markdown authoring, media uploads, roles.
wfl-web The WFL website — written in WFL, served by Scriptorium, templated by Scribe. The proof, running in public.

How we work

  • AI-assisted work is welcome. WFL was built with AI, and we do not discriminate against contributions made with it. The human author stays accountable, and the quality bar — tests, docs, compatibility — is identical either way. See AI_POLICY.md.
  • Backward compatibility is sacred. Existing WFL programs don't break without a documented deprecation path.
  • Tests first, docs with the feature. A feature isn't done until it's tested and written down.
  • Maintainer-led. Roles, decision rights, and how to become a Contributor are in GOVERNANCE.md and CONTRIBUTING.md.
  • Security reports stay private. Never file a vulnerability as a public issue — see SECURITY.md.

Start here

Read the docs, open the REPL, or come argue with us in Discussions.

Maintained by Brad — Logbie LLC. Apache-2.0.

Popular repositories Loading

  1. wfl wfl Public

    WFL

    Rust

  2. wfl-web wfl-web Public

    CSS

  3. Scribe Scribe Public

    Templating engine

    Shell

  4. Scriptorium Scriptorium Public

    CSS

  5. .github .github Public

    Org-wide defaults: the WebFirstLanguage profile page and the 19 beliefs that pin every project.

  6. redbeanwfl redbeanwfl Public

    Forked from gabordemooij/redbean

    ORM layer that creates models, config and database on the fly wfl implmentation of redbean

    PHP

Repositories

Showing 8 of 8 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…