Your Enterprise ready web3 plug & play platform
Explore the docs »
Report Bug
·
Request Feature
Table of Contents
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.
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.
Make sure you have the following installed:
- npm
- node >= 20
- modern yarn (optional, for running the docs locally)
- Clone the repo
git clone https://github.com/buildcore-io/core.git
- Install NPM packages
npm install
- Build the packages
npm run build
For running the docs locally, please refer to the documentation README.
The best way to get started with the SDK and interacting with Buildcore is installing the SDK and have a look at our documentation.
Navigate to the root folder and build the entire projet by running
npm run build
Buildcore backend consist of 3 individually ran services.
-
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 runnpm run start
-
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 topackages/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. -
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.
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!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
For more information on how to contribute, please read CONTRIBUTING.md
Distributed under the Apache License. See LICENSE
for more information.
Buildcore - @buildcoretech - [email protected]
Project Link: https://buildcore.io