Welcome to the PureScript documentation repository!
PureScript is a small, strongly typed programming language that compiles to JavaScript. To get a better overview of PureScript, visit The PureScript Website.
This repository is a collaborative effort, so please feel free to make a pull request to add/edit content or create an issue to discuss it. PureScript is a big project used by people coming from a variety of backgrounds. Making documentation useful to a wide variety of people is really hard to do well, requiring readers like you to point out and add documentation you feel is missing. Thanks for helping!
- Getting Started: Download PureScript and build your first project
- Try PureScript: Try PureScript in your browser
- Discourse: Discuss PureScript in a forum setting
- Discord: Chat about PureScript and attend video / audio meetups
- The PureScript Book is the recommended approach to learning the language, since it covers more material in greater depth.
- Language Reference
- PureScript: Jordan's Reference: An up-to-date project covering Getting Started, Build Tools, PureScript's syntax with examples, FP design patterns, and PureScript's ecosystem.
- PureScript Cookbook: An unofficial cookbook for PureScript.
- A guide to the PureScript numeric hierarchy: An introduction to the mathematics behind the numeric hierarchy of type classes in PureScript’s Prelude. (See also PureScript numeric hierarchy overview.)
- Common Operators
- The Foreign Function Interface (FFI)
- FFI Tips
- Custom Type Errors
- PureScript Without Node
- Contrib Library Guidelines
- Error Suggestions
- psc-ide FAQ
- Try PureScript Help
- Editor and tool support: Editor plugins, build tools, and other development tools
- PureScript and NixOS: How to use PureScript with NixOS
- PSCi: An interactive development tool for PureScript
- Maintained Packages
- Style Guide
- Alternate Backends: PureScript can compile to other languages as well!
Topics currently in this repository's scope:
- PureScript language reference documentation
- Its compiler errors
- Core concepts on which the language is based
- Comparison with similar languages
- An introduction to other sources of documentation
Topics currently not in scope:
- Using PureScript libraries (those docs belong with the corresponding libraries)
- A PureScript language teaching course (use the PureScript by Example book or other resources)
- Introduction to package managers and dependency management
Feel free to make an issue to discuss amending the scope.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.