Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/owsas/parse-server-addon-cloud-algolia
parse-server addon to sync your tables with algolia in Parse.Cloud
https://github.com/owsas/parse-server-addon-cloud-algolia
addon algolia algolia-search parse parse-server parsesdk
Last synced: 2 months ago
JSON representation
parse-server addon to sync your tables with algolia in Parse.Cloud
- Host: GitHub
- URL: https://github.com/owsas/parse-server-addon-cloud-algolia
- Owner: owsas
- Created: 2017-11-04T05:43:11.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2018-09-12T16:36:24.000Z (over 6 years ago)
- Last Synced: 2024-11-07T03:43:58.324Z (3 months ago)
- Topics: addon, algolia, algolia-search, parse, parse-server, parsesdk
- Language: TypeScript
- Size: 55.7 KB
- Stars: 5
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Parse Server Addon Cloud Algolia
![Travis](https://travis-ci.org/owsas/parse-server-addon-cloud-algolia.svg?branch=master)
Travis tests: https://travis-ci.org/owsas/parse-server-addon-cloud-algolia
Keeps in sync your database with Algolia, adding new behaviours on the `afterSave` and `afterDelete` functions on the Cloud Code.
This is an addon for [ParseCloudClass](https://github.com/owsas/parse-cloud-class), and [parse-server](https://github.com/parse-community/parse-server)
## Installation
```
npm install --save parse-server-addon-cloud-class-algolia
```Note: This package is Typescript friendly and comes with Intellisense :)
## Features
* Adds new objects in your class to algolia
* Updates the objects in algolia when they change
* Deletes the objects in algolia as they get removed from your database
* Works for both PostgresSQL and MongoDB## How to use
This package requires you to check first `parse-server-addon-cloud-class` and how it works.
```js
// cloud/main.js
import {
ParseCloudClass
} from 'parse-server-addon-cloud-class';import {
AlgoliaCloudAddon
} from 'parse-server-addon-cloud-class-algolia';const algoliaAddon = new AlgoliaCloudAddon()
// initialize this with your credentials
.initialize('ALGOLIA_APP_ID', 'ALGOLIA_KEY', 'INDEX_NAME')
// set the keys you want to index in algolia
// for each of your objects
.setKeysToIndex([ 'name', 'location', 'numShares', 'otherObj' ]);// Now we create the configuration for our class. For more information, refer to its docs
// here: https://github.com/owsas/parse-cloud-class
const classConfig = new ParseCloudClass();
classConfig.useAddon(algoliaAddon);// Now we finish configuring the class to
// use our given configuration
ParseCloudClass.configureClass(Parse, 'MyParseClass', classConfig);
```## The result
You will have a sync between your desired Parse class, stored in PostgreSQL or MongoDB and Algolia for efficient searching.
This addon will setup the following hooks:
* __afterSave__
* __afterDelete__## Extending the Algolia Cloud Addon
You can easily extend the Algolia Cloud Addon as it is a normal Javascript class, doing the following:
```ts
import {
AlgoliaCloudAddon
} from 'parse-server-addon-cloud-class-algolia';export class MyModified extends AlgoliaCloudAddon {
// your new implementations to the lyfecycle functions
}
```Note: Check all the possibilities [here](https://github.com/owsas/parse-cloud-class)
## Credits
Developed by Juan Camilo Guarín Peñaranda,
Otherwise SAS, Colombia
2017## License
MIT.
## Support us on Patreon
[![patreon](./repo/patreon.png)](https://patreon.com/owsas)