While Klipper has been an enormous boon to the 3D printing community as a whole, it isn't without its faults. Philement has been conceived as a full-on replacement, but it will take quite awhile to get there. In the interim it may end up serving as a front-end to Klipper, a bit like Obico perhaps.
The main differentiator to address upfront is that a large chunk of the lower-level code has been written in C and specifically not Python. For so many reasons. To help make this go a little more quickly, various AI engines are being tasked to help out. It isn't written by AI, but written with the help of AI. If that distinction matters to anyone. If nothing else, this gives a degree of plausible deniability if there's something crazy going on in the code.
As for the name, it is a combination of terms like 'Phi' (referencing the number 500 among many other meanings), 'filament' (that's what 3D printing is primarily obsessed with), and 'element' (small pieces of something larger). The individual components of the project have been named after atomic elements, for example.
As far as progress reporting goes, well, there are likely 500 steps or more to be completed before anyone takes this project seriously. Some of those steps will yield useful tools, as is already the case. But it is an ambitious project with many items to complete, and many more that likely haven't even been conceived of yet.
This project has a number of, well, elements. Each is named after an element in the periodic table. Like elements in the real world, some of these will be hugely important while others may be relatively insignificant. Some will require thousands and thousands of developer hours, and others not so much. And the effort applied to each will likely be equally unbalanced as the focus shifts among the different pieces needed to get this up and running. The main Philement Documentation index is also available, covering elements that are a little further along.
| Element | Status | Description |
|---|---|---|
| hydrogen | 🔨 | A websocket-equipped service, like Klipper+Moonraker combined |
| helium | 🔨 | Everything database-related |
| lithium | 🔨 | Web-based UI for desktops and larger systems |
| beryllium | 🏆 | Deals with everything gcode-related |
| boron | 💡 | Rhymes with Voron! Hardware database, like for Vorons or Troodons |
| carbon | 🏆 | Print fault detection, a bit like what Obico is for |
| nitrogen | 🔨 | LVGL-based UI for controllers and smaller systems |
| oxygen | 💡 | Notifications |
| fluorine | 💡 | Filament management system |
| neon | 💡 | Well, lighting, obviously |
| sodium | 💡 | An MMU and general MMU support |
| magnesium | 💡 | Print farm management tool |
| aluminum | 💡 | Home Assistant integration |
| silicon | 💡 | Printer experiment - Voron 2.4r2 without an MCU |
| phosphorus | 💡 | Printer experiment - Beltless printer |
| sulfur | 💡 | Printer experiment - Robotic arm printer |
| chlorine | 🔨 | www.philement.com website source |
| argon | 💡 | Filament extruder - recycle that waste plastic! |
| potassium | 💡 | Power monitoring |
| calcium | 💡 | Optimization Wizard - building on beryllium and boron |
| scandium | 💡 | Implementation of x3dp.com - 3D Printer Exchange |
| titanium | 💡 | High-performance video streaming for remote monitoring |
| vanadium | 🏆 | Custom font for Philement based off of Iosevka |
💡 → Idea and Planning Stage 🔨 → Working on it 🏆 → Nowhere near done but... Check it out!
While this project is currently under active development, feel free to give it a try and post any issues you encounter. Or start a discussion if you would like to help steer the project in a particular direction. Early days yet, so a good time to have your voice heard. As the project unfolds, additional resources will be made available, including platform binaries, more documentation, demos, and so on.
NOTE: Please refer to individual projects for a more nuanced breakdown. The Hydrogen project, for example, shows the lines of C code grouped into core project code and unit testing code, and combines C and C header files into the same row, along with providing additional statistics.
Last updated at 2026-07-10 15:09:01 UTC
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
JSON 419 387 0 1373095
SVG 206 405 6388 267091
C 1282 54869 52333 210080
JavaScript 276 29943 43649 181134
Text 286 388 0 114801
Markdown 710 29782 241 87328
Lua 274 6618 4611 43905
Bourne Shell 136 6660 89395 32518
CSS 123 2860 1611 14653
C/C++ Header 300 3509 12527 10268
CMake 22 197 356 3233
HTML 54 259 215 2809
make 11 112 75 607
TOML 1 55 35 449
YAML 3 23 15 309
Python 1 36 9 195
SQL 10 21 23 191
zsh 2 31 42 97
Delphi Form 1 1 0 43
Pascal 2 11 2 31
-------------------------------------------------------------------------------
SUM: 4119 136167 211527 2342837
-------------------------------------------------------------------------------
3128 Files were skipped (duplicate, binary, or without source code):
svg: 866
gcno: 856
css: 466
br: 365
html: 343
png: 56
md: 39
js: 24
mp4: 15
lua: 12
jpg: 6
json: 6
woff2: 6
gitignore: 5
gcda: 4
ico: 4
clp: 3
lintignore-markdown: 3
lintignore-bash: 2
lintignore-c: 2
lintignore-lua: 2
lintignore: 2
ninja: 2
sqlite: 2
sqruff_db2: 2
sqruff_mysql: 2
sqruff_postgresql: 2
sqruff_sqlite: 2
3mf: 1
ansi: 1
auth_code_flow_debug: 1
backup: 1
check_cache: 1
client_credentials_debug: 1
control: 1
detailed: 1
disabled: 1
dproj: 1
gcode: 1
ggignore: 1
gitattributes: 1
jsonc: 1
key: 1
ninja_deps: 1
ninja_log: 1
password_flow_debug: 1
payload_generated: 1
pem: 1
sh: 1
sqlite-shm: 1
sqlite-wal: 1
stl: 1
stylelintcache: 1
stylelintrc: 1
supp: 1
trial-ignore: 1
txt: 1
If you find this work interesting, helpful, or valuable, or that it has saved you time, money, or both, please consider directly supporting these efforts financially via GitHub Sponsors or donating via Buy Me a Pizza. Also, check out these other GitHub Repositories that may interest you.