codelly
codelly is a Node.JS module for online compiling. Based on Compilex.
Supported Languages
Language | Support |
---|---|
C | |
C++ | |
Java | |
Python | |
C# | |
Visual Basic | |
Rust | |
GO | |
PHP | |
Swift |
Setting Up Compilers
C and C++
Java
- Windows - Linux : JDK
Python
- Windows - Linux : Python
C#
- Windows : .NET Framework
- Linux : Mono
Visual Basics
- Windows : .NET Framework
Rust
- Windows - Linux : Rust
GO
- Windows - Linux : GO
PHP
- Windows : PHP for Windows
- Linux : PHP for Linux
Swift
- Windows - Linux : Swift.org
Documentation
At first - Require
var compiler = require('codelly');
var options = {stats : true}; //prints stats to console
compiler.init(options);
C and C++
//if windows
var envData = { OS : "windows" , cmd : "g++" ,options: {timeout:100000}}; // (uses g++ command to compile )
//else
var envData = { OS : "linux" , cmd : "gcc" }; // ( uses gcc command to compile )
//Without Input:
compiler.compileCPP(envData , code , function (data) {
res.send(data);
//data.error = error message
//data.output = output value
});
//With Input
compiler.compileCPPWithInput(envData , code , input , function (data) {
res.send(data);
});
Java
//if windows
var envData = { OS : "windows"};
//else
var envData = { OS : "linux" };
//Without Input:
compiler.compileJava( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compileJavaWithInput( envData , code , input , function(data){
res.send(data);
});
Python
//if your server's python command is 'python'
var envData = { cmd : "python"};
//else if your server's python command is 'python3'
var envData = { OS : "python3" };
//Without Input:
compiler.compilePython( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compilePythonWithInput( envData , code , input , function(data){
res.send(data);
});
C#
//if windows
var envData = { OS : "windows"};
//else
var envData = { OS : "linux" };
//Without Input:
compiler.compileCS( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compileCSWithInput( envData , code , input , function(data){
res.send(data);
});
Visual Basic
var envData = { OS : "windows"};
//Without Input:
compiler.compileVB( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compileVBWithInput( envData , code , input , function(data){
res.send(data);
});
Rust
//if windows
var envData = { OS : "windows"};
//else
var envData = { OS : "linux" };
//Without Input:
compiler.compileRust( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compileRustWithInput( envData , code , input , function(data){
res.send(data);
});
GO
//if windows
var envData = { OS : "windows"};
//else
var envData = { OS : "linux" };
//Without Input:
compiler.compileGO( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compileGOWithInput( envData , code , input , function(data){
res.send(data);
});
PHP
//if windows
var envData = { OS : "windows"};
//else
var envData = { OS : "linux" };
//Without Input:
compiler.compilePHP( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compilePHPWithInput( envData , code , input , function(data){
res.send(data);
});
Swift
//if windows
var envData = { OS : "windows"};
//else
var envData = { OS : "linux" };
//Without Input:
compiler.compileSwift( envData , code , function(data){
res.send(data);
});
//With Input
compiler.compileSwiftWithInput( envData , code , input , function(data){
res.send(data);
});
Additionals:
Memory Management
compiler.flush(function(){
console.log('All temporary files flushed !');
});
Synchronous version of flush
compiler.flushSync();
Statistical Data
compiler.fullStat(function(data){
res.send(data);
});
Licence
This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.