Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge master #2861

Merged
merged 16 commits into from
Apr 12, 2024
Merged
8 changes: 1 addition & 7 deletions .github/workflows/docs-validate-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,4 @@ jobs:
node-version: 20
- name: Build whole project
run: npm run build
working-directory: .
- name: Allow modern Yarn
run: corepack enable
- name: Install dependencies
run: yarn
- name: Build
run: yarn build
working-directory: .
35 changes: 35 additions & 0 deletions .github/workflows/functions_tangle-unit-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3127,3 +3127,38 @@ jobs:
name: firestore-data-test-tangle-chunk_83
path: ./packages/functions/firestore-data/
retention-days: 1
chunk_84:
needs: npm-install
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20.x
- uses: actions/cache@v4
with:
path: |
node_modules
packages/functions/node_modules
packages/interfaces/node_modules
key: ${{ runner.os }}-modules-${{ hashFiles('**/package.json') }}
- name: Init
run: |
npm run build:functions
npm install -g firebase-tools
- name: Test
working-directory: packages/functions
run: |
export GOOGLE_APPLICATION_CREDENTIALS="./test-service-account-key.json"
npm run milestone-sync &
firebase emulators:exec "
npm run test-tangle:ci -- --forceExit --findRelatedTests ./test-tangle/soon.snapshot.only.spec.ts
" --project dev --only functions,firestore,storage,ui,auth --export-on-exit=./firestore-data
- name: Archive firestore data
uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: firestore-data-test-tangle-chunk_84
path: ./packages/functions/firestore-data/
retention-days: 1
58 changes: 23 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<!-- Improved compatibility of back to top link: See: https://github.com/othneildrew/Best-README-Template/pull/73 -->

<a name="readme-top"></a>

<!--
*** Thanks for checking out the Best-README-Template. If you have a suggestion
*** that would make this better, please fork the repo and create a pull request
Expand All @@ -8,8 +10,6 @@
*** Thanks again! Now go create something AMAZING! :D
-->



<!-- PROJECT SHIELDS -->
<!--
*** I'm using markdown "reference style" links for readability.
Expand All @@ -18,28 +18,27 @@
*** for contributors-url, forks-url, etc. This is an optional, concise syntax you may use.
*** https://www.markdownguide.org/basic-syntax/#reference-style-links
-->

[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
[![LinkedIn][linkedin-shield]][linkedin-url]



<!-- PROJECT LOGO -->
<br />
<div align="center">
<a href="https://github.com/build-5/core">
<img src="docs/static/img/logo.svg" alt="BUILD.5 logo" width="80" height="80">
<img src="docs/static/img/buildcore_logo.png" alt="BUILD.5 logo" width="80" height="80">
</a>

<h3 align="center">BUILD.5 Core</h3>
<h3 align="center">Buildcore</h3>

<p align="center">
Your Enterprise ready web3 plug & play platform
<br />
<a href="https://developer.build5.com/"><strong>Explore the docs »</strong></a>
<a href="https://developer.buildcore.io/"><strong>Explore the docs »</strong></a>
<br />
<br />
<a href="https://github.com/build-5/core/issues/new?template=bug_report.md">Report Bug</a>
Expand Down Expand Up @@ -72,40 +71,34 @@
</ol>
</details>



<!-- ABOUT THE PROJECT -->

## About The Project

Build.5 is your Enterprise ready web3 plug & play platform. This repo contains the back-end based on [serverless functions](./packages/functions/) and our easy to use [SDK](./packages/sdk/) for third parties.
Buildcore is your Enterprise ready web3 plug & play platform. This repo contains the back-end based on [serverless functions](./packages/functions/) and our easy to use [SDK](./packages/sdk/) for third parties.

<p align="right">(<a href="#readme-top">back to top</a>)</p>



### Built With

* [![Typescript][Typescript]][Typescript-url]
* [![Firestore][Firestore]][Firestore-url]
- [![Typescript][Typescript]][Typescript-url]
- [![Firestore][Firestore]][Firestore-url]

<p align="right">(<a href="#readme-top">back to top</a>)</p>



<!-- GETTING STARTED -->

## 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](https://developer.build5.com/).
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](https://developer.buildcore.io/).

### Prerequisites

Make sure you have the following installed:

* npm
* node >= 20
* modern yarn (optional, for running the docs locally)


- npm
- node >= 20
- modern yarn (optional, for running the docs locally)

### Installation

Expand All @@ -126,18 +119,16 @@ For running the docs locally, please refer to the documentation [README](./docs/

<p align="right">(<a href="#readme-top">back to top</a>)</p>



<!-- USAGE EXAMPLES -->

## Usage

The best way to get started with the SDK and interacting with Build.5 is [installing the SDK](https://www.npmjs.com/package/@build-5/sdk) and have a look at our [documentation](https://developer.build5.com).
The best way to get started with the SDK and interacting with Buildcore is [installing the SDK](https://www.npmjs.com/package/@build-5/sdk) and have a look at our [documentation](https://developer.buildcore.io).

<p align="right">(<a href="#readme-top">back to top</a>)</p>



<!-- CONTRIBUTING -->

## 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**.
Expand All @@ -157,30 +148,27 @@ For more information on how to contribute, please read [CONTRIBUTING.md](./CONTR

<p align="right">(<a href="#readme-top">back to top</a>)</p>



<!-- LICENSE -->

## License

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

<p align="right">(<a href="#readme-top">back to top</a>)</p>



<!-- CONTACT -->

## Contact

Build.5 - [@build5tech](https://twitter.com/build5tech) - hello@build5.com
Buildcore - [@build5tech](https://twitter.com/build5tech) - hello@buildcore.io

Project Link: [https://build5.com](https://build5.com)
Project Link: [https://buildcore.io](https://buildcore.io)

<p align="right">(<a href="#readme-top">back to top</a>)</p>



<!-- MARKDOWN LINKS & IMAGES -->
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->

[contributors-shield]: https://img.shields.io/github/contributors/build-5/core.svg?style=for-the-badge
[contributors-url]: https://github.com/build-5/core/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/build-5/core.svg?style=for-the-badge
Expand Down
4 changes: 2 additions & 2 deletions docs/docs/architecture.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Architecture
description: A description of the current and future architecture of build.5
description: A description of the current and future architecture of Buildcore
tags:
- architecture
- smart contracts
Expand All @@ -18,6 +18,6 @@ import InProgress from './_admonitions/_in-progress.md';

:::info

All core BUILD.5 logic will move primary into L1 SC and some to L2 SC
All core Buildcore logic will move primary into L1 SC and some to L2 SC

:::
8 changes: 4 additions & 4 deletions docs/docs/faqs.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: FAQs
description: Questions and answers collections for build.5
description: Questions and answers collections for Buildcore
tags:
- faq
- open source
Expand All @@ -10,10 +10,10 @@ import InProgress from './_admonitions/_in-progress.md';

<InProgress/>

## Is Build.5 Open Sourced?
## Is Buildcore Open Sourced?

All BUILD.5 code is developed under Apache.2 license and fully open sourced.
All Buildcore code is developed under Apache.2 license and fully open sourced.

## Why OTR?

By utilizing On Tangle Requests (OTRs), we are [preparing](./architecture.md) for the future integration of Smart Contracts into our system. OTRs provide a transparent and visible way to interact with build.5 products enhance security by enabling all interactions to be verified on the Tangle. By adopting OTRs, you can ensure a more future-proof approach and minimize the need for extensive refactoring or UI changes.
By utilizing On Tangle Requests (OTRs), we are [preparing](./architecture.md) for the future integration of Smart Contracts into our system. OTRs provide a transparent and visible way to interact with Buildcore products enhance security by enabling all interactions to be verified on the Tangle. By adopting OTRs, you can ensure a more future-proof approach and minimize the need for extensive refactoring or UI changes.
22 changes: 11 additions & 11 deletions docs/docs/getting-started.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Getting started
description: Learn about build.5 and its APIs
description: Learn about Buildcore and its APIs
tags:
- APIs
- OTR
Expand All @@ -11,7 +11,7 @@ import { Build5, SoonaverseApiKey } from '@site/../packages/sdk/src/https';
import TabItem from '@theme/TabItem';
import Tabs from '@theme/Tabs';

Build.5 API provides various ways to interact with our platform. The recommended one is the [@build-5/sdk](https://www.npmjs.com/package/@build-5/sdk) which interacts through a REST API and our so called [OTRs](#otr) with the Build.5 platform.
Buildcore API provides various ways to interact with our platform. The recommended one is the [@build-5/sdk](https://www.npmjs.com/package/@build-5/sdk) which interacts through a REST API and our so called [OTRs](#otr) with the Buildcore platform.

## SDK

Expand All @@ -22,7 +22,7 @@ npm i @build-5/sdk
npm i @build-5/interfaces
```

The sdk is split into two modules to interact with the Build.5 platform. `otr` and `https`. Checkout the following sections to lern more.
The sdk is split into two modules to interact with the Buildcore platform. `otr` and `https`. Checkout the following sections to lern more.

:::info

Expand All @@ -32,19 +32,19 @@ To create Requests we recommend using the OTR method instead of POST requests an

## OTR

On tangle requests are a secure and transparent way to interact with build.5 products. They are a way to send a request to a build.5 backend over the Tangle as a transaction.
On tangle requests are a secure and transparent way to interact with Buildcore products. They are a way to send a request to a Buildcore backend over the Tangle as a transaction.
The backend will then execute the request encoded in the OTR. All interactions can be verified on the Tangle.

```mermaid
flowchart LR
A[BUILD.5 SDK] --> |DeepLink| B(Wallet) --> |OTR| C(Tangle)
A[Buildcore SDK] --> |DeepLink| B(Wallet) --> |OTR| C(Tangle)
C --> |Observer| A
D[BUILD.5 Verse] <--> C
D[Buildcore Verse] <--> C
```
As you see in the chart above, the workflow of working with OTR is the following:
1) Prepare the OTR data with the SDK and create a Deeplink for the request.
2) Clicking the Deeplink in for example a dApp frontend will open the specific wallet with a preconfigured transaction to create the OTR. The OTR is a transaction on the Tangle to a specific OTR Address with encoded metadata.
3) The Build.5 Backend (a so called `Verse`) will monitor the tangle and check if OTRs where send to its (OTR-)Address. If so the request will be handled and if necessary assets or a response will be send back to the caller/wallet via Tangle.
3) The Buildcore Backend (a so called `Verse`) will monitor the tangle and check if OTRs where send to its (OTR-)Address. If so the request will be handled and if necessary assets or a response will be send back to the caller/wallet via Tangle.
4) The SDK can monitor the transaction with an [Observable](./reference-api/classes/Observable.md) object and check its status.

### Example
Expand All @@ -61,7 +61,7 @@ You can specify the environment you want to work in, by using the specific OTR A

## HTTPS

The SDK also provides a wrapper for BUILD.5s API.
The SDK also provides a wrapper for Buildcores API.

:::info

Expand All @@ -71,16 +71,16 @@ We are in the process of migrating POST requests to OTR.

```mermaid
flowchart LR
A[BUILD.5 SDK] --> |API POST| D[BUILD.5 Verse] --> |Address| A
A[Buildcore SDK] --> |API POST| D[Buildcore Verse] --> |Address| A
A --> |Address| B
C(Tangle) --> |Observer| A
B(Wallet) --> |Transaction| C
D <--> C
```
As you see in the chart above, the workflow of working with HTTPS POST is the following:
1) The SDK creates a POST request. This request has to be signed by either a web3 wallet like Metamask or Tanglepay. The response will contain specific Address for this request from the Build.5 backend (so called verse).
1) The SDK creates a POST request. This request has to be signed by either a web3 wallet like Metamask or Tanglepay. The response will contain specific Address for this request from the Buildcore backend (so called verse).
2) This Address can than be used by a wallet to send the needed funds/assets for the request.
3) The Build.5 Verse will monitor the tangle and check if funds/assets where send to the Address. If so the request will be handled and if necessary assets or a response will be send back to the caller via Tangle.
3) The Buildcore Verse will monitor the tangle and check if funds/assets where send to the Address. If so the request will be handled and if necessary assets or a response will be send back to the caller via Tangle.
4) The SDK can monitor the transaction with an Observer and check its status.

### Example
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/how-to/introduction.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: 'Introduction'
describtion: 'Learn about the BUILD.5 products and how to use them.'
describtion: 'Learn about the Buildcore products and how to use them.'
tags: ['products', 'api', 'blockchain', 'nft', 'digital twin', 'token', 'staking', 'trading', 'launchpad', 'staking', 'reputation', 'member', 'project', 'proposal', 'stake reward', 'token distribution', 'dao management']
---

Expand Down
2 changes: 1 addition & 1 deletion docs/docs/how-to/project/create-project.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import SoonaverseProject from '../../_admonitions/_soonaverse-project.md';

## About Projects

Projects are your starting point for the Build.5 platform. You need a project to create spaces, modify your billing information, create NFT collections, tokens, and more.
Projects are your starting point for the Buildcore platform. You need a project to create spaces, modify your billing information, create NFT collections, tokens, and more.
This how-to will show you how to create a project.

# Example
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/how-to/token/creation-managment/create-token.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Create a Token
description: How to create a token on the build.5 platform
description: How to create a token on the Buildcore platform
tags:
- how-to
- create
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/how-to/token/creation-managment/import-token.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Import Token
description: How to import a token minted outside of the build.5 platform
description: How to import a token minted outside of the Buildcore platform
tags:
- how-to
- import
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/how-to/token/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ tags:
- introduction
---

Build.5 allows you to create your tokens, create public sales, allow trading, and more. The following How-Tos are split into two sections:
Buildcore allows you to create your tokens, create public sales, allow trading, and more. The following How-Tos are split into two sections:

## Creation and Management

Expand Down
6 changes: 3 additions & 3 deletions docs/docs/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ Please note this documentation is still in progress. The main focus is the API's

:::

Welcome to the BUILD.5 documentation.
Welcome to the Buildcore documentation.
We recommend you start with the [Getting Started](getting-started) page.

[Our architecture](architecture) is designed to fully adopt new features built on IOTA/Shimmer L1 and L2. Our primary focus will always be L1, as we believe it gives us a significant advantage within the DLT ecosystem. Ultimately, our execution logic would be fully migrated into L1 and L2 Smart Contracts once the technology is available.

As you can see in the current design, asset management, custody, and more are directly created/managed within the DLT. Build.5 just provides an execution layer to limit the exposure to centralized pieces. Even things like token buy/sell are settled directly on L1, and we continue pushing its limits.
As you can see in the current design, asset management, custody, and more are directly created/managed within the DLT. Buildcore just provides an execution layer to limit the exposure to centralized pieces. Even things like token buy/sell are settled directly on L1, and we continue pushing its limits.

We're an open-source project operating out of a Swiss non-profit association. Join us in the effort to build the best "Enterprise ready web3 plug & play platform".

If you need any help, reach out to our discord. We're ready to help you on your Build.5 journey.
If you need any help, reach out to our discord. We're ready to help you on your Buildcore journey.
Loading
Loading