Home
Author Manual
Themes Guide
Development
Open Source
Why Not To Use fpm?
Open Source
Known Issues

Why not to use fpm?

While we love fpm, it is this fpm not the right tool for you. We document some of the reasons here. If you come across any other reasons why FPM should not be used, please help us update this page.

fpm is in Alpha stage right now
We are actively developing, the first commit of the project happened only on 24th Nov 2021, so feel free to wait for fpm and ftd (which is slightly more mature, but still in infancy), if you have a serious need and you have run out of taking risk budget.

Use FTD
We promote fpm for working with ftd files, but fpm is not the only way to use ftd. You can directly depend on ftd, and build many websites, especially when you are trying to do complex things, it may be a good idea to go the lower level ftd crate (and we will soon make it available in other languages that can easily consume Rust generated libraries).

ftd can’t work with JS/CSS

Its a design decision of ftd and therefore fpm to be UI engine agnostic. While currently ftd targets Web Browser by compiling to HTML/CSS/JS we want to eventually create ftd renderer that can target terminals, mobile applications, PDF, low level canvas only surfaces, maybe even embedded devices.

We have taken a lot of inspiration from CSS, but we are not going to make CSS a dependency. An FTD file generated on any UI engine (eg Browser) must work on any other UI engine (within reason, eg terminal can not show things as richly as Browser can). Because of these reasons, if you really want to use JS/CSS due to your requirements, it’s better to not use ftd/fpm.

The Documentation, Learning Material Etc Are Still Sparse
We have not yet written enough documentation, created enough learning material etc, so if you just like the promise of ftd/fpm but can not yet make time for a less than optimal learning experience, you may want to stay away from fpm for now.