PrograMindsCompiler← Back to editor
For developers

Bring the compiler to your site

Two ways in, depending on what you need: embed the real editor UI as an iframe, or call the same execution engine directly from your own code and get plain JSON back. No signup or API key for either, today.

Embed the widget

Drop a real, running code editor into your docs, tutorials, or landing page. It's a single iframe pointed at our /embed route.

Quick start

<iframe
  src="https://compiler.programinds.com/embed?lang=python"
  width="100%"
  height="600"
  style="border:0;border-radius:12px;"
  title="PrograMinds Compiler"
></iframe>

Options

Query paramEffect
langWhich language to load — see the supported values below. The embed always shows a single language with no switcher (it's meant for one worked example, not a full IDE). Omit it and it defaults to java.

Supported lang values

pythonccppjavaphpcsharpmysqlmongodbwebreactvue

Live example

This is the exact snippet above, rendering inline on this page.

Call the API directly

Prefer to run code from your own backend and handle the output yourself, with no iframe involved? Send us your files, we run them in an isolated sandbox, you get stdout/stderr back as JSON. This is the exact same endpoint the editor's own Run button calls.

Unversioned today. No API key, rate-limited per IP (20 requests/minute), and the shape may change before a stable, keyed /api/v1/executeships. Fine for prototyping and personal projects — don't build production traffic on it yet.

Endpoint

POST https://compiler.programinds.com/api/compile

Request body

{
  "language": "python",
  "entryFile": "main.py",
  "files": [
    { "path": "main.py", "content": "print(\"Hello from PrograMinds!\")" }
  ]
}

Response

{
  "stdout": "Hello from PrograMinds!\n",
  "stderr": ""
}

curl

curl -X POST https://compiler.programinds.com/api/compile \
  -H "Content-Type: application/json" \
  -d '{
    "language": "python",
    "entryFile": "main.py",
    "files": [
      { "path": "main.py", "content": "print(\"Hello from PrograMinds!\")" }
    ]
  }'

JavaScript (fetch)

const res = await fetch("https://compiler.programinds.com/api/compile", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    language: "python",
    entryFile: "main.py",
    files: [{ path: "main.py", content: 'print("Hello from PrograMinds!")' }],
  }),
});

const { stdout, stderr } = await res.json();

Try it

Pick a language, edit the code, and send a real request to /api/compile — this calls the live endpoint from your browser right now.

Response
 

Coming soon: a stable, keyed v1

POST /api/v1/execute with an API key and per-key quotas, once the endpoint above sees real usage worth stabilizing around.