1

Uniswap is a decentralized exchange that is actually a decentralized app where people can trade ERC-20 tokens without a middleman.

Uniswap's code is open-source:

Was the Uniswap code written purely in solidity, given the high number of .sol filename extensions? What other programming languages were involved?

Separate from the underlying architecture, how about the Uniswap interface, which I assume is the GUI that we interact with in our web browser when actually trading/swapping tokens. What language was it written in?

2

Uniswap protocol is developed in Solidity, and you can find two main building blocks:

  • uniswap-v2-core: Core smart contracts, essentially with the Factory, Pair and ERC20, together with a number of interfaces and libraries.
  • uniswap-v2-periphery: additional smart contracts to interact with the Core ones. They simplify the process of doing swaps or adding/removing liquidity.

Unless you have to do very specific or complex actions with this protocol, it is easier to use the periphery contracts by just calling the necessary functions.

On the other hand, there is already a user interface in which you can interact directly with the smart contracts without the need of coding anything. This interface is built with React using TypeScript and the @web3-react library to interact with Ethereum's smart contracts.

4
  • so Solidity is not only for writing smart contracts, but also for writing DApps? – user610620 Feb 1 at 17:12
  • A Dapp has several components, being the smart contracts the core one. You can find more details on ethereum.stackexchange.com/questions/383/what-is-a-dapp – Sergi Juanati Feb 1 at 18:44
  • most webmasters can only code in HTML, CSS, Javascript. Is there now a new breed of "DApp webmasters" that specialize in React, TypeScript and web3-react that sets them apart from the old school web designers? What is a good meeting hub to solicit such developers for a new project? – user610620 Feb 1 at 18:59
  • 1
    Knowing JavaScript, webmasters essentially need to learn either web3.js or ethers.js to interact with Ethereum. As for the framework, it can be React, Flutter, Angular, Vue... but I would say React seems to be quite a standard. To find developers: cryptojobslist.com , cryptocurrencyjobs.co , crypto.jobs , etc. – Sergi Juanati Feb 2 at 7:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.