๐Ÿ“– Documentation

Complete reference for Flutter IDE โ€” methods, APIs, and why they matter.

โš™๏ธ Core Methods

IDE.createFile(path, content)
Create a new file in the current project.
โœ… Advantage: No need to manually create folders or touch files. Ideal for code generation and scaffolding.
IDE.openFile(path)
Open an existing file in the editor.
โœ… Advantage: Works with any text-based file. Automatically detects syntax.
IDE.saveFile()
Save the currently opened file.
โœ… Advantage: Auto-save can be enabled. Never lose your work.
IDE.run()
Run the current Dart / Flutter project.
โœ… Advantage: One-click run. No terminal commands. Supports hot reload.
IDE.hotReload()
Trigger hot reload on connected device (Flutter only).
โœ… Advantage: See UI changes instantly. No recompilation needed.
IDE.getProjectPath()
Returns the absolute path of the current project.
โœ… Advantage: Useful for scripts and external tool integration.

๐Ÿ”’ CT-Only Methods Requires CT Token

IDE.httpGet(url)
Perform an HTTP GET request.
โœ… Advantage: Built-in HTTP client. No need to add external packages.
IDE.httpPost(url, body)
Perform an HTTP POST request with JSON body.
โœ… Advantage: Automatic JSON serialization/deserialization.
IDE.runTerminalCommand(cmd)
Run a shell / bash command in the built-in terminal.
โœ… Advantage: No need to switch to external terminal. Output captured inside IDE.
IDE.callGcc(sourceFile, outputFile)
Compile C/C++ code using the built-in GCC wrapper.
โœ… Advantage: Cross-compile for Android/Windows/Linux from within Flutter IDE.
IDE.generateHex(data)
Convert binary data or text to a .hex file.
โœ… Advantage: Useful for embedded developers. No extra tools required.
IDE.validatePath(path)
Check if a file or directory exists and has proper permissions.
โœ… Advantage: Helps debug "file not found" errors in complex projects.
IDE.allowExternalPull(apiToken)
Enable external software (e.g., MT Manager) to pull zone files via HTTP API.
โœ… Advantage: Seamless integration with other Android tools.

๐ŸŽฏ Why These Methods?

Problem Flutter IDE Solution Alternative (Without IDE)
Creating files manually is slow IDE.createFile() Open terminal โ†’ mkdir โ†’ touch โ†’ open editor
Hot reload requires keybindings / terminal IDE.hotReload() (one click) Switch to terminal โ†’ press 'r' โ†’ switch back
HTTP requests need external packages IDE.httpGet() (built-in, CT required) Add http package โ†’ write async code โ†’ handle errors
Calling GCC requires separate terminal setup IDE.callGcc() (CT required) Install GCC โ†’ configure PATH โ†’ type command manually
Path validation is repetitive IDE.validatePath() Write File.exists + permission checks every time

๐Ÿ’ก Example: Using CT Methods

import 'package:flutter_ide_sdk/flutter_ide_sdk.dart';

void main() async {
  // Download a file using built-in HTTP (CT required)
  var data = await IDE.httpGet('https://api.example.com/data.json');
  print('Received: ${data.length} bytes');

  // Compile a C file
  IDE.callGcc('src/main.c', 'output');
  IDE.runTerminalCommand('./output');

  // Generate hex from text
  IDE.generateHex('Hello, World!');
}
	

๐Ÿ“š Summary

Flutter IDE methods are designed to remove friction:

You write code. The IDE handles the rest.

โš ๏ธ Not an official Google product. Flutter is a trademark of Google LLC. This IDE is an independent project by ShadowMaker, not endorsed by or affiliated with Google.