/fission

Fission CLI & server

Primary LanguageHaskell

Fission

Continuous Integration License Discord Discourse

Seamlessly deploy websites and store secure user data

This project can build multiple binaries. Please refer to the README for the specific package (e.g. fission-cli, fission-core). Here is how the projects are related to each other:

           fission-core
                 ^
                 |
          fission-web-api
          ^             ^
          |             |
fission-web-client   fission-web-server
          ^
          |
    fission-cli

fission-core

Core data types, helper functions, Fission.Prelude

fission-web-api

Declarative definitions of our web API. The contract between the web client and server.

fission-web-client

Web client functions, classes, helper functions

fission-cli

CLI interface to our service

fission-server

Web server, database, 3rd party integrations

Building

Fission is built inside of a pure Nix shell via the Stack integration. This means that you should only need to type stack build to do a complete build of all packages.

Unfortunately, the Stack integration doesn't play well with lorri. If you've run lorri recently, you will either need to build with --no-nix or unset the STACK_IN_NIX_SHELL environment variable.

# bash or zsh
unset STACK_IN_NIX_SHELL
set -e STACK_IN_NIX_SHELL