Skip to content

Commit 3382ea0

Browse files
authored
Merge pull request #97 from oslabs-beta/stephany/readme-2
feat&fix: Add npm package readme, update package.json descriptions, small fixes on .github readme
2 parents 42a0bdd + e796674 commit 3382ea0

File tree

4 files changed

+108
-28
lines changed

4 files changed

+108
-28
lines changed

README.md renamed to .github/README.md

Lines changed: 30 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
<div style="text-align: center">
2-
<img src="mlflow-site/public/assets/mlflow-js-logo-whitebg.png" width=600px;"/></div>
2+
<img src="../mlflow-site/public/assets/mlflow-js-logo-whitebg.png" width=600px;"/></div>
33

44
<br>
55

66
## About
77

8-
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](/LICENSE)
8+
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](../LICENSE)
99
![Release](https://img.shields.io/badge/Release-v1.0.0-426B20)
1010
![Build](https://img.shields.io/badge/Build-Passing-brightgreen.svg)
11-
![Coverage](https://img.shields.io/badge/Coverage-80%25-c7ea46.svg)
12-
[![Contributions](https://img.shields.io/badge/Contributions-Welcome-brightgreen.svg)](/CONTRIBUTING.md)
11+
![Coverage](https://img.shields.io/badge/Coverage-87%25-c7ea46.svg)
12+
[![Contributions](https://img.shields.io/badge/Contributions-Welcome-brightgreen.svg)](../CONTRIBUTING.md)
1313

1414
<i>mlflow.js</i> is an open-source npm library designed for JavaScript developers who want to integrate with MLflow, providing tools and functionalities for managing machine learning lifecycle.
1515

16-
<a href="">Visit the official mlflow.js site for more info!</a>
16+
<a href="https://www.mlflow-js.org/">Visit the official <i>mlflow.js</i> site for more info!</a>
1717

1818
Visit our LinkedIn page below:
1919

@@ -23,7 +23,7 @@ Visit our LinkedIn page below:
2323

2424
## Features
2525

26-
<i>mlflow.js</i> covers all REST API endpoints under MLflow's Tracking Server and Model Registry. Official documentation for MLflow.js can be found <a href="">here</a>. Moreover, high-level abstraction workflows have been developed to facilitate developers' work processes.
26+
<i>mlflow.js</i> covers all REST API endpoints under MLflow's Tracking Server and Model Registry. Official documentation for <i>mlflow.js</i> can be found <a href="https://www.mlflow-js.org/documentation">here</a>. Moreover, high-level abstraction workflows have been developed to facilitate developers' work processes.
2727

2828
### High-Level Abstraction Workflows
2929

@@ -43,6 +43,12 @@ Visit our LinkedIn page below:
4343
- createRegisteredModelWithVersion - Creates a new registered model and the first version of that model
4444
- updateRegisteredModelDescriptionAndTag - Updates a registered model's description and tags
4545
- updateAllLatestModelVersion - Updates the latest version of the specified registered model's description, adds a new alias, and tag key/value for the latest version
46+
- setLatestModelVersionTag - Adds a new tag key/value for the latest version of the specified registered model
47+
- setLatestModelVersionAlias - Adds an alias for the latest version of the specified registered model
48+
- updateLatestModelVersion - Updates the description of the latest version of a registered model
49+
- updateAllModelVersion - Updates the specified version of the specified registered model's description and adds a new alias and tag key/value for that specified version
50+
- deleteLatestModelVersion - Deletes the latest version of the specified registered model
51+
- createModelFromRunWithBestMetric - Creates a new model with the specified model name from the run with the best specified metric
4652

4753
<br>
4854

@@ -73,7 +79,7 @@ Ensure MLflow is installed on your system:
7379
pip install mlflow
7480
```
7581

76-
Note: MLflow is compatible with MacOS. If you encountner issues with the default system Python, consider installing Python 3 via the Homebrew package manger using `brew install python`. In this case, installing MLflow is now `pip3 install mlflow`.
82+
**Note:** MLflow is compatible with MacOS. If you encounter issues with the default system Python, consider installing Python 3 via the Homebrew package manger using `brew install python`. In this case, installing MLflow is now `pip3 install mlflow`.
7783

7884
### Start the MLflow Tracking Server
7985

@@ -89,59 +95,60 @@ This will launch the MLflow UI on your local machine at `http://localhost:5000`.
8995

9096
## Quickstart
9197

92-
### Install MLflow.js Library
98+
### Install <i>mlflow.js</i> Library
9399

94-
To use the MLflow.js library, navigate to your project directory and install it via npm:
100+
To use the <i>mlflow.js</i> library, navigate to your project directory and install it via npm:
95101

96102
```bash
97103
npm install mlflow-js
98104
```
99105

100106
### Usage Example
101107

102-
Here is an example of how to use the MLflow.js library to create an experiment:
108+
Here is an example of how to use the <i>mlflow.js</i> library to create an experiment:
103109

104110
```JavaScript
105111
import Mlflow from 'mlflow-js';
106112

107113
// Initialize the MLflow client
108-
const mlflow = new Mlflow('http://127.0.0.1:5000');
114+
const mlflow = new Mlflow(process.env.MLFLOW_TRACKING_URI);
109115

110116
// Create a new experiment
111117
async function createExperiment(){
112-
await mlflow.createExperiment('My Experiment');
113-
console.log('Experiment created successfully');
118+
await mlflow.createExperiment('My Experiment');
119+
console.log('Experiment created successfully');
114120
}
115121

116122
createExperiment();
123+
117124
```
118125

119126
<br>
120127

121128
## Documentation
122129

123-
Official documentation for MLflow.js can be found <a href="">here</a>.
130+
Official documentation for <i>mlflow.js</i> can be found <a href="https://www.mlflow-js.org/documentation">here</a>.
124131

125132
<br>
126133

127134
## Contributing
128135

129-
We welcome contributions to mlflow.js! Please see our [Contributing Guide](CONTRIBUTING.md) for more details on how to get started.
136+
We welcome contributions to <i>mlflow.js</i>! Please see our [Contributing Guide](../CONTRIBUTING.md) for more details on how to get started.
130137

131138
<br>
132139

133140
## License
134141

135-
[MIT](/LICENSE)
142+
[MIT License](../LICENSE)
136143

137144
<br>
138145

139146
## Meet The Team
140147

141-
| Name | GitHub | LinkedIn |
142-
| -------------- | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
143-
| Kyler Chiago | [![GitHub](https://img.shields.io/badge/-GitHub-181717?style=flat-square&logo=github)](https://github.com/Kyler-Chiago) | [![LinkedIn](https://img.shields.io/badge/-LinkedIn-0077B5?style=flat-square&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/kyler-chiago/) |
144-
| Austin Fraser | [![GitHub](https://img.shields.io/badge/-GitHub-181717?style=flat-square&logo=github)](https://github.com/austinbfraser) | [![LinkedIn](https://img.shields.io/badge/-LinkedIn-0077B5?style=flat-square&logo=linkedin&logoColor=white)](http://www.linkedin.com/in/austin-fraser) |
145-
| Stephany Ho | [![GitHub](https://img.shields.io/badge/-GitHub-181717?style=flat-square&logo=github)](https://github.com/seneyu) | [![LinkedIn](https://img.shields.io/badge/-LinkedIn-0077B5?style=flat-square&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/stephanyho/) |
146-
| Winston Ludlam | [![GitHub](https://img.shields.io/badge/-GitHub-181717?style=flat-square&logo=github)](https://github.com/winjolu/) | [![LinkedIn](https://img.shields.io/badge/-LinkedIn-0077B5?style=flat-square&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/wjludlam/) |
147-
| Yiqun Zheng | [![GitHub](https://img.shields.io/badge/-GitHub-181717?style=flat-square&logo=github)](https://github.com/yiqunzheng) | [![LinkedIn](https://img.shields.io/badge/-LinkedIn-0077B5?style=flat-square&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/yiqunzheng/) |
148+
| Name | GitHub | LinkedIn |
149+
| -------------- | ------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
150+
| Yiqun Zheng | [![GitHub](https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github)](https://github.com/yiqunzheng) | [![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/yiqunzheng/) |
151+
| Kyler Chiago | [![GitHub](https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github)](https://github.com/Kyler-Chiago) | [![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/kyler-chiago/) |
152+
| Austin Fraser | [![GitHub](https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github)](https://github.com/austinbfraser) | [![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](http://www.linkedin.com/in/austin-fraser) |
153+
| Stephany Ho | [![GitHub](https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github)](https://github.com/seneyu) | [![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/stephanyho/) |
154+
| Winston Ludlam | [![GitHub](https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github)](https://github.com/winjolu/) | [![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/wjludlam/) |

CONTRIBUTING.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,17 @@ cd mlflow && npm install
1616
cd ../mlflow-site && npm install
1717
```
1818

19-
4. Run the mlflow-site
19+
4. Create your feature branch
2020

2121
```bash
22-
npm run dev
22+
git checkout -b feature/AmazingFeature
2323
```
2424

25-
5. Create your feature branch
25+
5. Run MLflow Tracking Server container with Docker
2626

2727
```bash
28-
git checkout -b feature/AmazingFeature
28+
cd mlflow
29+
npm run docker
2930
```
3031

3132
6. Make your changes

mlflow/README.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
<!-- README for NPM; the one for GitHub is in .github directory. -->
2+
3+
# mlflow.js
4+
5+
A JavaScript library designed to provide seamless integration with MLflow's REST API. This package offers access to all the essential endpoints for both the MLflow Tracking Server and Model Registry, along with high-level abstraction workflows, enabling efficient management of machine learning experiments and model lifecycle.
6+
7+
# Install
8+
9+
```bash
10+
npm install mlflow-js
11+
```
12+
13+
# Usage
14+
15+
An example of how to create an experiment:
16+
17+
```javascript
18+
import Mlflow from 'mlflow-js';
19+
20+
// Initialize the MLflow client
21+
const mlflow = new Mlflow(process.env.MLFLOW_TRACKING_URI);
22+
23+
// Create a new experiment
24+
async function createExperiment() {
25+
await mlflow.createExperiment('My Experiment');
26+
console.log('Experiment created successfully');
27+
}
28+
29+
createExperiment();
30+
```
31+
32+
# Documentation
33+
34+
See [https://www.mlflow-js.org/](https://www.mlflow-js.org/)
35+
36+
# API
37+
38+
## Tracking Server
39+
40+
- Experiment Client (8)
41+
- Create Experiment, Search Experiment, Get Experiment, Get Experiment By Name, Delete Experiment, Restore Experiment, Update Experiment, Set Experiment Tag
42+
- Run Client (15)
43+
- Create Run, Delete Run, Restore Run, Get Run, Update Run, Log Metric, Log Batch, Log Model, Log Inputs, Set Tag, Delete Tag, Log Param, Get Metric History, Search Runs, List Artifacts
44+
45+
## Model Registry
46+
47+
- Model Registry Client (12)
48+
- Create, Registered Model, Get Registered Model, Rename Registered Model, Update Registered Model, Delete Registered Model, Get Latest Model Versions, Search Registered Models, Set Registered Model Tag, Delete Registered Model Tag, Set Registered Model Alias, Delete Registered Model Alias, Get Model Version By Alias
49+
- Model Version Client (9)
50+
- Create Model Version, Get Model Version, Update Model Version, Search Model Versions, Get Download URI for Model Version Artifacts, Transition Model Version Stage, Set Model Version Tag, Delete Model Version Tag, Delete Model Version
51+
52+
## High-Level Abstraction Workflows
53+
54+
- Experiment Manager (3)
55+
- Run Existing Experiment, Run New Experiment, Experiment Summary
56+
- Run Manager (2)
57+
- Cleanup Runs, Copy Run
58+
- Model Manager (9)
59+
- Create Registered Model With Version, Update Registered Model Description And Tag, Update All Latest Model Version, Set Latest Model Version Tag, Set Latest Model Version Alias, Update Latest Model Version, Update All Model Version, Delete Latest Model Version, Create Model From Run With Best Metric

mlflow/package.json

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,24 @@
22
"name": "mlflow-js",
33
"version": "1.0.0",
44
"description": "JavaScript library for MLflow",
5+
"homepage": "https://www.mlflow-js.org/",
6+
"repository": {
7+
"type": "git",
8+
"url": "git+https://github.com/oslabs-beta/mlflow-js.git"
9+
},
10+
"bugs": {
11+
"url": "https://github.com/oslabs-beta/mlflow-js/issues"
12+
},
13+
"pull_request": {
14+
"url": "https://github.com/oslabs-beta/mlflow-js/pulls"
15+
},
516
"type": "module",
617
"main": "lib/index.js",
718
"types": "lib/index.d.ts",
819
"files": [
9-
"lib"
20+
"lib/",
21+
"README.md",
22+
"LINCENSE"
1023
],
1124
"exports": {
1225
".": "./lib/index.js"

0 commit comments

Comments
 (0)