# FAQ - Why did you develop Penpot using Clojure and Clojurescript?

**URL:** <https://community.penpot.app/t/faq-why-did-you-develop-penpot-using-clojure-and-clojurescript/45>\
**Category:** FAQ\
**Created:** [May 11, 2022, 2:50pm UTC](https://community.penpot.app/t/faq-why-did-you-develop-penpot-using-clojure-and-clojurescript/45 "2022-05-11T14:50:40Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![carolina.portugal](https://dub1.discourse-cdn.com/flex017/user_avatar/community.penpot.app/carolina.portugal/32/36_2.png) [@carolina.portugal](https://community.penpot.app/u/carolina.portugal)\
**Post date:** [May 11, 2022, 2:50pm UTC](https://community.penpot.app/t/faq-why-did-you-develop-penpot-using-clojure-and-clojurescript/45/1 "2022-05-11T14:50:40Z")

</div>

Penpot is a very specific type of tool that demands high performance on the web. Penpot also has the challenging task of seamlessly manipulating zillions of mathematical objects with no information loss. Functional programming languages like Clojure excel at this.

It is one of those instances where you absolutely need specific technology to be able to achieve a robust tool like Penpot in a short period of time. More information here:

> [@Penpot chose Clojure as its language and here’s why](https://community.penpot.app/t/penpot-chose-clojure-as-its-language-and-here-s-why/168):
>
> This is probably the question we’ve been asked the most at [Penpot](https://penpot.app/). We have a vague explanation in our [FAQ](https://community.penpot.app/t/faq-why-did-you-develop-penpot-using-clojure-and-clojurescript/45), so with this article I’ll try to explain a bit the motivations and spirit behind each decision. The rationale is multi-faceted. It all started in a PIWEEK. Of course! A small team, at one of our Personal Innovation Weeks ([PIWEEK](https://www.piweek.com/)) in 2015, began the project from the initial idea of making an open-source prototyping tool and released a working prototype after a week of hard work and lots of…

Since Clojure is not (yet?) a mainstream programming language, we are making sure that there will be ways to extend Penpot using other more common languages such as Javascript. Also, at the backend level, appropriate APIs will be in place to easily connect Penpot with other platforms.

> [@What are Penpot’s plans for a Plugin System?](https://community.penpot.app/t/what-are-penpot-s-plans-for-a-plugin-system/2412):
>
> The main goal for it is to facilitate the developers to create and publish their own custom plugins that integrate with our platform. Here are ours first ideas on how this system could work: The difference between a plugin and a code contribution is that their code for the plugins will be separate from the core app. Another advantage is that these plugins could be made by using HTML, CSS, and JS. To ensure that the plugins are safe and high quality, we will have a “devs area” where developers…
