Lightning Fast
Nift is possibly the world's fastest website generator (evidence). Focus on development rather than waiting for your website to build.
Scalable
Nift can scale all the way up to handle building websites with millions of pages.
Static and Dynamic Websites
Nift is not just useful for the development of static websites with serverless backends but also dynamic websites that have more traditional backend infrastructure, with a whole range of hosting options.
Pagination
Nift can handle pagination at build time with multithreading or using javascript at load time. See the functions docs for several
Lua(JIT) and ExprTk embedded
Nift can be compiled with either LuaJIT (default) or Lua along with ExprTk which has a very impressive userbase. LuaJIT is basically the world's fastest interpreted language and ExprTk is basically the world's fastest mathematical expression parser. Nift specific documentation is available for Lua(JIT) and ExprTk.
In-built scripting and template languages
Nift has in-built: a scripting language
In-built interactive REPL and shell extension
Nift has in-built interactive REPLs for each of
Script Support
Nift has support for pre/post build/serve scripts, useful for things like integrating with webpack, Babel, npm, Bower, Yeoman, Browserify, Parcel, Brunch, SASS, Grunt, Puppeteer, GraphQL, Python Web Server, Live Server/Reload, etc..
Command-Line Integration
Nift brings you the full power of the command line, with syntax in the template language to run or inject the output of scripts or system calls at any point while building webpages.
Git Integration
Nift integrates seamlessly with Git using either
Framework Integration
Nift integrates flawlessly with various Javascript frameworks eg. Grunt, Gulp, Vue, Node, React, etc. and PHP frameworks eg. Laravel, CakePHP, Phalcon, etc..
Language Agnostic
You can use any language you want, eg. markdown, LaTeX, html, haml, xml, JSON, css, sass, javascript, TypeScript, php, MySQL etc..
Multilingual Support
You can use any language/alphabet you want in content/template files and page names for urls, and can integrate with CLI translators to translate text.
Build Errors
Nift will throw errors and tell you the exact file and line number where there is a problem.
Incremental Builds
Nift tracks file dependencies to each page and can build only the web pages that have modified content, and can also build all pages or a list of specified pages.
Single Executable
Nift compiles in to one executable file.
Intuitive Templating System
Nift's templating system is intuitive while being easy to understand and remember.
Multithreading
Nift will take advantage of all the computing power on your machine, whether you're running on a Raspberry Pi or a super computer, Nift has you covered.