[Video/Article] A high-level overview of PureScript

A high-level overview of PureScript and its ecosystem. Who uses it and why…

Video: https://youtu.be/GTYgsXTh10Q
Text: High-level overview of PureScript - DEV Community


Hey! Is because of this video that I decided to give PureScript a try! :wave: Any recommendations on how to setup a new project? I’m planning to use a simple web component and firebase, any help/recommendations would be appreciated! :pray: (I need firebase because I want to try migrating and existing app from Elm to PS as an exercise :wink: )


In theory, everything you need to get started is npm -g i purescript purescript-language-server spago purs-tidy (or not global alternative) and then spago init.

Spago has great docs about bundling, packaging, and stuff. If you need a basic example of a project I have a basic react repo (it shows a basic FFI and set-up), there should be different framework specific examples and templates, such as deku-starter, real world halogen and real world react.

I assume with your experience, you don’t need to catch-up much – for some other ad-hoc PureScript stuff, you might need to consult with PureScript book, PureScript docs, and Jordan’s reference.

Regarding firebase, I’ve seen this: GitHub - mikesol/joyride: A rhythm game to play with friends and frenemies by @mikesol. I don’t have any experience. Probably asking on Discord or making a separate post would be more fruitful. Not sure if anyone else but me reads comments on this topic :sweat_smile:


Awesome, huge thanks! :rocket:

1 Like

Hi! Thanks @Zelenya for the ping and pleasure to e-meet you @kvothe :slight_smile:

If I had to do it over again, I would have done much more in the JS layer. Basically, I would have banished the word “firebase” from the purescript side and just had bindings with the names of my business logic like getCurrentUser or augmentPoints. The code base does this to an extent, but not as much as it should, and a lot of needless complexity exists in the PS code base as a result.

All this was pre-ChatGPT. I forget what my life was like before that tool - probably terrible - but since then the JS/PS boundary has become really clear for me. Anything that chatgpt can spit out should go in JS, anything where it speaks in platitudes or generalities should go in PS. It gets quite specific and accurate wrt firebase, so run with that IMHO!