|
1 |
| -<!-- This readme will display with the repository on GitHub. --> |
2 |
| - |
3 |
| - |
4 |
| - |
5 |
| - |
6 |
| -# Hypermode Functions SDK for AssemblyScript |
7 |
| - |
8 |
| -This repository contains the SDK used by [Hypermode](https://hypermode.com) |
9 |
| -Functions written in [AssemblyScript](https://www.assemblyscript.org/). |
10 |
| - |
11 |
| -The SDK provides a library to access the Hypermode platform, and helper classes |
12 |
| -and functions for use with Hypermode Functions, and examples to demonstrate usage. |
13 |
| - |
14 |
| -## Documentation |
15 |
| - |
16 |
| -Please visit [docs.hypermode.com](https://docs.hypermode.com/) for detailed docs |
17 |
| -covering the Hypermode platform, including this SDK. |
18 |
| - |
19 |
| -## Getting Started |
20 |
| - |
21 |
| -### Prerequisites |
22 |
| - |
23 |
| -Ensure you have [Node.js](https://nodejs.org/) 20 or higher installed and activated. |
24 |
| - |
25 |
| -You can install Node.js with any supported method, including: |
26 |
| - |
27 |
| -- Downloading the official [prebuilt installer](https://nodejs.org/en/download) |
28 |
| -- Using a [package manager](https://nodejs.org/en/download/package-manager) |
29 |
| - |
30 |
| -### Trying out the examples |
31 |
| - |
32 |
| -The [`examples`](./examples/) folder contains example projects that demonstrate the |
33 |
| -features of the Hypermode platform. |
34 |
| - |
35 |
| -#### Initial setup |
36 |
| - |
37 |
| -Before compiling any example, you must first do the following: |
38 |
| - |
39 |
| -1. Clone this repository locally: |
40 |
| - |
41 |
| - ```sh |
42 |
| - git clone https://github.com/hypermodeinc/functions-as |
43 |
| - ``` |
44 |
| - |
45 |
| -2. From the repository root, navigate to the `src` folder: |
46 |
| - |
47 |
| - ```sh |
48 |
| - cd ./src/ |
49 |
| - ``` |
50 |
| - |
51 |
| -3. Install dependencies with NPM: |
52 |
| - |
53 |
| - ```sh |
54 |
| - npm install |
55 |
| - ``` |
56 |
| - |
57 |
| -The above steps only needs to be performed one time. |
58 |
| - |
59 |
| -#### Compiling an example |
60 |
| - |
61 |
| -Now that we've set up the prerequisites, we can compile an example project with the following steps: |
62 |
| - |
63 |
| -1. From the repository root, navigate to the example's folder: |
64 |
| - |
65 |
| - ```sh |
66 |
| - cd ./examples/<name>/ |
67 |
| - ``` |
68 |
| - |
69 |
| -2. Install dependencies with NPM: |
70 |
| - |
71 |
| - ```sh |
72 |
| - npm install |
73 |
| - ``` |
74 |
| - |
75 |
| -3. Build the project with NPM: |
76 |
| - |
77 |
| - ```sh |
78 |
| - npm run build |
79 |
| - ``` |
80 |
| - |
81 |
| -On a successful build, you'll find the output in the example's `build` folder. |
82 |
| - |
83 |
| -> _NOTE:_ For convenience, the examples have their `package.json` configured |
84 |
| -> with a local path to the source project, as follows: |
85 |
| -> |
86 |
| -> ```json |
87 |
| -> "dependencies": { |
88 |
| -> "@hypermode/functions-as": "../../src", |
89 |
| -> }, |
90 |
| -> ``` |
91 |
| -> |
92 |
| -> In your own project, you should instead reference a version number of |
93 |
| -> [the published package](https://www.npmjs.com/package/@hypermode/functions-as), |
94 |
| -> as you would with any other project dependency. |
95 |
| -
|
96 |
| -### Creating your own Hypermode plugin |
97 |
| -
|
98 |
| -When you are ready to start writing your own Hypermode plugin, we recommend starting |
99 |
| -from the [Hypermode Base Template](https://github.com/hypermodeinc/base-template). |
100 |
| -
|
101 |
| -It is pre-configured to use the latest version of this library, and has all of the |
102 |
| -necessary configuration, scripts, and workflows needed to develop your Hypermode functions. |
103 |
| -
|
104 |
| -1. Navigate to the [Hypermode Base Template](https://github.com/hypermodeinc/base-template) repository. |
105 |
| -2. Click the "Use this template" button in the upper-right corner to create your own repository. |
106 |
| -3. In the `functions` folder, edit the `package.json` file to update the `name`, `version`, `description`, |
107 |
| - `author`, and `license` properties as needed for your purposes. |
108 |
| -4. In the `functions/assembly` folder, begin writing your Hypermode functions in `index.ts`. |
109 |
| - You can replace the starter function with your own code. You can also add more files to the `assembly` |
110 |
| - folder and use `import` and `export` statements to connect them (as seen in the `simple` example). |
111 |
| - _Note that only the final function exports from `index.ts` will be registered as Hypermode Functions._ |
112 |
| -5. In the root folder of your project, edit the `hypermode.json` manifest file as needed to connect the |
113 |
| - models and hosts used by your functions. |
114 |
| -
|
115 |
| -### Publishing to Hypermode |
116 |
| -
|
117 |
| -Currently, your project must be created from the template project in order to publish it to Hypermode. |
118 |
| -
|
119 |
| -The Hypermode GitHub application will need to be added to your repository, and Hypermode backend will |
120 |
| -need to be set up. During this early phase, Hypermode staff will coordinate with you to perform these |
121 |
| -steps manually. Please contact your Hypermode representative for further details. |
| 1 | +This project has been fully merged into [Modus](https://github.com/hypermodeinc/modus) and is now archived. |
0 commit comments