Abstract
This work introduces an innovative approach that harnesses the power of large language models (LLMs) to facilitate the creation of websites by end users through natural language specifications. Our key contribution lies in a user-oriented method that utilizes prompt engineering, compelling the LLM response to adhere to a specific template, which in turn enables direct parsing of the model’s responses, allowing users to focus on refining the generated website without concerning themselves with the underlying code. The engineered prompt ensures model efficiency by implementing a modification strategy that preserves context and tokens generated in the LLM responses, updating only specific parts of the code rather than rewriting the entire document, thereby minimizing unnecessary code revisions. Moreover, our approach empowers LLMs to generate multiple documents, augmenting the user experience. We showcase a proof-of-concept implementation where users submit textual descriptions of their desired website features, prompting the LLM to produce corresponding HTML and CSS code. This paper underscores the potential of our approach to democratize web development and enhance its accessibility for non-technical users. Future research will focus on conducting user studies to ascertain the efficacy of our method within existing low-code/no-code platforms, ultimately extending its benefits to a broader audience.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
The context window refers to the amount of information an LLM can process at once. Preserving context is essential for interactions with LLMs, as it allows user to reference earlier parts of the conversation within the same generation process.
References
Alamin, M.A.A., Malakar, S., Uddin, G., Afroz, S., Haider, T., Iqbal, A.: An empirical study of developer discussions on low-code software development challenges, pp. 46–57, 05 2021. https://doi.org/10.1109/MSR52588.2021.00018
Barricelli, B.R., Cassano, F., Fogli, D., Piccinno, A.: End-user development, end-user programming and end-user software engineering: a systematic mapping study. J. Syst. Softw. 149, 101–137 (2019). https://doi.org/10.1016/j.jss.2018.11.041
Beltramelli, T.: Pix2code: generating code from a graphical user interface screenshot. In: Proceedings of the ACM SIGCHI Symposium on Engineering Interactive Computing Systems. EICS 2018, Association for Computing Machinery, New York (2018). https://doi.org/10.1145/3220134.3220135
Brown, T., et al.: Language models are few-shot learners. In: Larochelle, H., Ranzato, M., Hadsell, R., Balcan, M., Lin, H. (eds.) Advances in Neural Information Processing Systems, vol. 33, pp. 1877–1901. Curran Associates, Inc. (2020). https://proceedings.neurips.cc/paper/2020/file/1457c0d6bfcb4967418bfb8ac142f64a-Paper.pdf
Calò, T., De Russis, L.: Style-aware sketch-to-code conversion for the web. In: Companion of the 2022 ACM SIGCHI Symposium on Engineering Interactive Computing Systems, pp. 44–47. EICS 2022 Companion, Association for Computing Machinery, New York (2022). https://doi.org/10.1145/3531706.3536462
Chen, M., et al.: Evaluating large language models trained on code. arXiv preprint: arXiv:2107.03374 (2021)
Di Ruscio, D., Kolovos, D., de Lara, J., Pierantonio, A., Tisi, M., Wimmer, M.: Low-code development and model-driven engineering: two sides of the same coin? Softw. Syst. Model. 21(2), 437–446 (2022). https://doi.org/10.1007/s10270-021-00970-2
Ghiani, G., Paternò, F., Spano, L.D., Pintori, G.: An environment for end-user development of web mashups. Int. J. Hum. Comput. Stud. 87, 38–64 (2016). https://doi.org/10.1016/j.ijhcs.2015.10.008
Gomes, P.M., Brito, M.A.: Low-code development platforms: a descriptive study. In: 2022 17th Iberian Conference on Information Systems and Technologies (CISTI), pp. 1–4 (2022). https://doi.org/10.23919/CISTI54924.2022.9820354
Huang, F., Li, G., Zhou, X., Canny, J.F., Li, Y.: Creating user interface mock-ups from high-level text descriptions with deep-learning models. arXiv preprint: arXiv:2110.07775 (2021)
Käss, S., Strahringer, S., Westner, M.: Drivers and inhibitors of low code development platform adoption. In: 2022 IEEE 24th Conference on Business Informatics (CBI), vol. 01, pp. 196–205 (2022). https://doi.org/10.1109/CBI54897.2022.00028
Luo, Y., Liang, P., Wang, C., Shahin, M., Zhan, J.: Characteristics and challenges of low-code development: the practitioners’ perspective. In: Proceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM). ESEM 2021, Association for Computing Machinery, New York (2021). https://doi.org/10.1145/3475716.3475782
Namoun, A., Daskalopoulou, A., Mehandjiev, N., Xun, Z.: Exploring mobile end user development: existing use and design factors. IEEE Trans. Software Eng. 42(10), 960–976 (2016). https://doi.org/10.1109/TSE.2016.2532873
OpenAI: Gpt-4 Technical Report (2023)
Ouyang, L., et al.: Training language models to follow instructions with human feedback. arXiv preprint: arXiv:2203.02155 (2022)
Rode, J., Rosson, M.B., Qui nones, M.A.P.: End user development of web applications. In: Lieberman, H., Paterno, F., Wulf, V. (eds.) End User Development. Human-Computer Interaction Series, vol. 9, pp. 161–182. Springer, Dordrecht (2006). https://doi.org/10.1007/1-4020-5386-X_8
Rosson, M.B., Sinha, H., Bhattacharya, M., Zhao, D.: Design planning in end-user web development. In: IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2007), pp. 189–196 (2007). https://doi.org/10.1109/VLHCC.2007.45
Sahay, A., Indamutsa, A., Di Ruscio, D., Pierantonio, A.: Supporting the understanding and comparison of low-code development platforms. In: 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pp. 171–178 (2020). https://doi.org/10.1109/SEAA51224.2020.00036
Sales, J.E., Freitas, A., Oliveira, D., Koumpis, A., Handschuh, S.: Revisiting principles and challenges in natural language programming. In: Virvou, M., Nakagawa, H., C. Jain, L. (eds.) JCKBSE 2020. LAIS, vol. 19, pp. 7–19. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-53949-8_2
Shneiderman, B.: Human-centered AI. Oxford University Press, Oxford (2022)
Sinha, N., Karim, R., Gupta, M.: Simplifying web programming. In: Proceedings of the 8th India Software Engineering Conference, ISEC 2015, pp. 80–89. Association for Computing Machinery, New York (2015). https://doi.org/10.1145/2723742.2723750
Stocco, A.: How artificial intelligence can improve web development and testing. In: Companion Proceedings of the 3rd International Conference on the Art, Science, and Engineering of Programming. Programming 2019, Association for Computing Machinery, New York (2019). https://doi.org/10.1145/3328433.3328447
Symmonds, N.: Visual web developer, 01 2006. https://doi.org/10.1007/978-1-4302-0180-9_5
Tou, F.N., Williams, M.D., Fikes, R., Henderson, A., Malone, T.: RABBIT: an intelligent database assistant. In: Proceedings of the Second AAAI Conference on Artificial Intelligence, AAAI 1982, pp. 314–318. AAAI Press (1982)
Tzafilkou, K., Protogeros, N.: Diagnosing user perception and acceptance using eye tracking in web-based end-user development. Comput. Hum. Behav. 72, 23–37 (2017). https://doi.org/10.1016/j.chb.2017.02.035
Waszkowski, R.: Low-code platform for automating business processes in manufacturing. IFAC-PapersOnLine 52(10), 376–381 (2019). https://doi.org/10.1016/j.ifacol.2019.10.060. 13th IFAC Workshop on Intelligent Manufacturing Systems IMS 2019
Wong, J.: Marmite: towards end-user programming for the web. In: IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2007), pp. 270–271 (2007). https://doi.org/10.1109/VLHCC.2007.40
Woo, M.: The rise of no/low code software development-no experience needed? Engineering 6(2020). https://doi.org/10.1016/j.eng.2020.07.007
Wu, C., Yin, S., Qi, W., Wang, X., Tang, Z., Duan, N.: Visual ChatGPT: talking, drawing and editing with visual foundation models (2023). https://doi.org/10.48550/ARXIV.2303.04671, https://arxiv.org/abs/2303.04671
Xu, F.F., Vasilescu, B., Neubig, G.: In-ide code generation from natural language: promise and challenges. ACM Trans. Softw. Eng. Methodol. 31(2), 1–47 (2022). https://doi.org/10.1145/3487569
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Calò, T., De Russis, L. (2023). Leveraging Large Language Models for End-User Website Generation. In: Spano, L.D., Schmidt, A., Santoro, C., Stumpf, S. (eds) End-User Development. IS-EUD 2023. Lecture Notes in Computer Science, vol 13917. Springer, Cham. https://doi.org/10.1007/978-3-031-34433-6_4
Download citation
DOI: https://doi.org/10.1007/978-3-031-34433-6_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-34432-9
Online ISBN: 978-3-031-34433-6
eBook Packages: Computer ScienceComputer Science (R0)