Déjà Vu is a new language and tool for end-user development of apps with rich functionality. It features a theory of modularity for binding concepts; an extensive library of reusable concepts; and a WYSIWYG tool for specifying bindings and customizing visual layout.

As a user you might have noticed the fundamental similarities between the many applications you use daily. Maybe it was the day you were scrolling through your Facebook news feed and then through your Twitter feed? Or when you gave a 5-star review to a restaurant in Yelp, and then to a book in Amazon? Or that time when you replied to a tweet and found yourself later replying to a comment on Reddit?

Now picture the many software engineers developing web applications, ranging from internal business applications to those used by millions of users. How many of these engineers are, at this moment, adding some kind of news feed to their application? Adding star ratings or likes? Letting users write comments?

In each of these instances, developers are not all doing the exact same thing. In some cases, the feed is listing posts authored by users, in other cases it’s showing shopping products, or books. Some developers need the feature to be tweaked in a unique way, or are using different languages and frameworks. But fundamentally, they are all doing the same thing: combining pre-existing concepts in novel ways. If we could successfully exploit this fact, applications could be built much faster than how they are built today.

We expect to release an early prototype that illustrates our vision in Spring 2019.

You can sign up to get notified about the release of our platform here.

Acknowledgments

This research is part of a collaboration between MIT and SUTD (the Singapore University of Technology and Design), and is funded by a grant from SUTD's International Design Center.