Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Write apps like equations!

Code as simple and precise as Mathematical Expressions. Presto is written in PureScript harnessing the powers of Functional Programming & Category Theory. What you get is scalable, performant code with elegant abstractions. Our attempt with Presto is to really simplify the app development process.

Talk on Presto @FunctionalConf


You can get your hands dirty by building a mobile recharge app using Presto

git clone
cd purescript-presto/examples/billpay-react
npm i
bower i
npm start

Open http://localhost:8080/dist/ in your browser.

Code Snippet

billPayFlow :: Flow BillPayFailure StatusScreenAction
billPayFlow = do
  _            <- UI.splashScreen
  operators    <- Remote.fetchOperators
  operator     <- UI.chooseOperator operators
  mobileNumber <- UI.askMobileNumber
  amount       <- UI.askAmount
  result       <- Remote.payBill mobileNumber amount operator
  UI.billPayStatus mobileNumber amount result

See examples directory for more samples.


You can try out the below examples.

Learning Presto

Presto Guide makes it easy to get started and start building great apps very quickly. We are continually improving Presto's documentation and welcome suggestions of topics we could explain in greater detail. Please send an email to with your requests.

Add Presto to your existing project

bower i purescript-presto

Apps in Production

BHIM - Payments App, 17 Million Total Users
JuspaySafe - Payments Browser, 800 Million Txns Processed
JuspayFuel - Payments Solution for Gas Stations, 1000s of Outlets


Get updates on improvements to Presto and chat with the project maintainers and community members.

Join a discussion or start one at our forum or gitter channel.


See the file for details.