Skip to content

A lightweight, fast and unintrusive PureScript file-watcher

License

Notifications You must be signed in to change notification settings

kritzcreek/pscid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Sep 28, 2023
15fbe13 · Sep 28, 2023
Sep 28, 2023
Sep 28, 2023
May 11, 2023
May 28, 2023
Sep 28, 2023
Sep 27, 2016
Sep 28, 2023
May 11, 2023
Sep 28, 2023
Sep 28, 2023
May 28, 2023
Sep 28, 2023

Repository files navigation

CI Status npm version

pscid

An editor agnostic minimal IDE for your shell. Think spago -w build on steroids.

Installation

npm i -g pscid

Usage

Start pscid in a terminal in the root folder of your project.

pscid will show you errors and warnings (one at a time) whenever you save a PureScript source file. This makes for a nice iterative workflow.

Type b inside pscid's terminal window to build your project. This looks up the pscid:build script inside your package.json, then falls back to the build script, and then finally tries spago build.

Type t inside pscid's terminal window to test your project. As with building this looks up the pscid:test script first, then test, then falls back to spago test as a last resort.

Type q to quit pscid.

Suggestions

Some warnings carry a suggestion from the compiler (for example redundant imports). pscid will prompt you to press s inside the terminal window when it encounters such a warning, and automatically apply the suggestion for you.

Demo

Demo GIF

Options

  • -p The port to use. Defaults to 4243
  • --include -I <dir;dir;...> Additional directories for PureScript source files, separated by ;
  • --censor-codes <UnusedTypeVar,...> Warning codes to ignore, seperated by , (just like in purescript-psa)
  • --test Runs your tests after every successful rebuild
  • -O/--output Specifies what output directory to use to load the externs for the server

Attribution

pscid utilizes https://github.com/natefaubion/purescript-psa to format and enrich the errors and warnings emitted by the compiler.

It's inspired by https://github.com/ndmitchell/ghcid and https://github.com/anttih/psc-pane.

LICENSE

Copyright 2023 Christoph Hegemann and Contributors

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

See the LICENSE file for further details.