ts-defold is an awesome TypeScript toolkit for leveling-up 🍄 your Defold game projects.
What ts-defold Offers 🔥
- Writing your Defold game scripts in TypeScript, a statically-typed language
- Typings and auto-complete for the Defold API
- Project generator and project templates for a quick start
- ESLint configured and ready to lintlint Linting is the process of analyzing source code to find and fix programming errors, stylistic issues, and potential bugs your code
- Prettier auto-formatting included
- Type generator that stays up to date with the Defold APIAPI - Application Programming Interface Computing interface which defines interactions between multiple software intermediaries
- Library of types for Defold native extensions and Lua libraries
- Debugging with sourcemaps
- Visual Studio Code support
- A friendly community of developers
- And more!
Why TypeScript? ✨
Defold uses Lua for its game scripting language, and it is an excellent choice! The ts-defold team loves Lua, and has worked with Lua for years. So why TypeScript?
TypeScript brings compile-time type-checking, generics, cutting-edge IDE support, better code maintainability, a familiar syntax, and a lot of other cool features. After spending 12+ years in the game industry, we have learned that the more errors and potential problems you can detect at compile-time over runtime, the faster you can iterate. As your project grows, TypeScript will pay off in spades.
Through the hard work of the TypeScriptToLua project, we have created a toolkit that generates reliable, trusted Lua code from TypeScript code for your Defold game project. This means that you can reason about the generated code with human eyes 👀, know that there is a greater community supporting the transpiler, and trust the 100s of tests that execute on the TSTLTSTL - TypeScriptToLua Transpiler An extension to the TypeScript compiler that transpiles TypeScript code to Lua codebase.