Tools and Libraries
*******************
.[perex]
Everything that helps you work with NEON: libraries that read and write it, the specification of the format, support in editors, a linter and a playground.
Libraries
=========
- [NEON for PHP |php], the package `nette/neon`
- [NEON for JavaScript |javascript], the package `@nette/neon` for JavaScript and TypeScript
- [NEON for Python |python], the package `nette-neon`
All three decode NEON into values, encode values back, and [edit files |editing] so that their formatting stays as it was.
Specification
=============
The format is written down in a language-neutral [specification |https://github.com/nette/neon-specification] together with a conformance corpus, a set of test cases that every implementation runs, so a file reads the same in each of the libraries. If you are writing a NEON library for another language, the corpus is there for you to use.
Editors
=======
- NetBeans (has built-in support)
- PhpStorm ([plugin |https://plugins.jetbrains.com/plugin/28338-neon])
- Visual Studio Code ([Nette Latte + Neon |https://marketplace.visualstudio.com/items?itemName=Kasik96.latte] or [Nette for VS Code |https://marketplace.visualstudio.com/items?itemName=franken-ui.nette-for-vscode])
- Sublime Text 3 ([plugin |https://github.com/FilipStryk/Nette-Latte-Neon-for-Sublime-Text-3])
- Sublime Text 2 ([plugin |https://github.com/Michal-Mikolas/Nette-package-for-Sublime-Text-2])
- VIM ([plugin |https://github.com/fpob/nette.vim])
- Emacs ([plugin |https://github.com/Fuco1/neon-mode])
- Prism.js ([integrated language |https://prismjs.com/#supported-languages])
Checking Files
==============
Each library comes with the command `neon-lint`, which reports the errors of `.neon` files with their line and column, in your editor, in CI or after an AI agent. It works the same in all three, see [NEON for PHP |php#Checking Files: neon-lint].
Playground
==========
You can try NEON right in your browser in the [playground |https://fiddle.nette.org/neon/].
{{maintitle: NEON Tools and Libraries: PHP, JavaScript, Python, Editors}}
{{description: Libraries that read and write NEON in PHP, JavaScript and Python, the specification of the format, plugins for editors, the neon-lint checker and a playground.}}
Everything that helps you work with NEON: libraries that read and write it, the specification of the format,
support in editors, a linter and a playground.
Libraries
All three decode NEON into values, encode values back, and edit files so that
their formatting stays as it was.
Specification
The format is written down in a language-neutral specification
together with a conformance corpus, a set of test cases that every implementation runs, so a file reads the same in each of the
libraries. If you are writing a NEON library for another language, the corpus is there for you to use.
Editors
Checking Files
Each library comes with the command neon-lint, which reports the errors of .neon files with their
line and column, in your editor, in CI or after an AI agent. It works the same in all three, see NEON for PHP.
Playground
You can try NEON right in your browser in the playground.