-
Notifications
You must be signed in to change notification settings - Fork 49
Security
Rusthon allows you assemble code in different languages into a single markdown file. Each fenced code block can be written in a different language, which then gets compiled and packaged together.
"Web applications today are written as a poorly-coordinated mishmash of artifacts written in different languages, file formats, and technologies. For example, a web application may consist of JavaScript code on the client, HTML for structure, CSS for presentation, XML for AJAX-style communication, and a mixture of Java, plain text configuration files, and database software on the server,...This diversity increases the cost of developers learning these technologies. It also means that ensuring system-wide safety and security properties in this setting is difficult." - Jonathan Aldrich,the creator of the Wyvern, a secure multi-language system.
In the standard multi-language build environment, there is so much infrastructure and source files, it becomes hard to nearly impossible for a single person to audit an entire application. With Rusthon and working with a single, or few markdown files, that have all the code embedded in them - it then becomes much simpler to audit and secure your application.
The script rusthon.py
parses and compiles code it finds in a markdown's fenced code blocks.
https://github.com/rusthon/Rusthon/blob/master/examples/example-project.md
./rusthon.py ./examples/example-project.md --tar
The above command will produce a tar file that contains:
- main.go (executeable)
- main.go-source.go
- main.py
- rusthon-c++-bin (executeable)
- rusthon-c++-bin-source.cpp