Skip to content

Commit b761645

Browse files
docs(README): updating readme file for services (#613)
Co-authored-by: akshatdubeysf <77672713+akshatdubeysf@users.noreply.github.com>
1 parent ea571ac commit b761645

11 files changed

Lines changed: 46 additions & 32 deletions

File tree

README.md

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
[![Quality gate](https://sonarcloud.io/api/project_badges/quality_gate?project=sourcefuse_loopback4-microservice-catalog)](https://sonarcloud.io/summary/new_code?id=sourcefuse_loopback4-microservice-catalog)
1111

12-
The `Sourceloop` is a collection of pre-built microservices that aim to reduce time to market for Enterprise projects. Large enterprises usually face a similar set of challenges when developing cloud native platforms as part of digital transformation efforts or the creation of new products. The services are implemented as [LoopBack Extensions](https://loopback.io/doc/en/lb4/Extending-LoopBack-4.html), allowing you to install them into existing LoopBack applications or use the [LoopBack Command-line interface](https://loopback.io/doc/en/lb4/Command-line-interface.html) to generate standalone services. Our recommended approach is to deploy these services as standalone micro-services in Docker.
12+
The `Sourceloop` is a collection of pre-built microservices that aim to reduce time to market for enterprise projects. Large enterprises usually face a similar set of challenges when developing cloud native platforms as part of digital transformation efforts or the creation of new products. The services are implemented as [LoopBack Extensions](https://loopback.io/doc/en/lb4/Extending-LoopBack-4.html), allowing you to install them into existing LoopBack applications or use the [LoopBack Command-line interface](https://loopback.io/doc/en/lb4/Command-line-interface.html) to generate standalone services. Our recommended approach is to deploy these services as standalone micro-services in Docker.
1313

1414
The current catalog consists of the following services:
1515

@@ -21,6 +21,9 @@ The current catalog consists of the following services:
2121
- [video-conferencing-service](services/video-conferencing-service)
2222
- [bpmn-service](services/bpmn-service)
2323
- [chat-service](services/chat-service)
24+
- [feature-toggle-service](services/feature-toggle-service)
25+
- [payment-service](services/payment-service)
26+
- [search-service](services/search-service)
2427

2528
This repository also contains a set of example projects in the [sandbox](sandbox) directory that can be run from `docker-compose`.
2629

@@ -33,6 +36,12 @@ This repository also contains a set of example projects in the [sandbox](sandbox
3336
- [in-mail-example](sandbox/in-mail-example)
3437
- [scheduler-example](sandbox/scheduler-example)
3538
- [video-conferencing-ms-example](sandbox/video-conferencing-ms-example)
39+
- [chat-notification-pubnub-example](sandbox/chat-notification-pubnub-example)
40+
- [feature-toggle-example](sandbox/feature-toggle-example)
41+
- [payment-example](sandbox/payment-example)
42+
- [search-client-example](sandbox/search-client-example)
43+
- [search-ms-example](sandbox/search-ms-example)
44+
- [user-onboarding-example](sandbox/user-onboarding-example)
3645

3746
## Table of Contents
3847

@@ -267,9 +276,9 @@ export class ExampleApplicationApplication extends BootMixin(
267276

268277
### DataSources and Migrations
269278

270-
The `Sourceloop` can support any Loopback 4 [DataSource](https://loopback.io/doc/en/lb4/DataSource.html). While you may see existing `DataSource`s, it is not mandatory to use them.
279+
The `Sourceloop` can support any Loopback 4 [DataSource](https://loopback.io/doc/en/lb4/DataSource.html). While you may see existing `DataSources`, it is not mandatory to use them.
271280

272-
The migrations required for this service are processed during the installation automatically if you set the `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or database, they may be effected. In such scenario, it is advised that you copy the migration files in your project root, using the `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
281+
The migrations required for this service are processed during the installation automatically if you set the `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or databases, they may be affected. In such a scenario, it is advised that you copy the migration files in your project root, using the `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
273282

274283
### Production Deployment
275284

@@ -279,6 +288,10 @@ Inside of the `sandbox` folder, you will find example applications and Dockerfil
279288

280289
`sandbox` folder contains example applications and docker files that can be run independently to see the services in action. You can use [Docker Compose](https://docs.docker.com/compose/) to run the sandbox applications.
281290

291+
## Sourceloop CLI
292+
293+
The Sourceloop CLI is a command-line interface tool that one use to initialize, develop, scaffold, and maintain sourceloop applications directly from a command shell. Learn more about [Sourceloop CLI](packages/cli/README.md).
294+
282295
### Related Projects
283296

284297
The `Sourceloop` utilizes many extensions created by SourceFuse.

services/audit-service/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ export class AuditDbDataSource extends juggler.DataSource implements LifeCy
116116

117117
### Migrations
118118

119-
The migrations required for this service are processed during the installation automatically if you set the `AUDIT_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or database, they may be effected. In such scenario, it is advised that you copy the migration files in your project root, using the `AUDIT_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
119+
The migrations required for this service are processed during the installation automatically if you set the `AUDIT_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or databases, they may be affected. In such a scenario, it is advised that you copy the migration files in your project root, using the `AUDIT_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
120120

121121
### API Documentation
122122

services/authentication-service/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ export class AuthenticationDbDataSource
169169

170170
### Migrations
171171

172-
The migrations required for this service are processed during the installation automatically if you set the `AUTH_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or database, they may be effected. In such scenario, it is advised that you copy the migration files in your project root, using the `AUTH_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
172+
The migrations required for this service are processed during the installation automatically if you set the `AUTH_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or databases, they may be affected. In such a scenario, it is advised that you copy the migration files in your project root, using the `AUTH_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
173173

174174
### Database Schema
175175

services/bpmn-service/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,15 +168,15 @@ export class WorkflowProvider implements Provider<WorflowManager> {
168168

169169
#### WorkerImplementationProvider
170170

171-
Your workers are automatically initiated once a workflow is executed, to provide the implementation details of workers, you need to give implementation template of one such worker using the `WorkflowServiceBindings.WorkerImplementationFunction`, a default implementation is provided [here](/src/providers/worker-implementation.provider.ts). You also need to register individual worker commands using the `WorkflowServiceBindings.RegisterWorkerFunction` function;
171+
Your workers are automatically initiated once a workflow is executed, to provide the implementation details of workers, you need to give an implementation template of one such worker using the `WorkflowServiceBindings.WorkerImplementationFunction`, a default implementation is provided [here](/src/providers/worker-implementation.provider.ts). You also need to register individual worker commands using the `WorkflowServiceBindings.RegisterWorkerFunction` function;
172172

173173
#### ExecutionInputValidationProvider
174174

175175
If you need to validate the inputs of a workflow execution, you can bind a custom validation provider using `WorkflowServiceBindings.ExecutionInputValidatorFn` key. The microservice comes with a default implementation using [AJV](https://www.npmjs.com/package/ajv).
176176

177177
### Migrations
178178

179-
The migrations required for this service are processed during the installation automatically if you set the `WORKFLOW_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or database, they may be effected. In such scenario, it is advised that you copy the migration files in your project root, using the `WORKFLOW_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
179+
The migrations required for this service are processed during the installation automatically if you set the `WORKFLOW_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or databases, they may be affected. In such a scenario, it is advised that you copy the migration files in your project root, using the `WORKFLOW_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
180180

181181
This project includes no migrations to seed your BPMN engine. If you are using Camunda BPM Run, you can use either the `resources` folder to seed a model, or you can config it to use a custom DB where you can seed your data. The steps to config Platform Run are given [here](https://camunda.com/blog/2020/03/introducing-camunda-bpm-run/).
182182

services/chat-service/README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ export class ChatDataSource
128128

129129
### Migrations
130130

131-
The migrations required for this service are processed during the installation automatically if you set the `CHAT_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or database, they may be effected. In such scenario, it is advised that you copy the migration files in your project root, using the `CHAT_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
131+
The migrations required for this service are processed during the installation automatically if you set the `CHAT_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or databasea, they may be affected. In such a scenario, it is advised that you copy the migration files in your project root, using the `CHAT_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
132132

133133
### API Documentation
134134

@@ -150,4 +150,6 @@ Authorization: Bearer <token> where <token> is a JWT token signed using JWT issu
150150
400: Bad Request (Error message varies w.r.t API)
151151
201: No content: Empty Response
152152

153-
#### API Details
153+
## API Details
154+
155+
Visit the [OpenAPI spec docs](./openapi.md)

services/feature-toggle-service/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ npm i @sourceloop/feature-toggle-service
6464
```
6565
- Set up a [Loopback4 Datasource](https://loopback.io/doc/en/lb4/DataSource.html) with `dataSourceName` property set to
6666
`FeatureToggleDbName`. You can see an example datasource [here](#setting-up-a-datasource).
67-
6867
- Start the application
6968
`npm start`
7069

services/in-mail-service/README.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ export class InmailDataSource
7676

7777
### Migration
7878

79-
The migrations required for this service are processed during the installation automatically if you set the `INMAIL_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or database, they may be effected. In such scenario, it is advised that you copy the migration files in your project root, using the `INMAIL_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
79+
The migrations required for this service are processed during the installation automatically if you set the `INMAIL_MIGRATION` or `SOURCELOOP_MIGRATION` env variable. The migrations use [`db-migrate`](https://www.npmjs.com/package/db-migrate) with [`db-migrate-pg`](https://www.npmjs.com/package/db-migrate-pg) driver for migrations, so you will have to install these packages to use auto-migration. Please note that if you are using some pre-existing migrations or databases, they may be affected. In such a scenario, it is advised that you copy the migration files in your project root, using the `INMAIL_MIGRATION_COPY` or `SOURCELOOP_MIGRATION_COPY` env variables. You can customize or cherry-pick the migrations in the copied files according to your specific requirements and then apply them to the DB.
8080

8181
#### Database Model
8282

@@ -147,7 +147,7 @@ Authorization: Bearer <token> where <token> is a JWT token signed using JWT issu
147147
```javascript
148148
{
149149
"threadId": "string", // Optional, add if you want the messages in a same thread
150-
"groups": [ // You can define one or more receipients in a group array.
150+
"groups": [ // You can define one or more recipients in a group array.
151151
{
152152
"party": "string", // email of the recipient
153153
"type": "to", // type can be to | cc | bcc
@@ -180,13 +180,13 @@ Authorization: Bearer <token> where <token> is a JWT token signed using JWT issu
180180
```javascript
181181
{
182182
"id": "string", // id of the message
183-
"version": "string" // API vewrsion
183+
"version": "string" // API version
184184
}
185185
```
186186

187187
##### PUT /mails/{messageId}
188188

189-
**Description:** Update Drafted Messages such as modifying attachment, receipients, message body, subject etc.
189+
**Description:** Update Drafted Messages such as modifying attachment, recipients, message body, subject etc.
190190

191191
**Request path Parameters:**
192192

@@ -196,7 +196,7 @@ Authorization: Bearer <token> where <token> is a JWT token signed using JWT issu
196196

197197
```javascript
198198
{
199-
"groups": [ // You can define one or more receipients in a group array.
199+
"groups": [ // You can define one or more recipients in a group array.
200200
{
201201
"party": "string", // email of the recipient
202202
"type": "to", // type can be to | cc | bcc
@@ -229,7 +229,7 @@ Success Response:
229229
```javascript
230230
{
231231
"id": "string", // id of the message
232-
"version": "string" // API vewrsion
232+
"version": "string" // API version
233233
}
234234
```
235235

@@ -309,13 +309,13 @@ Success Response:
309309
```javascript
310310
{
311311
"version": "string", // the API version
312-
"items": "Array<object>" // receipient/sender details which was restored from trash
312+
"items": "Array<object>" // recipient/sender details which was restored from trash
313313
}
314314
```
315315

316316
##### PATCH /mails/{messageId}/forward
317317

318-
**Description:** Forward the mail to another receipient
318+
**Description:** Forward the mail to another recipient
319319

320320
**Request path Parameter:**
321321

@@ -328,7 +328,7 @@ Success Response:
328328
"groups": [ // you can specify more recipients in groups array for forwarding the mail to multiple recipients
329329
{
330330
"party": "string", // email of the recipient
331-
"type": "to" | "bcc" | "cc", // receipient type
331+
"type": "to" | "bcc" | "cc", // recipient type
332332
}
333333
]
334334
}
@@ -345,7 +345,7 @@ Success Response:
345345

346346
##### PATCH /mails/{messageId}/send
347347

348-
**Description:** Send the drafted mail to the receipent
348+
**Description:** Send the drafted mail to the recipient
349349

350350
**Request path Parameter:**
351351

@@ -391,7 +391,7 @@ filter: Object which contains attribute(s) key value pairs of thread model which
391391
```javascript
392392
{
393393
"version": "string", // the API version
394-
"item": "object" // item containg the thread and the related message, attachment and/or meta-data details
394+
"item": "object" // item containing the thread and the related message, attachment and/or meta-data details
395395
}
396396
```
397397

0 commit comments

Comments
 (0)