Mohamed Rayen Sansa
ENFR
All projects
Internship · Sofrecom Tunisia2025

RAG Low-code UI Generator

Can a natural-language prompt produce a usable low-code interface?

During my summer internship as an AI intern at Sofrecom Tunisia, I built a RAG (Retrieval-Augmented Generation) system that automatically generates user interfaces in GrapesJS from natural-language prompts, to speed up low-code application development. An innovative project bringing generative AI and low-code together.

My role
AI intern: designed and built the RAG system and its prompts
Duration
2 months (Jul – Aug 2025)
Platforms
Web, AI
Stack
  • RAG
  • Gemini
  • GrapesJS
  • Python
  • Vertex AI
  • Flask
  • JavaScript
  • Prompt engineering
  • Google ADK
1:10 000

Situation

Summer internship at Sofrecom Tunisia as an AI intern (July – August 2025), on an innovative project combining generative AI (RAG) and low-code interface generation.

The goal: go from a single sentence to an interface ready to edit, to speed up low-code application development.

What this internship gave me:

  • designing and implementing a RAG system end to end;
  • applying low-code technologies to speed up interface creation;
  • contributing to an innovative project in a collaborative, professional environment.
1:1 000

Product

  • The user describes the interface they want, in natural language.
  • The RAG system retrieves the context relevant to the request, then generates the interface in GrapesJS, the low-code editor.
  • The result stays visually editable: you start from a generated base instead of a blank page.
1:100

System

  • RAG pipeline: retrieval of the relevant context, then generation by Gemini through Vertex AI.
  • Prompt templates for structured, reliable outputs.
  • Flask back end, GrapesJS / JavaScript front end, REST APIs.

Hiring? Compare with your offer

Paste your internship offer. You will see which of the technologies you ask for are backed by one of my projects or internships, and which are not.

The text stays in your browser; nothing is sent.