fixthestatusquo / proca-server

Proca server, SDKs and services
https://proca.app
4 stars 3 forks source link
elixir typescript

   ,,\\\\\\,,
  ,\\\\\\\\\\\
 ▲▲▲▲▲▲\\\\\\\\  FIX THE STATUS QUO 
▲▲▲▲▲▲▲▲\\\\\\`  PROCA SERVER v3
▼▼▼▼▼▼▼▼\\\\\`   
 ▼▼▼▼▼▼\\\^``    https://proca.app

Proca server & satelite packages

About this repository

the vast majority of this repo is the elixir server. However, we have put as well some client api code that often needs to stay in sync with the server.

To add a new repository into this one, use lerna import tool. It will import all the commit history. Recommended way is:

yarn lerna import --flatten --dest service ../path/to/service-repo-on-disk

Make sure the dir name of repo is the same as one you want to be created under service/

Caveats

  1. Proca server is an Elixir project and tasks for it are run using mix tool. It contains package.json so lerna will treat it as a project; however, it is set to private and will not be published to npm repositories.

  2. You need to use Yarn and not NPM, as this is our choice and Yarn devs did not bother to implement lifecycle events in the same way as NPM ¯\_(ツ)_/¯. We are using yarn.

Available top level commands

Word of warning: NPM 7 changed the lifecycle evens most notably splitting the prepublish into prepare and prepareOnly. However, Yarn and Lerna differ. Lerna uses two lifecycle events: bootstrap and publish. Yarn uses a simpler events model so install runs preinstall, install, postinstall, prepublish, prepare.

lifecycle details

Build systems