Info
Migrating code into puzzle
Migration of an existing code is rather straightforward when using TypeScript or node.js. First you have to identify a puzzle boundaries, then you need to create a new puzzle:
cd <puzzle_parent_folder>
colabo puzzle-create
# provide all necessary parameters
When a new puzzle is created, you need to move the old code into the puzzle. Finally you should change all puzzle references from the previous relative imports into global imports through the npm package name
associated with the puzzle.
Publishing Puzzles
Backend
- Go to the puzzle folder
- run
npm publish
- this is demanding process regarding the
package.json
so you have everything right - it will end up published on npmjs.com
- This is an example: https://www.npmjs.com/org/colabo-utils
Here is an example which of the puzzle @colabo-flow/b-services belongs to the colabo-flow colabo sub-organization (sub-space)
{
"name": "@colabo-flow/b-services",
"description": "This is a ColaboFlow service puzzle of the backend part of the Colabo.Space ecosystem",
"version": "0.0.5",
"private": false,
"publishConfig": {
"access": "public"
},
"license": "MIT",
"repository": {
"type": "git",
"url": "git://github.com/Cha-OS/colabo.git"
},
"scripts": {
"build": "tsc"
},
"main": "dist/index.js",
"module": "dist/index.js",
"dependencies": {
"amqplib": "^0.5.2",
"chalk": "^2.4.1",
"uuid": "^3.3.2"
},
"peerDependencies": {},
"devDependencies": {}
}
name - puzzle name. @colabo-flow/b-services"
description - puzzle description
version - any meaningfull version that follow semantic versioning
private - should be false
to be able to publish
publishConfig - should be set as in example
license - you need to provide a license to be able to publish
repository - you need to provide a valid repository that will be linked to the published puzzle
main - it is the main entry point for the puzzle. It is the import and require point
module - it is used by bundler tools for ESM, and it can be treated same as main
dependencies - are all internal dependencies of the puzzle. It should contain both regular npm packages and other colabo puzzles that your puzzle depends on
Colabo.Puzzles
ColaboFlow
- ColaboFlow.Go! presentation
- presented in the context of the Audio Commons project
- ColaboFlow.Audit! presentation
- presented in the context of the Audio Commons project
- ColaboFlow introduction
- ColaboFlow infrastructure install
IMPORTANT DON'T MOVE THIS - IT'S FOR A DATE