Hello, how are you?
I recently built a firmware with some of the requested features.
The webpage uses bootstrap to create style, so it has a very friendly interface, with a navigation menu and 4 screens:
1 - Monitor: shows the reading of the sensors (digital and analog). The screen updates every 10s
2 - Wifi configuration: checks the available SSIDs and presents them in a multiselect. Additional password field
3 - MQTT configuration: Server, port, user and password fields
4 - Sensor settings: Multiplier for the analog sensor.
ESP8266 was programmed in the Arduino interface and the html, css and js codes were saved in flash memory.
Although esp8266 has a 4MB flash, I avoided using images because the wifi transfer rate is not so high.
Is this more or less the idea of your project?