# AyMON > Runnable example projects and short guides for AyMON, an industrial monitoring > and automation engine configured in XML and scripted in a JavaScript-like language. Everything below in one file: http://docs.aymon.ca/llms-full.txt ## Pages - [AyMON](http://docs.aymon.ca/) - [The guides](http://docs.aymon.ca/docs/) - [1 — The element tree, and talking to a device](http://docs.aymon.ca/docs/01_The_Element_Tree/) - [2 — Timers, and what makes things happen](http://docs.aymon.ca/docs/02_Timers_and_Events/) - [3 — Scripting](http://docs.aymon.ca/docs/03_Scripting/) - [4 — What is free, and what is not](http://docs.aymon.ca/docs/04_Licensing/) - [Connections and protocols](http://docs.aymon.ca/docs/05_Connections_and_Protocols/) - [Access and safety](http://docs.aymon.ca/docs/06_Access_and_Safety/) - [PRJEDU_101 — first steps](http://docs.aymon.ca/PRJEDU_101/) - [PRJEDU_cluster — two engines, one job, and a failover](http://docs.aymon.ca/PRJEDU_cluster/) - [PRJEDU_gauge — read a dial gauge with a camera, in Python](http://docs.aymon.ca/PRJEDU_gauge/) - [PRJEDU_hardening — harden a plant that was delivered weak](http://docs.aymon.ca/PRJEDU_hardening/) - [PRJEDU_mcp — an AI assistant talks to the plant](http://docs.aymon.ca/PRJEDU_mcp/) - [PRJEDU_modbus — Modbus TCP, both ends, no hardware](http://docs.aymon.ca/PRJEDU_modbus/) - [PRJEDU_mqtt — MQTT, both ends, nothing to install](http://docs.aymon.ca/PRJEDU_mqtt/) - [PRJEDU_net — the engine writes mail and files, nothing to install](http://docs.aymon.ca/PRJEDU_net/) - [PRJEDU_odbc — one plant, any SQL database, chosen by a connection string](http://docs.aymon.ca/PRJEDU_odbc/) - [PRJEDU_oee — OEE of a production line, shift by shift](http://docs.aymon.ca/PRJEDU_oee/) - [PRJEDU_opcua — an OPC UA client, against a machine with its own server](http://docs.aymon.ca/PRJEDU_opcua/) - [PRJEDU_pages — web pages the engine writes (.ayp)](http://docs.aymon.ca/PRJEDU_pages/) - [PRJEDU_pid — a PID lab: a heater, its controller, and a tuning to find](http://docs.aymon.ca/PRJEDU_pid/) - [PRJEDU_plc — a PLC program for a bottle filling line](http://docs.aymon.ca/PRJEDU_plc/) - [PRJEDU_pycall — call Python from the XML and from JScript, asynchronously](http://docs.aymon.ca/PRJEDU_pycall/) - [PRJEDU_rep — two engines, one plant](http://docs.aymon.ca/PRJEDU_rep/) - [PRJEDU_robot_mcp — an AI assistant runs a robot cell, inside rules it cannot change](http://docs.aymon.ca/PRJEDU_robot_mcp/) - [PRJEDU_robotarm — a robot arm in a cell](http://docs.aymon.ca/PRJEDU_robotarm/) - [PRJEDU_snmp — SNMP, both ends, nothing to install](http://docs.aymon.ca/PRJEDU_snmp/) - [PRJEDU_sqlite — history in a database, with nothing to install](http://docs.aymon.ca/PRJEDU_sqlite/) - [PRJEDU_telnet — a shell into a running engine](http://docs.aymon.ca/PRJEDU_telnet/) - [PRJEDU_vision — a camera inspects bottles, in the engine](http://docs.aymon.ca/PRJEDU_vision/) - [PRJEDU_web — a live web page over HTTP, WebSocket and MQTT](http://docs.aymon.ca/PRJEDU_web/) - [PRJPER_adsb — the aircraft overhead, on a map](http://docs.aymon.ca/PRJPER_adsb/) - [PRJPER_phone — your phone's sensors in the engine](http://docs.aymon.ca/PRJPER_phone/) - [PRJPER_tello — fly a Tello drone, or the one in the box](http://docs.aymon.ca/PRJPER_tello/) - [Getting help](http://docs.aymon.ca/help/)