# CHAT80 demo of fullscreen mode
This demo illustrates that SWISH can be used to realise fully functional HTML5 web applications without showing any SWISH specific elements. The main applicaion consists of the HTML cell below that provides the entry form, a __hidden__ query that executes the command and shows the result and a __hidden__ program that ties the CHAT80 program to the query.
To examine this page, either download it or double click the HTML cell outside the input field, edit the two call near the bottom that hide the query and program and click outside the HTML cell to see the other page elements.
projection([Answer]), answer(Question, Answer).
:- use_module(library(chat80)).
example(Text) :-
chat_example(_Id, Tokens, _Answer),
maplist(token_num, Tokens, Plain),
atomics_to_string(Plain, " ", Text).
token_num(X, X) :- atom(X), !.
token_num(nb(X), X) :- number(X), !.
answer(Question, Answer) :-
tokenize_atom(Question, Plain),
maplist(token_num, Tokens, Plain),
( chat_process(Tokens, Answers)
-> member(Answer, Answers)
; format('Sorry, I do not understand this question~n'),
fail
).