buildcore-io / core

Your web3 plug & play platform
https://www.buildcore.io
Apache License 2.0
2 stars 0 forks source link

Contributors Forks Stargazers Issues Apache2 License


BUILD.5 logo

Buildcore

Your Enterprise ready web3 plug & play platform
Explore the docs »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact

About The Project

Buildcore is your Enterprise ready web3 plug & play platform. This repo contains the back-end based on serverless functions and our easy to use SDK for third parties.

(back to top)

Built With

(back to top)

Getting Started

To build the project locally, follow these simple steps. If you are interested in using the SDK to interact with our services, please refer to the SDK documentation.

Prerequisites

Make sure you have the following installed:

Installation

  1. Clone the repo
    git clone https://github.com/buildcore-io/core.git
  2. Install NPM packages
    npm install
  3. Build the packages
    npm run build

For running the docs locally, please refer to the documentation README.

(back to top)

Usage

The best way to get started with the SDK and interacting with Buildcore is installing the SDK and have a look at our documentation.

(back to top)

Running it locally

Navigate to the root folder and build the entire projet by running

   npm run build

Buildcore backend consist of 3 individually ran services.

  1. Search API This is a small express server that connects to the Postgres Database and exposes HTTP endpoints to query the data. To run it navigate to packages/search folder, upate .env.sample with your DB connection params and run npm run start

  2. Functions: This is the main part of the backend. It is an express server that exposes several HTTP enpoints. One part of the enpoints are for users who wish to interrect with the backend. The other part of the endpoints are triggered by the Notifier once there is a change in the database. To run the Functions locally:
    a) Navigate to packages/functions.
    b) Upate .env.sample with your DB connection params
    c) Runnpm run serve. This will start the express server and it will run the Notifier locally.

  3. Notifier: The Notifier is responsible for listening to changes in the database. Every time there is a change, the Notifier calls the relevant endpoint sending the data before and after the update. Locally, the notifier calls the endpoint directly but if deployed from the packages/notifier folder, it posts the changes to Google pub/sub.

Currently some tests in Functions are still strongly dependent on Google Cloud Storage, so to run the full test suite, you will need a Google Cloud service account file.

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

For more information on how to contribute, please read CONTRIBUTING.md

PRs Welcome

(back to top)

License

Distributed under the Apache License. See LICENSE for more information.

(back to top)

Contact

Buildcore - @buildcoretech - hello@buildcore.io

Project Link: https://buildcore.io

(back to top)