diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md
index b97326e6f..564734d53 100644
--- a/docs/CONTRIBUTING.md
+++ b/docs/CONTRIBUTING.md
@@ -12,7 +12,7 @@
pip install -e ".[dev]"
```
-- Install [pre-commit](https://pre-commit.com/) and then activate its hooks. pre-commit is a framework for managing and maintaining multi-language pre-commit hooks. The Feature Store uses pre-commit to ensure code-style and code formatting through [ruff](https://docs.astral.sh/ruff/). Run the following commands from the `python` directory:
+- Install [pre-commit](https://pre-commit.com/) and then activate its hooks. pre-commit is a framework for managing and maintaining multi-language pre-commit hooks. The library uses pre-commit to ensure code-style and code formatting through [ruff](https://docs.astral.sh/ruff/). Run the following commands from the `python` directory:
```bash
cd python
diff --git a/hsfs/docs/assets/images/hopsworks-logo.png b/docs/assets/images/hopsworks-logo.png
similarity index 100%
rename from hsfs/docs/assets/images/hopsworks-logo.png
rename to docs/assets/images/hopsworks-logo.png
diff --git a/docs/index.md b/docs/index.md
new file mode 100644
index 000000000..162c95f97
--- /dev/null
+++ b/docs/index.md
@@ -0,0 +1,130 @@
+# Hopsworks Client
+
+
- needed to position the dropdown content */
-.dropdown {
- position: absolute;
- display: inline-block;
-}
-
-/* Dropdown Content (Hidden by Default) */
-.dropdown-content {
- display: none;
- font-size: 13px;
- position: absolute;
- background-color: #f9f9f9;
- min-width: 160px;
- box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
- z-index: 1000;
- border-radius: 2px;
- left: -15px;
-}
-
-/* Links inside the dropdown */
-.dropdown-content a {
- color: black;
- padding: 12px 16px;
- text-decoration: none;
- display: block;
-}
-
-/* Change color of dropdown links on hover */
-.dropdown-content a:hover {
- background-color: #f1f1f1
-}
-
-/* Show the dropdown menu on hover */
-.dropdown:hover .dropdown-content {
- display: block;
-}
-
-/* Change the background color of the dropdown button when the dropdown content is shown */
-.dropdown:hover .dropbtn {}
\ No newline at end of file
diff --git a/hsfs/docs/css/marctech.css b/hsfs/docs/css/marctech.css
deleted file mode 100644
index 8bb58c97b..000000000
--- a/hsfs/docs/css/marctech.css
+++ /dev/null
@@ -1,1047 +0,0 @@
-:root {
- --md-primary-fg-color: #1EB382;
- --md-secondary-fg-color: #188a64;
- --md-tertiary-fg-color: #0d493550;
- --md-quaternary-fg-color: #fdfdfd;
- --md-fiftuary-fg-color: #2471cf;
- --border-radius-variable: 5px;
- --border-width:1px;
- }
-
- .marctech_main a{
- color: var(--md-fiftuary-fg-color);
- border-bottom: 1px dotted var(--md-fiftuary-fg-color) !important;
- text-decoration: dotted !important;}
-
- .marctech_main a:hover{
- border-bottom: 1px dotted var(--md-primary-fg-color)!important;
- }
-
- .marctech_main a:visited{
- color: var(--md-tertiary-fg-color);
- border-bottom: 1px dotted var(--md-tertiary-fg-color) !important;
-
- }
-
- .w-layout-grid {
- display: -ms-grid;
- display: grid;
- grid-auto-columns: 1fr;
- -ms-grid-columns: 1fr 1fr;
- grid-template-columns: 1fr 1fr;
- -ms-grid-rows: auto auto;
- grid-template-rows: auto auto;
- grid-row-gap: 16px;
- grid-column-gap: 16px;
- }
-
- .image_logo{
- width: 69%;
- background-color: white;
- z-index: 50;
- padding: 0px 15px 0px 15px;
- margin-bottom: 10px;
- }
-
- .layer_02{
- pointer-events: none;
- }
-
- .round-frame{
- pointer-events: initial;
- }
-
- .marctech_main {
- margin-top:-20px;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- margin-bottom: 55px;
- }
-
- .collumns {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- height: 100%;
- -webkit-box-align: stretch;
- -webkit-align-items: stretch;
- -ms-flex-align: stretch;
- align-items: stretch;
- }
-
- .col_heading {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- }
-
- .enterprisefs {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- }
-
- .enterprise_ai {
- -webkit-align-self: center;
- -ms-flex-item-align: center;
- -ms-grid-row-align: center;
- align-self: center;
- -webkit-box-flex: 1;
- -webkit-flex: 1;
- -ms-flex: 1;
- flex: 1;
- }
-
- .side-content {
- z-index: 0;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- width: 240px;
- height: 100%;
- margin-top: 10px;
- margin-bottom: 10px;
- padding: 20px 10px;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- -webkit-align-content: flex-start;
- -ms-flex-line-pack: start;
- align-content: flex-start;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #585858;
- border-radius: 10px;
- background-color:var(--md-quaternary-fg-color);
- }
- .body {
- padding: 40px;
- font-family: Roboto, sans-serif;
- }
-
- .green {
- color: #1eb182;
- font-size: 1.2vw;
- }
-
- .rec_frame {
- position: relative;
- z-index: 1;
- display: inline-block;
- min-width: 150px;
- margin-top: 10px;
- margin-right: 10px;
- margin-left: 10px;
- padding: 10px 10px;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #585858;
- border-radius: 10px;
- background-color: #fff;
- box-shadow: 4px 4px 0 0 rgba(88, 88, 88, 0.16);
- -webkit-transition: box-shadow 200ms ease, border-color 200ms ease;
- transition: box-shadow 200ms ease, border-color 200ms ease;
- color: #585858;
- text-align: center;
- cursor: pointer;
- }
-
- .rec_frame:hover {
- border-color: #c2c2c2;
- box-shadow: none;
- }
-
- .name_item {
- font-size: 0.7rem;
- line-height: 120%;
- font-weight: 700;
- }
-
- .name_item.db {
- position: relative;
- z-index: 3;
- text-align: left;
- }
-
- .name_item.small {
- font-size: 0.6rem;
- font-weight: 500;
- }
-
- .name_item.ingrey {
- padding-bottom: 20px;
- }
-
- .db_frame-mid {
- position: relative;
- z-index: 1;
- margin-top: -8px;
- padding: 5px 2px;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #585858;
- border-radius: 0px 0% 50% 50%;
- background-color: #fff;
- color: #585858;
- text-align: center;
- }
-
- .db_frame-top {
- position: relative;
- z-index: 2;
- padding: 5px 2px;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #585858;
- border-radius: 50%;
- background-color: #fff;
- color: #585858;
- text-align: center;
- }
-
- .icondb {
- position: relative;
- width: 25px;
- min-width: 25px;
- margin-right: 10px;
- }
-
- .db_frame {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- width: 150px;
- height: 55px;
- padding: 20px 10px;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #585858;
- border-radius: 10px;
- background-color: #fff;
- box-shadow: 4px 4px 0 0 rgba(88, 88, 88, 0.16);
- -webkit-transition: box-shadow 200ms ease, border-color 200ms ease;
- transition: box-shadow 200ms ease, border-color 200ms ease;
- color: #585858;
- text-align: center;
- cursor: pointer;
- }
-
- .db_frame:hover {
- border-color: #c2c2c2;
- box-shadow: none;
- }
-
- .grid {
- -ms-grid-rows: auto auto auto;
- grid-template-rows: auto auto auto;
- }
-
- .arrowdown {
- position: relative;
- z-index: 0;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- margin-top: -10px;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- }
-
- .heading_MT {
- margin-top: 0px !important;
- margin-bottom: 0px !important;
- font-size: 1.3rem !important;
- white-space: nowrap !important;
- }
-
- .head_col {
- padding-left: 10px;
- }
-
- .MT_heading3 {
- margin-top: 0px !important ;
- font-size: 0.8rem !important;
- }
-
- .MT_heading3.green {
- color: #1eb182 !important;
- }
-
- .column_sides {
- position: relative;
- z-index: 2;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: justify;
- -webkit-justify-content: space-between;
- -ms-flex-pack: justify;
- justify-content: space-between;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- }
-
- .hopsicon {
- width: 45px;
- height: 45px;
- }
-
- .column_center {
- z-index: 10;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- }
-
- .center-content {
- z-index: -50;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- width: 750px;
- height: 670px;
- margin-top: 10px;
- margin-bottom: 10px;
- padding: 20px 10px;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- -webkit-align-content: center;
- -ms-flex-line-pack: center;
- align-content: center;
- border-radius: 10px;
- background-color: transparent;
- }
-
- .image {
- width: 260px;
- }
-
- .layer_01 {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: stretch;
- -webkit-align-items: stretch;
- -ms-flex-align: stretch;
- align-items: stretch;
- }
-
- .name_center {
- font-size: 1rem;
- font-weight: 700;
- }
-
- .rec_frame_main {
- position: relative;
- z-index: 1;
- margin-top: 10px;
- margin-right: 10px;
- margin-left: 10px;
- padding: 5px 10px;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #1eb182;
- border-radius: 10px;
- background-color: #e6fdf6;
- box-shadow: 4px 4px 0 0 #dcf7ee;
- -webkit-transition: box-shadow 200ms ease, border-color 200ms ease;
- transition: box-shadow 200ms ease, border-color 200ms ease;
- color: #1eb182;
- text-align: center;
- cursor: pointer;
- }
-
- .rec_frame_main:hover {
- border-color: #9fecd4;
- box-shadow: none;
- }
-
- .rec_frame_main.no_content {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- height: 100%;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- box-shadow: 4px 4px 0 0 #dcf7ee;
- }
-
- .rec_frame_main.no_content:hover {
- border-color: #1eb182;
- box-shadow: 4px 4px 0 0 rgba(88, 88, 88, 0.16);
- }
-
- .name_item_02 {
- font-size: 0.85rem;
- font-weight: 700;
- }
-
- .grid-infra {
- padding-top: 20px;
- -ms-grid-columns: 1fr 1fr 1fr 1fr;
- grid-template-columns: 1fr 1fr 1fr 1fr;
- -ms-grid-rows: auto;
- grid-template-rows: auto;
- }
-
- .rec_frame_main-white {
- position: relative;
- z-index: 1;
- display: inline-block;
- width: 100%;
- margin-top: 10px;
- margin-bottom: 10px;
- padding: 5px 10px;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #1eb182;
- border-radius: 10px;
- background-color: #fff;
- box-shadow: 4px 4px 0 0 rgba(88, 88, 88, 0.16);
- -webkit-transition: box-shadow 200ms ease, border-color 200ms ease;
- transition: box-shadow 200ms ease, border-color 200ms ease;
- color: #1eb182;
- text-align: center;
- cursor: pointer;
- }
-
- .rec_frame_main-white:hover {
- border-color: #c2c2c2;
- box-shadow: none;
- }
-
- .rec_frame_main-white.dotted {
- border-style: dotted;
- }
-
- .column {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: justify;
- -webkit-justify-content: space-between;
- -ms-flex-pack: justify;
- justify-content: space-between;
- -webkit-box-align: stretch;
- -webkit-align-items: stretch;
- -ms-flex-align: stretch;
- align-items: stretch;
- }
-
- .columns_center {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: horizontal;
- -webkit-box-direction: normal;
- -webkit-flex-direction: row;
- -ms-flex-direction: row;
- flex-direction: row;
- -webkit-box-pack: justify;
- -webkit-justify-content: space-between;
- -ms-flex-pack: justify;
- justify-content: space-between;
- }
-
- .non-bold {
- font-weight: 400;
- }
-
- .logo-holder {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- }
-
- .infra {
- text-align: center;
- position: relative;
- z-index: 30;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- padding: 10px;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- border: 1px dashed #000;
- border-radius: 6px;
- background-color: #fff;
- cursor: pointer;
- }
-
- .infra:hover {
- border-style: solid;
- border-color: #585858;
- }
-
- .text_and_icon {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- }
-
- .svg_icon {
- width: 33px;
- margin-right: 10px;
- margin-left: 10px;
- }
-
- .layer_02 {
- position: absolute;
- z-index: 10;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- width: 96%;
- height: 90%;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: stretch;
- -webkit-align-items: stretch;
- -ms-flex-align: stretch;
- align-items: stretch;
- border-style: solid;
- border-width: calc (var(--border-width)*2);
- border-color: #bbbbbb50 ;
- border-radius: 100%;
- background-color: transparent;
- }
-
- .round-frame {
- position: absolute;
- left: 0%;
- top: auto;
- right: auto;
- bottom: 0%;
- z-index: 10;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- width: 120px;
- height: 120px;
- margin: 10px;
- padding: 20px;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: center;
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- border-style: solid;
- border-width: var(--border-width);
- border-color: #585858;
- border-radius: 100%;
- background-color: #fff;
- outline-color: #fff;
- outline-offset: 0px;
- outline-style: solid;
- outline-width: 7px;
- -webkit-transition: box-shadow 200ms ease, border-color 200ms ease;
- transition: box-shadow 200ms ease, border-color 200ms ease;
- color: #585858;
- text-align: center;
- cursor: pointer;
- }
-
- .round-frame:hover {
- border-color: #c2c2c2;
- box-shadow: none;
- }
-
- .round-frame.top-left {
- left: 4%;
- top: 15%;
- right: auto;
- bottom: auto;
- }
-
- .round-frame.bottom-left {
- left: 4%;
- bottom: 15%;
- }
-
- .round-frame.top-right {
- left: auto;
- top: 15%;
- right: 4%;
- bottom: auto;
- }
-
- .round-frame.bottom-right {
- left: auto;
- top: auto;
- right: 4%;
- bottom: 15%;
- padding: 10px;
- }
-
- .side-holder {
- z-index: -1;
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- height: 630px;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- }
-
- .infra-icon {
- width: 25px;
- height: 25px;
- }
-
- .div-block {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- height: 100%;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- -webkit-box-pack: justify;
- -webkit-justify-content: space-between;
- -ms-flex-pack: justify;
- justify-content: space-between;
- }
-
- #w-node-a2a9b648-f5dd-74e5-e1c2-f7aaf4fa1fcd-46672785 {
- -ms-grid-column: span 1;
- grid-column-start: span 1;
- -ms-grid-column-span: 1;
- grid-column-end: span 1;
- -ms-grid-row: span 1;
- grid-row-start: span 1;
- -ms-grid-row-span: 1;
- grid-row-end: span 1;
- }
-
- #w-node-_466aa2bf-88bf-5a65-eab4-fc1eb95e7384-46672785 {
- -ms-grid-column: span 1;
- grid-column-start: span 1;
- -ms-grid-column-span: 1;
- grid-column-end: span 1;
- -ms-grid-row: span 1;
- grid-row-start: span 1;
- -ms-grid-row-span: 1;
- grid-row-end: span 1;
- }
-
- #w-node-_87009ba3-d9a6-e0b7-4cce-581190a19cf3-46672785 {
- -ms-grid-column: span 1;
- grid-column-start: span 1;
- -ms-grid-column-span: 1;
- grid-column-end: span 1;
- -ms-grid-row: span 1;
- grid-row-start: span 1;
- -ms-grid-row-span: 1;
- grid-row-end: span 1;
- }
-
- #w-node-_4a479fbb-90c7-9f47-d439-20aa6a224339-46672785 {
- -ms-grid-column: span 1;
- grid-column-start: span 1;
- -ms-grid-column-span: 1;
- grid-column-end: span 1;
- -ms-grid-row: span 1;
- grid-row-start: span 1;
- -ms-grid-row-span: 1;
- grid-row-end: span 1;
- }
-
-
- /*
-
-
- inherited from the original template
-
- */
-
- .w-container .w-row {
- margin-left: -10px;
- margin-right: -10px;
- }
- .w-row:before,
- .w-row:after {
- content: " ";
- display: table;
- grid-column-start: 1;
- grid-row-start: 1;
- grid-column-end: 2;
- grid-row-end: 2;
- }
- .w-row:after {
- clear: both;
- }
- .w-row .w-row {
- margin-left: 0;
- margin-right: 0;
- }
- .w-col {
- position: relative;
- float: left;
- width: 100%;
- min-height: 1px;
- padding-left: 10px;
- padding-right: 10px;
- }
- .w-col .w-col {
- padding-left: 0;
- padding-right: 0;
- }
- .w-col-1 {
- width: 8.33333333%;
- }
- .w-col-2 {
- width: 16.66666667%;
- }
- .w-col-3 {
- width: 25%;
- }
- .w-col-4 {
- width: 33.33333333%;
- }
- .w-col-5 {
- width: 41.66666667%;
- }
- .w-col-6 {
- width: 50%;
- }
- .w-col-7 {
- width: 58.33333333%;
- }
- .w-col-8 {
- width: 66.66666667%;
- }
- .w-col-9 {
- width: 75%;
- }
- .w-col-10 {
- width: 83.33333333%;
- }
- .w-col-11 {
- width: 91.66666667%;
- }
- .w-col-12 {
- width: 100%;
- }
- .w-hidden-main {
- display: none !important;
- }
- @media screen and (max-width: 991px) {
- .w-container {
- max-width: 728px;
- }
- .w-hidden-main {
- display: inherit !important;
- }
- .w-hidden-medium {
- display: none !important;
- }
- .w-col-medium-1 {
- width: 8.33333333%;
- }
- .w-col-medium-2 {
- width: 16.66666667%;
- }
- .w-col-medium-3 {
- width: 25%;
- }
- .w-col-medium-4 {
- width: 33.33333333%;
- }
- .w-col-medium-5 {
- width: 41.66666667%;
- }
- .w-col-medium-6 {
- width: 50%;
- }
- .w-col-medium-7 {
- width: 58.33333333%;
- }
- .w-col-medium-8 {
- width: 66.66666667%;
- }
- .w-col-medium-9 {
- width: 75%;
- }
- .w-col-medium-10 {
- width: 83.33333333%;
- }
- .w-col-medium-11 {
- width: 91.66666667%;
- }
- .w-col-medium-12 {
- width: 100%;
- }
- .w-col-stack {
- width: 100%;
- left: auto;
- right: auto;
- }
- }
- @media screen and (max-width: 767px) {
- .w-hidden-main {
- display: inherit !important;
- }
- .w-hidden-medium {
- display: inherit !important;
- }
- .w-hidden-small {
- display: none !important;
- }
- .w-row,
- .w-container .w-row {
- margin-left: 0;
- margin-right: 0;
- }
- .w-col {
- width: 100%;
- left: auto;
- right: auto;
- }
- .w-col-small-1 {
- width: 8.33333333%;
- }
- .w-col-small-2 {
- width: 16.66666667%;
- }
- .w-col-small-3 {
- width: 25%;
- }
- .w-col-small-4 {
- width: 33.33333333%;
- }
- .w-col-small-5 {
- width: 41.66666667%;
- }
- .w-col-small-6 {
- width: 50%;
- }
- .w-col-small-7 {
- width: 58.33333333%;
- }
- .w-col-small-8 {
- width: 66.66666667%;
- }
- .w-col-small-9 {
- width: 75%;
- }
- .w-col-small-10 {
- width: 83.33333333%;
- }
- .w-col-small-11 {
- width: 91.66666667%;
- }
- .w-col-small-12 {
- width: 100%;
- }
- }
- @media screen and (max-width: 479px) {
- .w-container {
- max-width: none;
- }
- .w-hidden-main {
- display: inherit !important;
- }
- .w-hidden-medium {
- display: inherit !important;
- }
- .w-hidden-small {
- display: inherit !important;
- }
- .w-hidden-tiny {
- display: none !important;
- }
- .w-col {
- width: 100%;
- }
- .w-col-tiny-1 {
- width: 8.33333333%;
- }
- .w-col-tiny-2 {
- width: 16.66666667%;
- }
- .w-col-tiny-3 {
- width: 25%;
- }
- .w-col-tiny-4 {
- width: 33.33333333%;
- }
- .w-col-tiny-5 {
- width: 41.66666667%;
- }
- .w-col-tiny-6 {
- width: 50%;
- }
- .w-col-tiny-7 {
- width: 58.33333333%;
- }
- .w-col-tiny-8 {
- width: 66.66666667%;
- }
- .w-col-tiny-9 {
- width: 75%;
- }
- .w-col-tiny-10 {
- width: 83.33333333%;
- }
- .w-col-tiny-11 {
- width: 91.66666667%;
- }
- .w-col-tiny-12 {
- width: 100%;
- }
- }
diff --git a/hsfs/docs/css/version-select.css b/hsfs/docs/css/version-select.css
deleted file mode 100644
index 3b908ae84..000000000
--- a/hsfs/docs/css/version-select.css
+++ /dev/null
@@ -1,36 +0,0 @@
-@media only screen and (max-width:76.1875em) {
-}
-
-#version-selector select.form-control {
- appearance: none;
- -webkit-appearance: none;
- -moz-appearance: none;
-
- background-color: #F5F5F5;
-
- background-position: center right;
- background-repeat: no-repeat;
- border: 0px;
- border-radius: 2px;
- /* box-shadow: 0px 1px 3px rgb(0 0 0 / 10%); */
- color: inherit;
- width: -webkit-fill-available;
- width: -moz-available;
- max-width: 200px;
- font-size: inherit;
- /* font-weight: 600; */
- margin: 10px;
- overflow: hidden;
- padding: 7px 10px;
- text-overflow: ellipsis;
- white-space: nowrap;
-}
-
-#version-selector::after {
- content: '⌄';
- font-family: inherit;
- font-size: 22px;
- margin: -35px;
- vertical-align: 7%;
- padding-bottom: 10px;
-}
diff --git a/hsfs/docs/index.md b/hsfs/docs/index.md
deleted file mode 100644
index a13ea2ce5..000000000
--- a/hsfs/docs/index.md
+++ /dev/null
@@ -1,201 +0,0 @@
-# Hopsworks Feature Store
-
-
-
-
-
-
-
-
-
-
-
-
-HSFS is the library to interact with the Hopsworks Feature Store. The library makes creating new features, feature groups and training datasets easy.
-
-The library is environment independent and can be used in two modes:
-
-- Spark mode: For data engineering jobs that create and write features into the feature store or generate training datasets. It requires a Spark environment such as the one provided in the Hopsworks platform or Databricks. In Spark mode, HSFS provides bindings both for Python and JVM languages.
-
-- Python mode: For data science jobs to explore the features available in the feature store, generate training datasets and feed them in a training pipeline. Python mode requires just a Python interpreter and can be used both in Hopsworks from Python Jobs/Jupyter Kernels, Amazon SageMaker or KubeFlow.
-
-The library automatically configures itself based on the environment it is run.
-However, to connect from an external environment such as Databricks or AWS Sagemaker,
-additional connection information, such as host and port, is required. For more information checkout the [Hopsworks documentation](https://docs.hopsworks.ai/latest/).
-
-## Getting Started On Hopsworks
-
-Get started easily by registering an account on [Hopsworks Serverless](https://app.hopsworks.ai/). Create your project and a [new Api key](https://docs.hopsworks.ai/latest/user_guides/projects/api_key/create_api_key/). In a new python environment with Python 3.8 or higher, install the [client library](https://docs.hopsworks.ai/latest/user_guides/client_installation/) using pip:
-
-```bash
-# Get all Hopsworks SDKs: Feature Store, Model Serving and Platform SDK
-pip install hopsworks
-# or minimum install with the Feature Store SDK
-pip install hsfs[python]
-# if using zsh don't forget the quotes
-pip install 'hsfs[python]'
-```
-
-You can start a notebook and instantiate a connection and get the project feature store handler.
-
-```python
-import hopsworks
-
-project = hopsworks.login() # you will be prompted for your api key
-fs = project.get_feature_store()
-```
-
-or using `hsfs` directly:
-
-```python
-import hsfs
-
-connection = hsfs.connection(
- host="c.app.hopsworks.ai", #
- project="your-project",
- api_key_value="your-api-key",
-)
-fs = connection.get_feature_store()
-```
-
-Create a new feature group to start inserting feature values.
-```python
-fg = fs.create_feature_group("rain",
- version=1,
- description="Rain features",
- primary_key=['date', 'location_id'],
- online_enabled=True)
-
-fg.save(dataframe)
-```
-
-Upsert new data in to the feature group with `time_travel_format="HUDI"`".
-```python
-fg.insert(upsert_df)
-```
-
-Retrieve commit timeline metdata of the feature group with `time_travel_format="HUDI"`".
-```python
-fg.commit_details()
-```
-
-"Reading feature group as of specific point in time".
-```python
-fg = fs.get_feature_group("rain", 1)
-fg.read("2020-10-20 07:34:11").show()
-```
-
-Read updates that occurred between specified points in time.
-```python
-fg = fs.get_feature_group("rain", 1)
-fg.read_changes("2020-10-20 07:31:38", "2020-10-20 07:34:11").show()
-```
-
-Join features together
-```python
-feature_join = rain_fg.select_all()
- .join(temperature_fg.select_all(), on=["date", "location_id"])
- .join(location_fg.select_all())
-feature_join.show(5)
-```
-
-join feature groups that correspond to specific point in time
-```python
-feature_join = rain_fg.select_all()
- .join(temperature_fg.select_all(), on=["date", "location_id"])
- .join(location_fg.select_all())
- .as_of("2020-10-31")
-feature_join.show(5)
-```
-
-join feature groups that correspond to different time
-```python
-rain_fg_q = rain_fg.select_all().as_of("2020-10-20 07:41:43")
-temperature_fg_q = temperature_fg.select_all().as_of("2020-10-20 07:32:33")
-location_fg_q = location_fg.select_all().as_of("2020-10-20 07:33:08")
-joined_features_q = rain_fg_q.join(temperature_fg_q).join(location_fg_q)
-```
-
-Use the query object to create a training dataset:
-```python
-td = fs.create_training_dataset("rain_dataset",
- version=1,
- data_format="tfrecords",
- description="A test training dataset saved in TfRecords format",
- splits={'train': 0.7, 'test': 0.2, 'validate': 0.1})
-
-td.save(feature_join)
-```
-
-A short introduction to the Scala API:
-```scala
-import com.logicalclocks.hsfs._
-val connection = HopsworksConnection.builder().build()
-val fs = connection.getFeatureStore();
-val attendances_features_fg = fs.getFeatureGroup("games_features", 1);
-attendances_features_fg.show(1)
-```
-
-You can find more examples on how to use the library in our [hops-examples](https://github.com/logicalclocks/hops-examples) repository.
-
-## Usage
-
-Usage data is collected for improving quality of the library. It is turned on by default if the backend
-is "c.app.hopsworks.ai". To turn it off, use one of the following way:
-```python
-# use environment variable
-import os
-os.environ["ENABLE_HOPSWORKS_USAGE"] = "false"
-
-# use `disable_usage_logging`
-import hsfs
-hsfs.disable_usage_logging()
-```
-
-The source code can be found in python/hsfs/usage.py.
-
-## Documentation
-
-Documentation is available at [Hopsworks Feature Store Documentation](https://docs.hopsworks.ai/).
-
-## Issues
-
-For general questions about the usage of Hopsworks and the Feature Store please open a topic on [Hopsworks Community](https://community.hopsworks.ai/).
-
-Please report any issue using [Github issue tracking](https://github.com/logicalclocks/feature-store-api/issues).
-
-Please attach the client environment from the output below in the issue:
-```python
-import hopsworks
-import hsfs
-hopsworks.login().get_feature_store()
-print(hsfs.get_env())
-```
-
-## Contributing
-
-If you would like to contribute to this library, please see the [Contribution Guidelines](CONTRIBUTING.md).
diff --git a/hsfs/docs/js/dropdown.js b/hsfs/docs/js/dropdown.js
deleted file mode 100644
index 2618e0ce7..000000000
--- a/hsfs/docs/js/dropdown.js
+++ /dev/null
@@ -1,2 +0,0 @@
-document.getElementsByClassName("md-tabs__link")[7].style.display = "none";
-document.getElementsByClassName("md-tabs__link")[9].style.display = "none";
diff --git a/hsfs/docs/js/inject-api-links.js b/hsfs/docs/js/inject-api-links.js
deleted file mode 100644
index aa5852283..000000000
--- a/hsfs/docs/js/inject-api-links.js
+++ /dev/null
@@ -1,32 +0,0 @@
-window.addEventListener("DOMContentLoaded", function () {
- var windowPathNameSplits = window.location.pathname.split("/");
- var majorVersionRegex = new RegExp("(\\d+[.]\\d+)")
- var latestRegex = new RegExp("latest");
- if (majorVersionRegex.test(windowPathNameSplits[1])) { // On landing page docs.hopsworks.api/3.0 - URL contains major version
- // Version API dropdown
- document.getElementById("hopsworks_api_link").href = "https://docs.hopsworks.ai/hopsworks-api/" + windowPathNameSplits[1] + "/generated/api/login/";
- document.getElementById("hsfs_api_link").href = "https://docs.hopsworks.ai/feature-store-api/" + windowPathNameSplits[1] + "/generated/api/connection_api/";
- document.getElementById("hsml_api_link").href = "https://docs.hopsworks.ai/machine-learning-api/" + windowPathNameSplits[1] + "/generated/connection_api/";
- } else { // on docs.hopsworks.api/feature-store-api/3.0 / docs.hopsworks.api/hopsworks-api/3.0 / docs.hopsworks.api/machine-learning-api/3.0
- if (latestRegex.test(windowPathNameSplits[2]) || latestRegex.test(windowPathNameSplits[1])) {
- var majorVersion = "latest";
- } else {
-
- var apiVersion = windowPathNameSplits[2];
- var majorVersion = apiVersion.match(majorVersionRegex)[0];
- }
- // Version main navigation
- document.getElementsByClassName("md-tabs__link")[0].href = "https://docs.hopsworks.ai/" + majorVersion;
- document.getElementsByClassName("md-tabs__link")[1].href = "https://colab.research.google.com/github/logicalclocks/hopsworks-tutorials/blob/master/quickstart.ipynb";
- document.getElementsByClassName("md-tabs__link")[2].href = "https://docs.hopsworks.ai/" + majorVersion + "/tutorials/";
- document.getElementsByClassName("md-tabs__link")[3].href = "https://docs.hopsworks.ai/" + majorVersion + "/concepts/hopsworks/";
- document.getElementsByClassName("md-tabs__link")[4].href = "https://docs.hopsworks.ai/" + majorVersion + "/user_guides/";
- document.getElementsByClassName("md-tabs__link")[5].href = "https://docs.hopsworks.ai/" + majorVersion + "/setup_installation/aws/getting_started/";
- document.getElementsByClassName("md-tabs__link")[6].href = "https://docs.hopsworks.ai/" + majorVersion + "/admin/";
- // Version API dropdown
- document.getElementById("hopsworks_api_link").href = "https://docs.hopsworks.ai/hopsworks-api/" + majorVersion + "/generated/api/login/";
- document.getElementById("hsfs_api_link").href = "https://docs.hopsworks.ai/feature-store-api/" + majorVersion + "/generated/api/connection_api/";
- document.getElementById("hsfs_javadoc_link").href = "https://docs.hopsworks.ai/feature-store-api/" + majorVersion + "/javadoc";
- document.getElementById("hsml_api_link").href = "https://docs.hopsworks.ai/machine-learning-api/" + majorVersion + "/generated/connection_api/";
- }
-});
diff --git a/hsfs/docs/js/version-select.js b/hsfs/docs/js/version-select.js
deleted file mode 100644
index fcac029e3..000000000
--- a/hsfs/docs/js/version-select.js
+++ /dev/null
@@ -1,64 +0,0 @@
-window.addEventListener("DOMContentLoaded", function() {
- // This is a bit hacky. Figure out the base URL from a known CSS file the
- // template refers to...
- var ex = new RegExp("/?css/version-select.css$");
- var sheet = document.querySelector('link[href$="version-select.css"]');
-
- var ABS_BASE_URL = sheet.href.replace(ex, "");
- var CURRENT_VERSION = ABS_BASE_URL.split("/").pop();
-
- function makeSelect(options, selected) {
- var select = document.createElement("select");
- select.classList.add("form-control");
-
- options.forEach(function(i) {
- var option = new Option(i.text, i.value, undefined,
- i.value === selected);
- select.add(option);
- });
-
- return select;
- }
-
- var xhr = new XMLHttpRequest();
- xhr.open("GET", ABS_BASE_URL + "/../versions.json");
- xhr.onload = function() {
- var versions = JSON.parse(this.responseText);
-
- var realVersion = versions.find(function(i) {
- return i.version === CURRENT_VERSION ||
- i.aliases.includes(CURRENT_VERSION);
- }).version;
- var latestVersion = versions.find(function(i) {
- return i.aliases.includes("latest");
- }).version;
- let outdated_banner = document.querySelector('div[data-md-color-scheme="default"][data-md-component="outdated"]');
- if (realVersion !== latestVersion) {
- outdated_banner.removeAttribute("hidden");
- } else {
- outdated_banner.setAttribute("hidden", "");
- }
-
- var select = makeSelect(versions.map(function(i) {
- var allowedAliases = ["dev", "latest"]
- if (i.aliases.length > 0) {
- var aliasString = " [" + i.aliases.filter(function (str) { return allowedAliases.includes(str); }).join(", ") + "]";
- } else {
- var aliasString = "";
- }
- return {text: i.title + aliasString, value: i.version};
- }), realVersion);
- select.addEventListener("change", function(event) {
- window.location.href = ABS_BASE_URL + "/../" + this.value + "/generated/api/connection_api/";
- });
-
- var container = document.createElement("div");
- container.id = "version-selector";
- // container.className = "md-nav__item";
- container.appendChild(select);
-
- var sidebar = document.querySelector(".md-nav--primary > .md-nav__list");
- sidebar.parentNode.insertBefore(container, sidebar.nextSibling);
- };
- xhr.send();
-});
diff --git a/hsfs/docs/overrides/main.html b/hsfs/docs/overrides/main.html
deleted file mode 100644
index ecb09de07..000000000
--- a/hsfs/docs/overrides/main.html
+++ /dev/null
@@ -1,8 +0,0 @@
-{% extends "base.html" %}
-
-{% block outdated %}
-You're not viewing the latest version of the documentation.
-
- Click here to go to latest.
-
-{% endblock %}