Terminal is an interactive command surface, not an operating-system shell. Set welcomeMessage and prompt, handle commandSubmit and append response lines to output. Each line supports output, info or error. response can append a single changed response string; output is the clearer choice for repeated replies and application-owned logs. readonly keeps the input visible but prevents command editing; disabled keeps it visible but unavailable.
Change the options, try the result and see the template update. Code contains the full executable example.
Try and configure
Type help or status, then press Enter. Use โ / โ to recall commands. Commands are handled locally; no shell code runs.
Local session
Welcome. Type help to begin.
$
commandSubmit: โ
Template generated from your current options. Open Code for the complete example.
Structured data, callbacks and templates are shown in the examples and API.
Code adds advanced options when they differ from the default. Current configuration data and values appear in the template state.
template.html
<neu-terminal
prompt="$"
[output]="output()"
[response]="undefined"
[readonly]="false"
[disabled]="false"
(commandSubmit)="handleCommand($event)"
[ariaLabel]="'Example terminal'"
[welcomeMessage]="'Welcome. Type help to begin.'"
/>
These values match the current preview. Complete handlers, Core imports and templates are in Source.
configured-state.ts
import { signal } from '@angular/core';
export const output = signal([]);
These inputs require a model or function, not a checkbox. Edit the same-named field in the Source component and bind it in the template; data already used by this preview appears in the state above.
commandSubmit reports the submitted command. The application decides what it means and supplies output; Core never evaluates or executes it. The example handles help and status synchronously. Previous commands are recalled with up/down. The reset action creates a fresh example session. No Templates are available.
Give the terminal and its input distinct accessible names. Tab reaches the command input, Enter submits, and up/down move through command history. Output is announced as a polite log. Do not use this example handler to execute untrusted input.
Reports a submitted command string; Core does not execute it.
Templates
ng-content projects content into the component. TemplateRef inputs receive a template; ng-template directives identify templates with a typed context. A directive shared by an entrypoint is not necessarily a slot of this component.
This component does not expose content projection or public customization templates.
Public Types
Open a type to inspect its definition and interface fields.
NeuTerminalCommand.d.ts
import type { NeuTerminalCommand } from '@neural-ui/core/terminal';
// Public declaration (reference only)
export interface NeuTerminalCommand {
command: string;
}
NeuTerminalLine.d.ts
import type { NeuTerminalLine } from '@neural-ui/core/terminal';
// Public declaration (reference only)
export interface NeuTerminalLine {
kind?: 'output' | 'error' | 'info';
text: string;
}