├── jsconfig.json
├── public
├── NFTs.png
├── favicon.ico
├── logo192.png
├── logo512.png
├── buildings.png
├── robots.txt
├── teletubbies.png
├── images
│ └── profile
│ │ ├── po.webp
│ │ ├── dipsy.webp
│ │ ├── laa-laa.webp
│ │ └── tinky-winky.webp
├── manifest.json
├── index.html
├── teletubbies.json
└── buildings.json
├── src
├── setupTests.js
├── App.test.js
├── components
│ ├── Spinner
│ │ └── index.js
│ └── Header
│ │ └── index.js
├── pages
│ ├── Layout
│ │ └── index.js
│ ├── Home
│ │ └── index.js
│ ├── NFTS
│ │ └── NFTs.component.js
│ └── Teletubbies
│ │ └── index.js
├── reportWebVitals.js
├── index.css
├── api
│ └── index.js
├── index.js
├── App.css
├── App.js
└── logo.svg
├── .gitignore
├── README.md
└── package.json
/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "baseUrl": "./src"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/public/NFTs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/NFTs.png
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/logo192.png
--------------------------------------------------------------------------------
/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/logo512.png
--------------------------------------------------------------------------------
/public/buildings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/buildings.png
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/public/teletubbies.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/teletubbies.png
--------------------------------------------------------------------------------
/public/images/profile/po.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/images/profile/po.webp
--------------------------------------------------------------------------------
/public/images/profile/dipsy.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/images/profile/dipsy.webp
--------------------------------------------------------------------------------
/public/images/profile/laa-laa.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/images/profile/laa-laa.webp
--------------------------------------------------------------------------------
/public/images/profile/tinky-winky.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/koheimizuno/smart-app/HEAD/public/images/profile/tinky-winky.webp
--------------------------------------------------------------------------------
/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom';
6 |
--------------------------------------------------------------------------------
/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from '@testing-library/react';
2 | import App from './App';
3 |
4 | test('renders learn react link', () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/src/components/Spinner/index.js:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import CircularProgress from "@mui/material/CircularProgress";
3 | import Box from "@mui/material/Box";
4 |
5 | export default function Spinner() {
6 | return (
7 |
8 |
9 |
10 | );
11 | }
12 |
--------------------------------------------------------------------------------
/src/pages/Layout/index.js:
--------------------------------------------------------------------------------
1 | import { Outlet } from "react-router-dom";
2 |
3 | import Header from "components/Header";
4 |
5 | const Layout = () => {
6 | return (
7 | <>
8 |
11 |
12 |
13 | >
14 | );
15 | };
16 |
17 | export default Layout;
18 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/src/reportWebVitals.js:
--------------------------------------------------------------------------------
1 | const reportWebVitals = onPerfEntry => {
2 | if (onPerfEntry && onPerfEntry instanceof Function) {
3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
4 | getCLS(onPerfEntry);
5 | getFID(onPerfEntry);
6 | getFCP(onPerfEntry);
7 | getLCP(onPerfEntry);
8 | getTTFB(onPerfEntry);
9 | });
10 | }
11 | };
12 |
13 | export default reportWebVitals;
14 |
--------------------------------------------------------------------------------
/src/index.css:
--------------------------------------------------------------------------------
1 | /* @import "bootstrap/dist/css/bootstrap.min.css"; */
2 | body {
3 | margin: 0;
4 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen",
5 | "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue",
6 | sans-serif;
7 | -webkit-font-smoothing: antialiased;
8 | -moz-osx-font-smoothing: grayscale;
9 | }
10 |
11 | code {
12 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New",
13 | monospace;
14 | }
15 |
--------------------------------------------------------------------------------
/src/api/index.js:
--------------------------------------------------------------------------------
1 | import axios from "axios";
2 |
3 | const weatherOptions = {
4 | method: "GET",
5 | url: "https://weatherapi-com.p.rapidapi.com/current.json",
6 | params: { q: "22.3, 114.1" },
7 | headers: {
8 | "X-RapidAPI-Key": "cf1d6bd258msh581225dc1a5493fp11399bjsn09a7b76afe60",
9 | "X-RapidAPI-Host": "weatherapi-com.p.rapidapi.com",
10 | },
11 | };
12 |
13 | export const getCurrentWeatherData = async () => {
14 | try {
15 | const response = await axios.request(weatherOptions);
16 | return response;
17 | } catch (error) {
18 | throw error;
19 | }
20 | };
21 |
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import ReactDOM from "react-dom/client";
3 |
4 | import "./index.css";
5 | import App from "./App";
6 | import reportWebVitals from "./reportWebVitals";
7 |
8 | const root = ReactDOM.createRoot(document.getElementById("root"));
9 | root.render(
10 |
11 |
12 |
13 | );
14 |
15 | // If you want to start measuring performance in your app, pass a function
16 | // to log results (for example: reportWebVitals(console.log))
17 | // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
18 | reportWebVitals();
19 |
--------------------------------------------------------------------------------
/src/App.css:
--------------------------------------------------------------------------------
1 | .App {
2 | text-align: center;
3 | }
4 |
5 | .App-logo {
6 | height: 40vmin;
7 | pointer-events: none;
8 | }
9 |
10 | @media (prefers-reduced-motion: no-preference) {
11 | .App-logo {
12 | animation: App-logo-spin infinite 20s linear;
13 | }
14 | }
15 |
16 | .App-header {
17 | background-color: #282c34;
18 | min-height: 100vh;
19 | display: flex;
20 | flex-direction: column;
21 | align-items: center;
22 | justify-content: center;
23 | font-size: calc(10px + 2vmin);
24 | color: white;
25 | }
26 |
27 | .App-link {
28 | color: #61dafb;
29 | }
30 |
31 | @keyframes App-logo-spin {
32 | from {
33 | transform: rotate(0deg);
34 | }
35 | to {
36 | transform: rotate(360deg);
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/src/App.js:
--------------------------------------------------------------------------------
1 | import { BrowserRouter, Routes, Route } from "react-router-dom";
2 |
3 | import Layout from "pages/Layout";
4 | import Home from "pages/Home";
5 | import NFTS from "pages/NFTS/NFTs.component";
6 | import "./App.css";
7 | import Teletubbies from "pages/Teletubbies";
8 |
9 | function App () {
10 | return (
11 |
12 |
13 |
14 | }>
15 | } />
16 | } />
17 | } />
18 |
19 |
20 |
21 |
22 | )
23 | }
24 |
25 | export default App
26 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Smart App
2 |
3 | This is project using MUI with React.
4 | The purpose is to practise the skill using the command of the Git.
5 |
6 | # Tech stack
7 |
8 | React, MUI
9 |
10 | # How to run the project
11 |
12 | ```
13 | npm install
14 | npm start
15 | ```
16 |
17 | # Page description
18 |
19 | ## NFTs page
20 |
21 | - There is endpoint to return paginated NFT listings:
22 |
23 | ```
24 | https://api-mainnet.magiceden.io/idxv2/getListedNftsByCollectionSymbol?collectionSymbol=okay_bears&limit=20&offset=0
25 | ```
26 |
27 | - On load, first 20 NFT listings in a grid is shown, the grid become responsive
28 | - Each card consist of an image, name, price
29 | - When user scrolls down the page, more listing is shown.
30 | - It is possible to searh NFTs by name (frontend side)
31 |
32 | ## Teletubbies page
33 |
34 | - There is `teletubbies.json` in `public` directory.
35 | - On load, first 20 teletubbies listings in a list is shown, the list become responsive
36 | - Each card consist of an image, name, descrition and traits.
37 | - When user scrolls down the page, more listing is shown.
38 | - It is possible to searh NFTs by name (frontend side)
39 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "smart-app",
3 | "version": "0.1.0",
4 | "private": true,
5 | "dependencies": {
6 | "@emotion/react": "^11.11.0",
7 | "@emotion/styled": "^11.11.0",
8 | "@mui/icons-material": "^5.11.16",
9 | "@mui/material": "^5.13.4",
10 | "@mui/styled-engine-sc": "^5.12.0",
11 | "@testing-library/jest-dom": "^5.16.5",
12 | "@testing-library/react": "^13.4.0",
13 | "@testing-library/user-event": "^13.5.0",
14 | "axios": "^1.4.0",
15 | "bootstrap": "^5.3.0",
16 | "react": "^18.2.0",
17 | "react-dom": "^18.2.0",
18 | "react-scripts": "5.0.1",
19 | "styled-components": "^5.3.11",
20 | "web-vitals": "^2.1.4"
21 | },
22 | "scripts": {
23 | "start": "react-scripts start",
24 | "build": "react-scripts build",
25 | "test": "react-scripts test",
26 | "eject": "react-scripts eject"
27 | },
28 | "eslintConfig": {
29 | "extends": [
30 | "react-app",
31 | "react-app/jest"
32 | ]
33 | },
34 | "browserslist": {
35 | "production": [
36 | ">0.2%",
37 | "not dead",
38 | "not op_mini all"
39 | ],
40 | "development": [
41 | "last 1 chrome version",
42 | "last 1 firefox version",
43 | "last 1 safari version"
44 | ]
45 | },
46 | "devDependencies": {
47 | "react-router-dom": "^6.12.0"
48 | },
49 | "description": "This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).",
50 | "main": "index.js",
51 | "author": "",
52 | "license": "ISC"
53 | }
54 |
--------------------------------------------------------------------------------
/src/pages/Home/index.js:
--------------------------------------------------------------------------------
1 | import React, { useEffect, useState } from "react";
2 | import { Container, Typography, Box } from "@mui/material";
3 |
4 | import { getCurrentWeatherData } from "api";
5 | import Spinner from "components/Spinner";
6 |
7 | const Home = () => {
8 | const [currentWeatherData, setCurrentWeatherData] = useState(undefined);
9 | const [isLoadingWeatherData, setIsLoadingWeatherData] = useState(false);
10 |
11 | const getCurrentWeather = async () => {
12 | setIsLoadingWeatherData(true);
13 | const { data } = await getCurrentWeatherData();
14 | setCurrentWeatherData(data);
15 | setIsLoadingWeatherData(false);
16 | };
17 |
18 | useEffect(() => {
19 | getCurrentWeather();
20 | }, []);
21 |
22 | return (
23 |
24 |
25 | Today's weather
26 |
27 |
28 | {isLoadingWeatherData ? (
29 |
30 | ) : currentWeatherData ? (
31 |
32 |
33 | {currentWeatherData.location.name}
34 |
35 |
39 |
40 | {currentWeatherData.current.temp_c}°C
41 |
42 |
43 | ) : (
44 | "Server is not working."
45 | )}
46 |
47 | );
48 | };
49 |
50 | export default Home;
51 |
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
12 |
13 |
17 |
18 |
27 | Smart
28 |
29 |
30 |
31 |
32 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/src/logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/pages/NFTS/NFTs.component.js:
--------------------------------------------------------------------------------
1 | import React, { useState, useEffect, useCallback } from "react";
2 | import TextField from "@mui/material/TextField";
3 | import Typography from "@mui/material/Typography";
4 | import Container from "@mui/material/Container";
5 | import { Grid } from "@mui/material";
6 | import Box from "@mui/material/Box";
7 |
8 | const Nfts_PAGE = () => {
9 | const [listing, setListing] = useState([]);
10 | const [offset, setOffset] = useState(0);
11 | const [searchTerm, setSearchTerm] = useState("");
12 | const [filteredListing, setFilteredListing] = useState([]);
13 |
14 | const loadListing = useCallback(async () => {
15 | const response = await fetch(
16 | `https://api-mainnet.magiceden.io/idxv2/getListedNftsByCollectionSymbol?collectionSymbol=okay_bears&limit=20&offset=${offset}`
17 | );
18 | const data = await response.json();
19 | setListing([...listing, ...data.results]);
20 | setFilteredListing([...listing, ...data.results]);
21 | setOffset(offset + 20);
22 | }, [offset, listing]);
23 |
24 | const handleSearch = (event) => {
25 | setSearchTerm(event.target.value.toLowerCase());
26 | };
27 |
28 | useEffect(() => {
29 | loadListing();
30 | }, [loadListing]);
31 |
32 | useEffect(() => {
33 | setFilteredListing(
34 | listing.filter((listing) =>
35 | listing.collectionName.toLowerCase().includes(searchTerm)
36 | )
37 | );
38 | }, [listing, searchTerm]);
39 |
40 | useEffect(() => {
41 | const handleScroll = () => {
42 | if (
43 | window.innerHeight + window.scrollY >=
44 | document.body.offsetHeight - 1000
45 | ) {
46 | loadListing();
47 | }
48 | };
49 | window.addEventListener("scroll", handleScroll);
50 | return () => {
51 | window.removeEventListener("scroll", handleScroll);
52 | };
53 | }, [loadListing]);
54 |
55 | return (
56 |
57 |
58 | NFT Marketplace
59 |
60 |
70 |
75 | {filteredListing.map((listing) => (
76 |
77 |
83 |
87 | {listing.collectionName}
88 | {listing.price}
89 |
90 |
91 | ))}
92 |
93 |
94 | );
95 | };
96 |
97 | export default Nfts_PAGE;
98 |
--------------------------------------------------------------------------------
/src/pages/Teletubbies/index.js:
--------------------------------------------------------------------------------
1 | import { useCallback, useEffect, useState } from "react";
2 | import {
3 | Container,
4 | Grid,
5 | Box,
6 | Typography,
7 | Button,
8 | TextField,
9 | } from "@mui/material";
10 |
11 | const Teletubbies = () => {
12 | const [teletubbies, setTeletubbies] = useState([]);
13 | const [visibleTeletubbies, setVisibleTeletubbies] = useState([]);
14 | const [searchTerm, setSearchTerm] = useState("");
15 |
16 | const handleScroll = useCallback(() => {
17 | if (window.innerHeight + window.scrollY >= document.body.offsetHeight) {
18 | const newVisibleTeletubbies = [
19 | ...visibleTeletubbies,
20 | ...teletubbies.slice(
21 | visibleTeletubbies.length,
22 | visibleTeletubbies.length + 20
23 | ),
24 | ];
25 | setVisibleTeletubbies(newVisibleTeletubbies);
26 | }
27 | }, [setVisibleTeletubbies, visibleTeletubbies, teletubbies]);
28 |
29 | const handleInputChange = (event) => {
30 | setSearchTerm(event.target.value);
31 | };
32 |
33 | useEffect(() => {
34 | fetch("/teletubbies.json")
35 | .then((response) => response.json())
36 | .then((data) => {
37 | setTeletubbies(data);
38 | setVisibleTeletubbies(data.slice(0, 20));
39 | });
40 | }, []);
41 |
42 | useEffect(() => {
43 | const filteredTeletubbies = teletubbies.filter((teletubby) =>
44 | teletubby.name.toLowerCase().includes(searchTerm.toLowerCase())
45 | );
46 | setVisibleTeletubbies(filteredTeletubbies.slice(0, 20));
47 | }, [searchTerm, teletubbies]);
48 |
49 | useEffect(() => {
50 | window.addEventListener("scroll", handleScroll);
51 | return () => window.removeEventListener("scroll", handleScroll);
52 | }, [handleScroll]);
53 |
54 | return (
55 |
56 |
57 | Teletubbies
58 |
59 |
68 | {visibleTeletubbies.map((teletubby, key) => {
69 | return (
70 |
77 |
78 |
79 |
84 |
85 |
86 |
94 |
95 | {teletubby.name}
96 |
101 | {teletubby.description}
102 |
103 |
104 | {teletubby.traits.map((item, key) => {
105 | return (
106 |
114 | );
115 | })}
116 |
117 |
118 |
119 |
120 | );
121 | })}
122 |
123 | );
124 | };
125 |
126 | export default Teletubbies;
127 |
--------------------------------------------------------------------------------
/src/components/Header/index.js:
--------------------------------------------------------------------------------
1 | import * as React from "react";
2 | import { Link } from "react-router-dom";
3 | import AppBar from "@mui/material/AppBar";
4 | import Box from "@mui/material/Box";
5 | import Toolbar from "@mui/material/Toolbar";
6 | import IconButton from "@mui/material/IconButton";
7 | import Typography from "@mui/material/Typography";
8 | import Menu from "@mui/material/Menu";
9 | import MenuIcon from "@mui/icons-material/Menu";
10 | import Container from "@mui/material/Container";
11 | import MenuItem from "@mui/material/MenuItem";
12 | import AdbIcon from "@mui/icons-material/Adb";
13 |
14 | const pages = ["Home", "NFTs", "Teletubbies", "Buildings"];
15 |
16 | function Header() {
17 | const [anchorElNav, setAnchorElNav] = React.useState(null);
18 |
19 | const handleOpenNavMenu = (event) => {
20 | setAnchorElNav(event.currentTarget);
21 | };
22 |
23 | const handleCloseNavMenu = () => {
24 | setAnchorElNav(null);
25 | };
26 |
27 | return (
28 |
29 |
30 |
31 |
32 |
46 | SMART
47 |
48 |
49 |
50 |
58 |
59 |
60 |
89 |
90 |
91 |
107 | SMART
108 |
109 |
110 | {pages.map((page) => (
111 |
120 | {page}
121 |
122 | ))}
123 |
124 |
125 |
126 |
127 | );
128 | }
129 |
130 | export default Header;
131 |
--------------------------------------------------------------------------------
/public/teletubbies.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "name": "Tinky Winky",
4 | "slug": "tinky-winky",
5 | "image_url": "/images/profile/tinky-winky.webp",
6 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
7 | "traits": ["tallest", "oldest", "kind", "gentle"],
8 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
9 | },
10 | {
11 | "name": "Dipsy",
12 | "slug": "dipsy",
13 | "image_url": "/images/profile/dipsy.webp",
14 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
15 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
16 | "loves": ["fun games", "wearing his hat"]
17 | },
18 | {
19 | "name": "Laa-Laa",
20 | "slug": "laa-laa",
21 | "image_url": "/images/profile/laa-laa.webp",
22 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
23 | "traits": ["very girly", "silly", "cute", "cheerful"],
24 | "loves": ["playing ball", "singing", "dancing"]
25 | },
26 | {
27 | "name": "Po",
28 | "slug": "po",
29 | "image_url": "/images/profile/po.webp",
30 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
31 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
32 | "loves": ["riding her scooter", "audience interaction"]
33 | },
34 | {
35 | "name": "Tinky Winky",
36 | "slug": "tinky-winky",
37 | "image_url": "/images/profile/tinky-winky.webp",
38 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
39 | "traits": ["tallest", "oldest", "kind", "gentle"],
40 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
41 | },
42 | {
43 | "name": "Dipsy",
44 | "slug": "dipsy",
45 | "image_url": "/images/profile/dipsy.webp",
46 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
47 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
48 | "loves": ["fun games", "wearing his hat"]
49 | },
50 | {
51 | "name": "Laa-Laa",
52 | "slug": "laa-laa",
53 | "image_url": "/images/profile/laa-laa.webp",
54 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
55 | "traits": ["very girly", "silly", "cute", "cheerful"],
56 | "loves": ["playing ball", "singing", "dancing"]
57 | },
58 | {
59 | "name": "Po",
60 | "slug": "po",
61 | "image_url": "/images/profile/po.webp",
62 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
63 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
64 | "loves": ["riding her scooter", "audience interaction"]
65 | },
66 | {
67 | "name": "Tinky Winky",
68 | "slug": "tinky-winky",
69 | "image_url": "/images/profile/tinky-winky.webp",
70 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
71 | "traits": ["tallest", "oldest", "kind", "gentle"],
72 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
73 | },
74 | {
75 | "name": "Dipsy",
76 | "slug": "dipsy",
77 | "image_url": "/images/profile/dipsy.webp",
78 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
79 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
80 | "loves": ["fun games", "wearing his hat"]
81 | },
82 | {
83 | "name": "Laa-Laa",
84 | "slug": "laa-laa",
85 | "image_url": "/images/profile/laa-laa.webp",
86 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
87 | "traits": ["very girly", "silly", "cute", "cheerful"],
88 | "loves": ["playing ball", "singing", "dancing"]
89 | },
90 | {
91 | "name": "Po",
92 | "slug": "po",
93 | "image_url": "/images/profile/po.webp",
94 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
95 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
96 | "loves": ["riding her scooter", "audience interaction"]
97 | },
98 | {
99 | "name": "Tinky Winky",
100 | "slug": "tinky-winky",
101 | "image_url": "/images/profile/tinky-winky.webp",
102 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
103 | "traits": ["tallest", "oldest", "kind", "gentle"],
104 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
105 | },
106 | {
107 | "name": "Dipsy",
108 | "slug": "dipsy",
109 | "image_url": "/images/profile/dipsy.webp",
110 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
111 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
112 | "loves": ["fun games", "wearing his hat"]
113 | },
114 | {
115 | "name": "Laa-Laa",
116 | "slug": "laa-laa",
117 | "image_url": "/images/profile/laa-laa.webp",
118 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
119 | "traits": ["very girly", "silly", "cute", "cheerful"],
120 | "loves": ["playing ball", "singing", "dancing"]
121 | },
122 | {
123 | "name": "Po",
124 | "slug": "po",
125 | "image_url": "/images/profile/po.webp",
126 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
127 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
128 | "loves": ["riding her scooter", "audience interaction"]
129 | },
130 | {
131 | "name": "Tinky Winky",
132 | "slug": "tinky-winky",
133 | "image_url": "/images/profile/tinky-winky.webp",
134 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
135 | "traits": ["tallest", "oldest", "kind", "gentle"],
136 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
137 | },
138 | {
139 | "name": "Dipsy",
140 | "slug": "dipsy",
141 | "image_url": "/images/profile/dipsy.webp",
142 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
143 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
144 | "loves": ["fun games", "wearing his hat"]
145 | },
146 | {
147 | "name": "Laa-Laa",
148 | "slug": "laa-laa",
149 | "image_url": "/images/profile/laa-laa.webp",
150 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
151 | "traits": ["very girly", "silly", "cute", "cheerful"],
152 | "loves": ["playing ball", "singing", "dancing"]
153 | },
154 | {
155 | "name": "Po",
156 | "slug": "po",
157 | "image_url": "/images/profile/po.webp",
158 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
159 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
160 | "loves": ["riding her scooter", "audience interaction"]
161 | },
162 | {
163 | "name": "Tinky Winky",
164 | "slug": "tinky-winky",
165 | "image_url": "/images/profile/tinky-winky.webp",
166 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
167 | "traits": ["tallest", "oldest", "kind", "gentle"],
168 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
169 | },
170 | {
171 | "name": "Dipsy",
172 | "slug": "dipsy",
173 | "image_url": "/images/profile/dipsy.webp",
174 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
175 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
176 | "loves": ["fun games", "wearing his hat"]
177 | },
178 | {
179 | "name": "Laa-Laa",
180 | "slug": "laa-laa",
181 | "image_url": "/images/profile/laa-laa.webp",
182 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
183 | "traits": ["very girly", "silly", "cute", "cheerful"],
184 | "loves": ["playing ball", "singing", "dancing"]
185 | },
186 | {
187 | "name": "Po",
188 | "slug": "po",
189 | "image_url": "/images/profile/po.webp",
190 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
191 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
192 | "loves": ["riding her scooter", "audience interaction"]
193 | },
194 | {
195 | "name": "Tinky Winky",
196 | "slug": "tinky-winky",
197 | "image_url": "/images/profile/tinky-winky.webp",
198 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
199 | "traits": ["tallest", "oldest", "kind", "gentle"],
200 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
201 | },
202 | {
203 | "name": "Dipsy",
204 | "slug": "dipsy",
205 | "image_url": "/images/profile/dipsy.webp",
206 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
207 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
208 | "loves": ["fun games", "wearing his hat"]
209 | },
210 | {
211 | "name": "Laa-Laa",
212 | "slug": "laa-laa",
213 | "image_url": "/images/profile/laa-laa.webp",
214 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
215 | "traits": ["very girly", "silly", "cute", "cheerful"],
216 | "loves": ["playing ball", "singing", "dancing"]
217 | },
218 | {
219 | "name": "Po",
220 | "slug": "po",
221 | "image_url": "/images/profile/po.webp",
222 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
223 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
224 | "loves": ["riding her scooter", "audience interaction"]
225 | },
226 | {
227 | "name": "Tinky Winky",
228 | "slug": "tinky-winky",
229 | "image_url": "/images/profile/tinky-winky.webp",
230 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
231 | "traits": ["tallest", "oldest", "kind", "gentle"],
232 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
233 | },
234 | {
235 | "name": "Dipsy",
236 | "slug": "dipsy",
237 | "image_url": "/images/profile/dipsy.webp",
238 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
239 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
240 | "loves": ["fun games", "wearing his hat"]
241 | },
242 | {
243 | "name": "Laa-Laa",
244 | "slug": "laa-laa",
245 | "image_url": "/images/profile/laa-laa.webp",
246 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
247 | "traits": ["very girly", "silly", "cute", "cheerful"],
248 | "loves": ["playing ball", "singing", "dancing"]
249 | },
250 | {
251 | "name": "Po",
252 | "slug": "po",
253 | "image_url": "/images/profile/po.webp",
254 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
255 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
256 | "loves": ["riding her scooter", "audience interaction"]
257 | },
258 | {
259 | "name": "Tinky Winky",
260 | "slug": "tinky-winky",
261 | "image_url": "/images/profile/tinky-winky.webp",
262 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
263 | "traits": ["tallest", "oldest", "kind", "gentle"],
264 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
265 | },
266 | {
267 | "name": "Dipsy",
268 | "slug": "dipsy",
269 | "image_url": "/images/profile/dipsy.webp",
270 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
271 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
272 | "loves": ["fun games", "wearing his hat"]
273 | },
274 | {
275 | "name": "Laa-Laa",
276 | "slug": "laa-laa",
277 | "image_url": "/images/profile/laa-laa.webp",
278 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
279 | "traits": ["very girly", "silly", "cute", "cheerful"],
280 | "loves": ["playing ball", "singing", "dancing"]
281 | },
282 | {
283 | "name": "Po",
284 | "slug": "po",
285 | "image_url": "/images/profile/po.webp",
286 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
287 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
288 | "loves": ["riding her scooter", "audience interaction"]
289 | },
290 | {
291 | "name": "Tinky Winky",
292 | "slug": "tinky-winky",
293 | "image_url": "/images/profile/tinky-winky.webp",
294 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
295 | "traits": ["tallest", "oldest", "kind", "gentle"],
296 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
297 | },
298 | {
299 | "name": "Dipsy",
300 | "slug": "dipsy",
301 | "image_url": "/images/profile/dipsy.webp",
302 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
303 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
304 | "loves": ["fun games", "wearing his hat"]
305 | },
306 | {
307 | "name": "Laa-Laa",
308 | "slug": "laa-laa",
309 | "image_url": "/images/profile/laa-laa.webp",
310 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
311 | "traits": ["very girly", "silly", "cute", "cheerful"],
312 | "loves": ["playing ball", "singing", "dancing"]
313 | },
314 | {
315 | "name": "Po",
316 | "slug": "po",
317 | "image_url": "/images/profile/po.webp",
318 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
319 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
320 | "loves": ["riding her scooter", "audience interaction"]
321 | },
322 | {
323 | "name": "Tinky Winky",
324 | "slug": "tinky-winky",
325 | "image_url": "/images/profile/tinky-winky.webp",
326 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
327 | "traits": ["tallest", "oldest", "kind", "gentle"],
328 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
329 | },
330 | {
331 | "name": "Dipsy",
332 | "slug": "dipsy",
333 | "image_url": "/images/profile/dipsy.webp",
334 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
335 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
336 | "loves": ["fun games", "wearing his hat"]
337 | },
338 | {
339 | "name": "Laa-Laa",
340 | "slug": "laa-laa",
341 | "image_url": "/images/profile/laa-laa.webp",
342 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
343 | "traits": ["very girly", "silly", "cute", "cheerful"],
344 | "loves": ["playing ball", "singing", "dancing"]
345 | },
346 | {
347 | "name": "Po",
348 | "slug": "po",
349 | "image_url": "/images/profile/po.webp",
350 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
351 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
352 | "loves": ["riding her scooter", "audience interaction"]
353 | },
354 | {
355 | "name": "Tinky Winky",
356 | "slug": "tinky-winky",
357 | "image_url": "/images/profile/tinky-winky.webp",
358 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
359 | "traits": ["tallest", "oldest", "kind", "gentle"],
360 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
361 | },
362 | {
363 | "name": "Dipsy",
364 | "slug": "dipsy",
365 | "image_url": "/images/profile/dipsy.webp",
366 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
367 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
368 | "loves": ["fun games", "wearing his hat"]
369 | },
370 | {
371 | "name": "Laa-Laa",
372 | "slug": "laa-laa",
373 | "image_url": "/images/profile/laa-laa.webp",
374 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
375 | "traits": ["very girly", "silly", "cute", "cheerful"],
376 | "loves": ["playing ball", "singing", "dancing"]
377 | },
378 | {
379 | "name": "Po",
380 | "slug": "po",
381 | "image_url": "/images/profile/po.webp",
382 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
383 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
384 | "loves": ["riding her scooter", "audience interaction"]
385 | },
386 | {
387 | "name": "Tinky Winky",
388 | "slug": "tinky-winky",
389 | "image_url": "/images/profile/tinky-winky.webp",
390 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
391 | "traits": ["tallest", "oldest", "kind", "gentle"],
392 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
393 | },
394 | {
395 | "name": "Dipsy",
396 | "slug": "dipsy",
397 | "image_url": "/images/profile/dipsy.webp",
398 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
399 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
400 | "loves": ["fun games", "wearing his hat"]
401 | },
402 | {
403 | "name": "Laa-Laa",
404 | "slug": "laa-laa",
405 | "image_url": "/images/profile/laa-laa.webp",
406 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
407 | "traits": ["very girly", "silly", "cute", "cheerful"],
408 | "loves": ["playing ball", "singing", "dancing"]
409 | },
410 | {
411 | "name": "Po",
412 | "slug": "po",
413 | "image_url": "/images/profile/po.webp",
414 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
415 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
416 | "loves": ["riding her scooter", "audience interaction"]
417 | },
418 | {
419 | "name": "Tinky Winky",
420 | "slug": "tinky-winky",
421 | "image_url": "/images/profile/tinky-winky.webp",
422 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
423 | "traits": ["tallest", "oldest", "kind", "gentle"],
424 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
425 | },
426 | {
427 | "name": "Dipsy",
428 | "slug": "dipsy",
429 | "image_url": "/images/profile/dipsy.webp",
430 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
431 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
432 | "loves": ["fun games", "wearing his hat"]
433 | },
434 | {
435 | "name": "Laa-Laa",
436 | "slug": "laa-laa",
437 | "image_url": "/images/profile/laa-laa.webp",
438 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
439 | "traits": ["very girly", "silly", "cute", "cheerful"],
440 | "loves": ["playing ball", "singing", "dancing"]
441 | },
442 | {
443 | "name": "Po",
444 | "slug": "po",
445 | "image_url": "/images/profile/po.webp",
446 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
447 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
448 | "loves": ["riding her scooter", "audience interaction"]
449 | },
450 | {
451 | "name": "Tinky Winky",
452 | "slug": "tinky-winky",
453 | "image_url": "/images/profile/tinky-winky.webp",
454 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
455 | "traits": ["tallest", "oldest", "kind", "gentle"],
456 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
457 | },
458 | {
459 | "name": "Dipsy",
460 | "slug": "dipsy",
461 | "image_url": "/images/profile/dipsy.webp",
462 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
463 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
464 | "loves": ["fun games", "wearing his hat"]
465 | },
466 | {
467 | "name": "Laa-Laa",
468 | "slug": "laa-laa",
469 | "image_url": "/images/profile/laa-laa.webp",
470 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
471 | "traits": ["very girly", "silly", "cute", "cheerful"],
472 | "loves": ["playing ball", "singing", "dancing"]
473 | },
474 | {
475 | "name": "Po",
476 | "slug": "po",
477 | "image_url": "/images/profile/po.webp",
478 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
479 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
480 | "loves": ["riding her scooter", "audience interaction"]
481 | },
482 | {
483 | "name": "Tinky Winky",
484 | "slug": "tinky-winky",
485 | "image_url": "/images/profile/tinky-winky.webp",
486 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
487 | "traits": ["tallest", "oldest", "kind", "gentle"],
488 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
489 | },
490 | {
491 | "name": "Dipsy",
492 | "slug": "dipsy",
493 | "image_url": "/images/profile/dipsy.webp",
494 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
495 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
496 | "loves": ["fun games", "wearing his hat"]
497 | },
498 | {
499 | "name": "Laa-Laa",
500 | "slug": "laa-laa",
501 | "image_url": "/images/profile/laa-laa.webp",
502 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
503 | "traits": ["very girly", "silly", "cute", "cheerful"],
504 | "loves": ["playing ball", "singing", "dancing"]
505 | },
506 | {
507 | "name": "Po",
508 | "slug": "po",
509 | "image_url": "/images/profile/po.webp",
510 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
511 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
512 | "loves": ["riding her scooter", "audience interaction"]
513 | },
514 | {
515 | "name": "Tinky Winky",
516 | "slug": "tinky-winky",
517 | "image_url": "/images/profile/tinky-winky.webp",
518 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
519 | "traits": ["tallest", "oldest", "kind", "gentle"],
520 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
521 | },
522 | {
523 | "name": "Dipsy",
524 | "slug": "dipsy",
525 | "image_url": "/images/profile/dipsy.webp",
526 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
527 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
528 | "loves": ["fun games", "wearing his hat"]
529 | },
530 | {
531 | "name": "Laa-Laa",
532 | "slug": "laa-laa",
533 | "image_url": "/images/profile/laa-laa.webp",
534 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
535 | "traits": ["very girly", "silly", "cute", "cheerful"],
536 | "loves": ["playing ball", "singing", "dancing"]
537 | },
538 | {
539 | "name": "Po",
540 | "slug": "po",
541 | "image_url": "/images/profile/po.webp",
542 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
543 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
544 | "loves": ["riding her scooter", "audience interaction"]
545 | },
546 | {
547 | "name": "Tinky Winky",
548 | "slug": "tinky-winky",
549 | "image_url": "/images/profile/tinky-winky.webp",
550 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
551 | "traits": ["tallest", "oldest", "kind", "gentle"],
552 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
553 | },
554 | {
555 | "name": "Dipsy",
556 | "slug": "dipsy",
557 | "image_url": "/images/profile/dipsy.webp",
558 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
559 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
560 | "loves": ["fun games", "wearing his hat"]
561 | },
562 | {
563 | "name": "Laa-Laa",
564 | "slug": "laa-laa",
565 | "image_url": "/images/profile/laa-laa.webp",
566 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
567 | "traits": ["very girly", "silly", "cute", "cheerful"],
568 | "loves": ["playing ball", "singing", "dancing"]
569 | },
570 | {
571 | "name": "Po",
572 | "slug": "po",
573 | "image_url": "/images/profile/po.webp",
574 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
575 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
576 | "loves": ["riding her scooter", "audience interaction"]
577 | },
578 | {
579 | "name": "Tinky Winky",
580 | "slug": "tinky-winky",
581 | "image_url": "/images/profile/tinky-winky.webp",
582 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
583 | "traits": ["tallest", "oldest", "kind", "gentle"],
584 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
585 | },
586 | {
587 | "name": "Dipsy",
588 | "slug": "dipsy",
589 | "image_url": "/images/profile/dipsy.webp",
590 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
591 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
592 | "loves": ["fun games", "wearing his hat"]
593 | },
594 | {
595 | "name": "Laa-Laa",
596 | "slug": "laa-laa",
597 | "image_url": "/images/profile/laa-laa.webp",
598 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
599 | "traits": ["very girly", "silly", "cute", "cheerful"],
600 | "loves": ["playing ball", "singing", "dancing"]
601 | },
602 | {
603 | "name": "Po",
604 | "slug": "po",
605 | "image_url": "/images/profile/po.webp",
606 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
607 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
608 | "loves": ["riding her scooter", "audience interaction"]
609 | },
610 | {
611 | "name": "Tinky Winky",
612 | "slug": "tinky-winky",
613 | "image_url": "/images/profile/tinky-winky.webp",
614 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
615 | "traits": ["tallest", "oldest", "kind", "gentle"],
616 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
617 | },
618 | {
619 | "name": "Dipsy",
620 | "slug": "dipsy",
621 | "image_url": "/images/profile/dipsy.webp",
622 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
623 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
624 | "loves": ["fun games", "wearing his hat"]
625 | },
626 | {
627 | "name": "Laa-Laa",
628 | "slug": "laa-laa",
629 | "image_url": "/images/profile/laa-laa.webp",
630 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
631 | "traits": ["very girly", "silly", "cute", "cheerful"],
632 | "loves": ["playing ball", "singing", "dancing"]
633 | },
634 | {
635 | "name": "Po",
636 | "slug": "po",
637 | "image_url": "/images/profile/po.webp",
638 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
639 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
640 | "loves": ["riding her scooter", "audience interaction"]
641 | },
642 | {
643 | "name": "Tinky Winky",
644 | "slug": "tinky-winky",
645 | "image_url": "/images/profile/tinky-winky.webp",
646 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
647 | "traits": ["tallest", "oldest", "kind", "gentle"],
648 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
649 | },
650 | {
651 | "name": "Dipsy",
652 | "slug": "dipsy",
653 | "image_url": "/images/profile/dipsy.webp",
654 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
655 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
656 | "loves": ["fun games", "wearing his hat"]
657 | },
658 | {
659 | "name": "Laa-Laa",
660 | "slug": "laa-laa",
661 | "image_url": "/images/profile/laa-laa.webp",
662 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
663 | "traits": ["very girly", "silly", "cute", "cheerful"],
664 | "loves": ["playing ball", "singing", "dancing"]
665 | },
666 | {
667 | "name": "Po",
668 | "slug": "po",
669 | "image_url": "/images/profile/po.webp",
670 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
671 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
672 | "loves": ["riding her scooter", "audience interaction"]
673 | },
674 | {
675 | "name": "Tinky Winky",
676 | "slug": "tinky-winky",
677 | "image_url": "/images/profile/tinky-winky.webp",
678 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
679 | "traits": ["tallest", "oldest", "kind", "gentle"],
680 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
681 | },
682 | {
683 | "name": "Dipsy",
684 | "slug": "dipsy",
685 | "image_url": "/images/profile/dipsy.webp",
686 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
687 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
688 | "loves": ["fun games", "wearing his hat"]
689 | },
690 | {
691 | "name": "Laa-Laa",
692 | "slug": "laa-laa",
693 | "image_url": "/images/profile/laa-laa.webp",
694 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
695 | "traits": ["very girly", "silly", "cute", "cheerful"],
696 | "loves": ["playing ball", "singing", "dancing"]
697 | },
698 | {
699 | "name": "Po",
700 | "slug": "po",
701 | "image_url": "/images/profile/po.webp",
702 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
703 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
704 | "loves": ["riding her scooter", "audience interaction"]
705 | },
706 | {
707 | "name": "Tinky Winky",
708 | "slug": "tinky-winky",
709 | "image_url": "/images/profile/tinky-winky.webp",
710 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
711 | "traits": ["tallest", "oldest", "kind", "gentle"],
712 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
713 | },
714 | {
715 | "name": "Dipsy",
716 | "slug": "dipsy",
717 | "image_url": "/images/profile/dipsy.webp",
718 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
719 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
720 | "loves": ["fun games", "wearing his hat"]
721 | },
722 | {
723 | "name": "Laa-Laa",
724 | "slug": "laa-laa",
725 | "image_url": "/images/profile/laa-laa.webp",
726 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
727 | "traits": ["very girly", "silly", "cute", "cheerful"],
728 | "loves": ["playing ball", "singing", "dancing"]
729 | },
730 | {
731 | "name": "Po",
732 | "slug": "po",
733 | "image_url": "/images/profile/po.webp",
734 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
735 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
736 | "loves": ["riding her scooter", "audience interaction"]
737 | },
738 | {
739 | "name": "Tinky Winky",
740 | "slug": "tinky-winky",
741 | "image_url": "/images/profile/tinky-winky.webp",
742 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
743 | "traits": ["tallest", "oldest", "kind", "gentle"],
744 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
745 | },
746 | {
747 | "name": "Dipsy",
748 | "slug": "dipsy",
749 | "image_url": "/images/profile/dipsy.webp",
750 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
751 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
752 | "loves": ["fun games", "wearing his hat"]
753 | },
754 | {
755 | "name": "Laa-Laa",
756 | "slug": "laa-laa",
757 | "image_url": "/images/profile/laa-laa.webp",
758 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
759 | "traits": ["very girly", "silly", "cute", "cheerful"],
760 | "loves": ["playing ball", "singing", "dancing"]
761 | },
762 | {
763 | "name": "Po",
764 | "slug": "po",
765 | "image_url": "/images/profile/po.webp",
766 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
767 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
768 | "loves": ["riding her scooter", "audience interaction"]
769 | },
770 | {
771 | "name": "Tinky Winky",
772 | "slug": "tinky-winky",
773 | "image_url": "/images/profile/tinky-winky.webp",
774 | "description": "Tinky Winky, (played by Dave Thompson (from 1997), and Simon Shelton (1997-2001, 2007, 2009), and voiced by Mark Heenehan (from 1997-2001), and in the original series and Jeremiah Krage (2015-present) in the new series) is the first Teletubby. He is the largest and oldest of the Teletubbies, being 10 feet tall.",
775 | "traits": ["tallest", "oldest", "kind", "gentle"],
776 | "loves": ["big hugs", "walking", "marching", "dancing", "falling over"]
777 | },
778 | {
779 | "name": "Dipsy",
780 | "slug": "dipsy",
781 | "image_url": "/images/profile/dipsy.webp",
782 | "description": "Dipsy is the second Teletubby with an antenna that refers to a dipstick because of his name. Dipsy's skin tone is slightly darker than the other Teletubbies, implying that he is black. He is jolly and likes talking to himself. He wears a white hat with black cow spots.",
783 | "traits": ["stubborn", "sarcastic", "contemptuous", "contrarian"],
784 | "loves": ["fun games", "wearing his hat"]
785 | },
786 | {
787 | "name": "Laa-Laa",
788 | "slug": "laa-laa",
789 | "image_url": "/images/profile/laa-laa.webp",
790 | "description": "Laa-Laa is the third Teletubby played by Nikky Smedley (from 1997 - 2003, 2007, 2009) in the original series and Rebecca Hyland (from 2015 - present) in the new series. She is yellow and has a curly antenna on her head. Her favourite thing is a giant orange ball.",
791 | "traits": ["very girly", "silly", "cute", "cheerful"],
792 | "loves": ["playing ball", "singing", "dancing"]
793 | },
794 | {
795 | "name": "Po",
796 | "slug": "po",
797 | "image_url": "/images/profile/po.webp",
798 | "description": "Po is the fourth and youngest Teletubby. She lives in Teletubbyland with the other Teletubbies.",
799 | "traits": ["clever", "silly", "loves attention", "timid", "smart"],
800 | "loves": ["riding her scooter", "audience interaction"]
801 | }
802 | ]
803 |
--------------------------------------------------------------------------------
/public/buildings.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildings": [
3 | {
4 | "Name": "Barley",
5 | "Alerts": {
6 | "high": { "count": 3 },
7 | "med": {
8 | "count": 3,
9 | "details": [
10 | {
11 | "metric": "Water Temp",
12 | "unit": "deg F",
13 | "time": "12/06/2022 10:23am",
14 | "threshold": 150,
15 | "value": 156
16 | },
17 | {
18 | "metric": "Air Pressure",
19 | "unit": "psi",
20 | "time": "12/11/2022 12:21am",
21 | "threshold": 12,
22 | "value": 15
23 | },
24 | {
25 | "metric": "Fan Speed",
26 | "unit": "rps",
27 | "time": "12/05/2022 11:51am",
28 | "threshold": 6,
29 | "value": 4
30 | }
31 | ]
32 | },
33 | "low": { "count": 0 }
34 | },
35 | "Savings": "89%",
36 | "Uptime": "104h",
37 | "Power": "1165kW"
38 | },
39 | {
40 | "Name": "Gaulberg",
41 | "Alerts": {
42 | "high": 0,
43 | "med": {
44 | "count": 1,
45 | "details": [
46 | {
47 | "metric": "Air Temp",
48 | "unit": "deg F",
49 | "time": "10/26/2022 11:23am",
50 | "threshold": 99,
51 | "value": 105
52 | }
53 | ]
54 | },
55 | "low": {
56 | "count": 1,
57 | "details": [
58 | {
59 | "metric": "Exhaust Volume",
60 | "unit": "cuft",
61 | "time": "11/16/2022 01:33am",
62 | "threshold": 55,
63 | "value": 78
64 | }
65 | ]
66 | }
67 | },
68 | "Savings": "33%",
69 | "Uptime": "15h",
70 | "Power": "8300kW"
71 | },
72 | {
73 | "Name": "Bridgeville",
74 | "Alerts": {
75 | "high": { "count": 0 },
76 | "med": { "count": 0 },
77 | "low": { "count": 0 }
78 | },
79 | "Savings": "52%",
80 | "Uptime": "315h",
81 | "Power": "2700kW"
82 | },
83 | {
84 | "Name": "Biobot",
85 | "Alerts": {
86 | "high": { "count": 0 },
87 | "med": { "count": 0 },
88 | "low": { "count": 0 }
89 | },
90 | "Savings": "76%",
91 | "Uptime": "423h",
92 | "Power": "1530kW"
93 | },
94 | {
95 | "Name": "Barley",
96 | "Alerts": {
97 | "high": { "count": 3 },
98 | "med": {
99 | "count": 3,
100 | "details": [
101 | {
102 | "metric": "Water Temp",
103 | "unit": "deg F",
104 | "time": "12/06/2022 10:23am",
105 | "threshold": 150,
106 | "value": 156
107 | },
108 | {
109 | "metric": "Air Pressure",
110 | "unit": "psi",
111 | "time": "12/11/2022 12:21am",
112 | "threshold": 12,
113 | "value": 15
114 | },
115 | {
116 | "metric": "Fan Speed",
117 | "unit": "rps",
118 | "time": "12/05/2022 11:51am",
119 | "threshold": 6,
120 | "value": 4
121 | }
122 | ]
123 | },
124 | "low": { "count": 0 }
125 | },
126 | "Savings": "89%",
127 | "Uptime": "104h",
128 | "Power": "1165kW"
129 | },
130 | {
131 | "Name": "Gaulberg",
132 | "Alerts": {
133 | "high": 0,
134 | "med": {
135 | "count": 1,
136 | "details": [
137 | {
138 | "metric": "Air Temp",
139 | "unit": "deg F",
140 | "time": "10/26/2022 11:23am",
141 | "threshold": 99,
142 | "value": 105
143 | }
144 | ]
145 | },
146 | "low": {
147 | "count": 1,
148 | "details": [
149 | {
150 | "metric": "Exhaust Volume",
151 | "unit": "cuft",
152 | "time": "11/16/2022 01:33am",
153 | "threshold": 55,
154 | "value": 78
155 | }
156 | ]
157 | }
158 | },
159 | "Savings": "33%",
160 | "Uptime": "15h",
161 | "Power": "8300kW"
162 | },
163 | {
164 | "Name": "Bridgeville",
165 | "Alerts": {
166 | "high": { "count": 0 },
167 | "med": { "count": 0 },
168 | "low": { "count": 0 }
169 | },
170 | "Savings": "52%",
171 | "Uptime": "315h",
172 | "Power": "2700kW"
173 | },
174 | {
175 | "Name": "Biobot",
176 | "Alerts": {
177 | "high": { "count": 0 },
178 | "med": { "count": 0 },
179 | "low": { "count": 0 }
180 | },
181 | "Savings": "76%",
182 | "Uptime": "423h",
183 | "Power": "1530kW"
184 | },
185 | {
186 | "Name": "Barley",
187 | "Alerts": {
188 | "high": { "count": 3 },
189 | "med": {
190 | "count": 3,
191 | "details": [
192 | {
193 | "metric": "Water Temp",
194 | "unit": "deg F",
195 | "time": "12/06/2022 10:23am",
196 | "threshold": 150,
197 | "value": 156
198 | },
199 | {
200 | "metric": "Air Pressure",
201 | "unit": "psi",
202 | "time": "12/11/2022 12:21am",
203 | "threshold": 12,
204 | "value": 15
205 | },
206 | {
207 | "metric": "Fan Speed",
208 | "unit": "rps",
209 | "time": "12/05/2022 11:51am",
210 | "threshold": 6,
211 | "value": 4
212 | }
213 | ]
214 | },
215 | "low": { "count": 0 }
216 | },
217 | "Savings": "89%",
218 | "Uptime": "104h",
219 | "Power": "1165kW"
220 | },
221 | {
222 | "Name": "Gaulberg",
223 | "Alerts": {
224 | "high": 0,
225 | "med": {
226 | "count": 1,
227 | "details": [
228 | {
229 | "metric": "Air Temp",
230 | "unit": "deg F",
231 | "time": "10/26/2022 11:23am",
232 | "threshold": 99,
233 | "value": 105
234 | }
235 | ]
236 | },
237 | "low": {
238 | "count": 1,
239 | "details": [
240 | {
241 | "metric": "Exhaust Volume",
242 | "unit": "cuft",
243 | "time": "11/16/2022 01:33am",
244 | "threshold": 55,
245 | "value": 78
246 | }
247 | ]
248 | }
249 | },
250 | "Savings": "33%",
251 | "Uptime": "15h",
252 | "Power": "8300kW"
253 | },
254 | {
255 | "Name": "Bridgeville",
256 | "Alerts": {
257 | "high": { "count": 0 },
258 | "med": { "count": 0 },
259 | "low": { "count": 0 }
260 | },
261 | "Savings": "52%",
262 | "Uptime": "315h",
263 | "Power": "2700kW"
264 | },
265 | {
266 | "Name": "Biobot",
267 | "Alerts": {
268 | "high": { "count": 0 },
269 | "med": { "count": 0 },
270 | "low": { "count": 0 }
271 | },
272 | "Savings": "76%",
273 | "Uptime": "423h",
274 | "Power": "1530kW"
275 | },
276 | {
277 | "Name": "Barley",
278 | "Alerts": {
279 | "high": { "count": 3 },
280 | "med": {
281 | "count": 3,
282 | "details": [
283 | {
284 | "metric": "Water Temp",
285 | "unit": "deg F",
286 | "time": "12/06/2022 10:23am",
287 | "threshold": 150,
288 | "value": 156
289 | },
290 | {
291 | "metric": "Air Pressure",
292 | "unit": "psi",
293 | "time": "12/11/2022 12:21am",
294 | "threshold": 12,
295 | "value": 15
296 | },
297 | {
298 | "metric": "Fan Speed",
299 | "unit": "rps",
300 | "time": "12/05/2022 11:51am",
301 | "threshold": 6,
302 | "value": 4
303 | }
304 | ]
305 | },
306 | "low": { "count": 0 }
307 | },
308 | "Savings": "89%",
309 | "Uptime": "104h",
310 | "Power": "1165kW"
311 | },
312 | {
313 | "Name": "Gaulberg",
314 | "Alerts": {
315 | "high": 0,
316 | "med": {
317 | "count": 1,
318 | "details": [
319 | {
320 | "metric": "Air Temp",
321 | "unit": "deg F",
322 | "time": "10/26/2022 11:23am",
323 | "threshold": 99,
324 | "value": 105
325 | }
326 | ]
327 | },
328 | "low": {
329 | "count": 1,
330 | "details": [
331 | {
332 | "metric": "Exhaust Volume",
333 | "unit": "cuft",
334 | "time": "11/16/2022 01:33am",
335 | "threshold": 55,
336 | "value": 78
337 | }
338 | ]
339 | }
340 | },
341 | "Savings": "33%",
342 | "Uptime": "15h",
343 | "Power": "8300kW"
344 | },
345 | {
346 | "Name": "Bridgeville",
347 | "Alerts": {
348 | "high": { "count": 0 },
349 | "med": { "count": 0 },
350 | "low": { "count": 0 }
351 | },
352 | "Savings": "52%",
353 | "Uptime": "315h",
354 | "Power": "2700kW"
355 | },
356 | {
357 | "Name": "Biobot",
358 | "Alerts": {
359 | "high": { "count": 0 },
360 | "med": { "count": 0 },
361 | "low": { "count": 0 }
362 | },
363 | "Savings": "76%",
364 | "Uptime": "423h",
365 | "Power": "1530kW"
366 | },
367 | {
368 | "Name": "Barley",
369 | "Alerts": {
370 | "high": { "count": 3 },
371 | "med": {
372 | "count": 3,
373 | "details": [
374 | {
375 | "metric": "Water Temp",
376 | "unit": "deg F",
377 | "time": "12/06/2022 10:23am",
378 | "threshold": 150,
379 | "value": 156
380 | },
381 | {
382 | "metric": "Air Pressure",
383 | "unit": "psi",
384 | "time": "12/11/2022 12:21am",
385 | "threshold": 12,
386 | "value": 15
387 | },
388 | {
389 | "metric": "Fan Speed",
390 | "unit": "rps",
391 | "time": "12/05/2022 11:51am",
392 | "threshold": 6,
393 | "value": 4
394 | }
395 | ]
396 | },
397 | "low": { "count": 0 }
398 | },
399 | "Savings": "89%",
400 | "Uptime": "104h",
401 | "Power": "1165kW"
402 | },
403 | {
404 | "Name": "Gaulberg",
405 | "Alerts": {
406 | "high": 0,
407 | "med": {
408 | "count": 1,
409 | "details": [
410 | {
411 | "metric": "Air Temp",
412 | "unit": "deg F",
413 | "time": "10/26/2022 11:23am",
414 | "threshold": 99,
415 | "value": 105
416 | }
417 | ]
418 | },
419 | "low": {
420 | "count": 1,
421 | "details": [
422 | {
423 | "metric": "Exhaust Volume",
424 | "unit": "cuft",
425 | "time": "11/16/2022 01:33am",
426 | "threshold": 55,
427 | "value": 78
428 | }
429 | ]
430 | }
431 | },
432 | "Savings": "33%",
433 | "Uptime": "15h",
434 | "Power": "8300kW"
435 | },
436 | {
437 | "Name": "Bridgeville",
438 | "Alerts": {
439 | "high": { "count": 0 },
440 | "med": { "count": 0 },
441 | "low": { "count": 0 }
442 | },
443 | "Savings": "52%",
444 | "Uptime": "315h",
445 | "Power": "2700kW"
446 | },
447 | {
448 | "Name": "Biobot",
449 | "Alerts": {
450 | "high": { "count": 0 },
451 | "med": { "count": 0 },
452 | "low": { "count": 0 }
453 | },
454 | "Savings": "76%",
455 | "Uptime": "423h",
456 | "Power": "1530kW"
457 | },
458 | {
459 | "Name": "Barley",
460 | "Alerts": {
461 | "high": { "count": 3 },
462 | "med": {
463 | "count": 3,
464 | "details": [
465 | {
466 | "metric": "Water Temp",
467 | "unit": "deg F",
468 | "time": "12/06/2022 10:23am",
469 | "threshold": 150,
470 | "value": 156
471 | },
472 | {
473 | "metric": "Air Pressure",
474 | "unit": "psi",
475 | "time": "12/11/2022 12:21am",
476 | "threshold": 12,
477 | "value": 15
478 | },
479 | {
480 | "metric": "Fan Speed",
481 | "unit": "rps",
482 | "time": "12/05/2022 11:51am",
483 | "threshold": 6,
484 | "value": 4
485 | }
486 | ]
487 | },
488 | "low": { "count": 0 }
489 | },
490 | "Savings": "89%",
491 | "Uptime": "104h",
492 | "Power": "1165kW"
493 | },
494 | {
495 | "Name": "Gaulberg",
496 | "Alerts": {
497 | "high": 0,
498 | "med": {
499 | "count": 1,
500 | "details": [
501 | {
502 | "metric": "Air Temp",
503 | "unit": "deg F",
504 | "time": "10/26/2022 11:23am",
505 | "threshold": 99,
506 | "value": 105
507 | }
508 | ]
509 | },
510 | "low": {
511 | "count": 1,
512 | "details": [
513 | {
514 | "metric": "Exhaust Volume",
515 | "unit": "cuft",
516 | "time": "11/16/2022 01:33am",
517 | "threshold": 55,
518 | "value": 78
519 | }
520 | ]
521 | }
522 | },
523 | "Savings": "33%",
524 | "Uptime": "15h",
525 | "Power": "8300kW"
526 | },
527 | {
528 | "Name": "Bridgeville",
529 | "Alerts": {
530 | "high": { "count": 0 },
531 | "med": { "count": 0 },
532 | "low": { "count": 0 }
533 | },
534 | "Savings": "52%",
535 | "Uptime": "315h",
536 | "Power": "2700kW"
537 | },
538 | {
539 | "Name": "Biobot",
540 | "Alerts": {
541 | "high": { "count": 0 },
542 | "med": { "count": 0 },
543 | "low": { "count": 0 }
544 | },
545 | "Savings": "76%",
546 | "Uptime": "423h",
547 | "Power": "1530kW"
548 | },
549 | {
550 | "Name": "Barley",
551 | "Alerts": {
552 | "high": { "count": 3 },
553 | "med": {
554 | "count": 3,
555 | "details": [
556 | {
557 | "metric": "Water Temp",
558 | "unit": "deg F",
559 | "time": "12/06/2022 10:23am",
560 | "threshold": 150,
561 | "value": 156
562 | },
563 | {
564 | "metric": "Air Pressure",
565 | "unit": "psi",
566 | "time": "12/11/2022 12:21am",
567 | "threshold": 12,
568 | "value": 15
569 | },
570 | {
571 | "metric": "Fan Speed",
572 | "unit": "rps",
573 | "time": "12/05/2022 11:51am",
574 | "threshold": 6,
575 | "value": 4
576 | }
577 | ]
578 | },
579 | "low": { "count": 0 }
580 | },
581 | "Savings": "89%",
582 | "Uptime": "104h",
583 | "Power": "1165kW"
584 | },
585 | {
586 | "Name": "Gaulberg",
587 | "Alerts": {
588 | "high": 0,
589 | "med": {
590 | "count": 1,
591 | "details": [
592 | {
593 | "metric": "Air Temp",
594 | "unit": "deg F",
595 | "time": "10/26/2022 11:23am",
596 | "threshold": 99,
597 | "value": 105
598 | }
599 | ]
600 | },
601 | "low": {
602 | "count": 1,
603 | "details": [
604 | {
605 | "metric": "Exhaust Volume",
606 | "unit": "cuft",
607 | "time": "11/16/2022 01:33am",
608 | "threshold": 55,
609 | "value": 78
610 | }
611 | ]
612 | }
613 | },
614 | "Savings": "33%",
615 | "Uptime": "15h",
616 | "Power": "8300kW"
617 | },
618 | {
619 | "Name": "Bridgeville",
620 | "Alerts": {
621 | "high": { "count": 0 },
622 | "med": { "count": 0 },
623 | "low": { "count": 0 }
624 | },
625 | "Savings": "52%",
626 | "Uptime": "315h",
627 | "Power": "2700kW"
628 | },
629 | {
630 | "Name": "Biobot",
631 | "Alerts": {
632 | "high": { "count": 0 },
633 | "med": { "count": 0 },
634 | "low": { "count": 0 }
635 | },
636 | "Savings": "76%",
637 | "Uptime": "423h",
638 | "Power": "1530kW"
639 | },
640 | {
641 | "Name": "Barley",
642 | "Alerts": {
643 | "high": { "count": 3 },
644 | "med": {
645 | "count": 3,
646 | "details": [
647 | {
648 | "metric": "Water Temp",
649 | "unit": "deg F",
650 | "time": "12/06/2022 10:23am",
651 | "threshold": 150,
652 | "value": 156
653 | },
654 | {
655 | "metric": "Air Pressure",
656 | "unit": "psi",
657 | "time": "12/11/2022 12:21am",
658 | "threshold": 12,
659 | "value": 15
660 | },
661 | {
662 | "metric": "Fan Speed",
663 | "unit": "rps",
664 | "time": "12/05/2022 11:51am",
665 | "threshold": 6,
666 | "value": 4
667 | }
668 | ]
669 | },
670 | "low": { "count": 0 }
671 | },
672 | "Savings": "89%",
673 | "Uptime": "104h",
674 | "Power": "1165kW"
675 | },
676 | {
677 | "Name": "Gaulberg",
678 | "Alerts": {
679 | "high": 0,
680 | "med": {
681 | "count": 1,
682 | "details": [
683 | {
684 | "metric": "Air Temp",
685 | "unit": "deg F",
686 | "time": "10/26/2022 11:23am",
687 | "threshold": 99,
688 | "value": 105
689 | }
690 | ]
691 | },
692 | "low": {
693 | "count": 1,
694 | "details": [
695 | {
696 | "metric": "Exhaust Volume",
697 | "unit": "cuft",
698 | "time": "11/16/2022 01:33am",
699 | "threshold": 55,
700 | "value": 78
701 | }
702 | ]
703 | }
704 | },
705 | "Savings": "33%",
706 | "Uptime": "15h",
707 | "Power": "8300kW"
708 | },
709 | {
710 | "Name": "Bridgeville",
711 | "Alerts": {
712 | "high": { "count": 0 },
713 | "med": { "count": 0 },
714 | "low": { "count": 0 }
715 | },
716 | "Savings": "52%",
717 | "Uptime": "315h",
718 | "Power": "2700kW"
719 | },
720 | {
721 | "Name": "Biobot",
722 | "Alerts": {
723 | "high": { "count": 0 },
724 | "med": { "count": 0 },
725 | "low": { "count": 0 }
726 | },
727 | "Savings": "76%",
728 | "Uptime": "423h",
729 | "Power": "1530kW"
730 | },
731 | {
732 | "Name": "Barley",
733 | "Alerts": {
734 | "high": { "count": 3 },
735 | "med": {
736 | "count": 3,
737 | "details": [
738 | {
739 | "metric": "Water Temp",
740 | "unit": "deg F",
741 | "time": "12/06/2022 10:23am",
742 | "threshold": 150,
743 | "value": 156
744 | },
745 | {
746 | "metric": "Air Pressure",
747 | "unit": "psi",
748 | "time": "12/11/2022 12:21am",
749 | "threshold": 12,
750 | "value": 15
751 | },
752 | {
753 | "metric": "Fan Speed",
754 | "unit": "rps",
755 | "time": "12/05/2022 11:51am",
756 | "threshold": 6,
757 | "value": 4
758 | }
759 | ]
760 | },
761 | "low": { "count": 0 }
762 | },
763 | "Savings": "89%",
764 | "Uptime": "104h",
765 | "Power": "1165kW"
766 | },
767 | {
768 | "Name": "Gaulberg",
769 | "Alerts": {
770 | "high": 0,
771 | "med": {
772 | "count": 1,
773 | "details": [
774 | {
775 | "metric": "Air Temp",
776 | "unit": "deg F",
777 | "time": "10/26/2022 11:23am",
778 | "threshold": 99,
779 | "value": 105
780 | }
781 | ]
782 | },
783 | "low": {
784 | "count": 1,
785 | "details": [
786 | {
787 | "metric": "Exhaust Volume",
788 | "unit": "cuft",
789 | "time": "11/16/2022 01:33am",
790 | "threshold": 55,
791 | "value": 78
792 | }
793 | ]
794 | }
795 | },
796 | "Savings": "33%",
797 | "Uptime": "15h",
798 | "Power": "8300kW"
799 | },
800 | {
801 | "Name": "Bridgeville",
802 | "Alerts": {
803 | "high": { "count": 0 },
804 | "med": { "count": 0 },
805 | "low": { "count": 0 }
806 | },
807 | "Savings": "52%",
808 | "Uptime": "315h",
809 | "Power": "2700kW"
810 | },
811 | {
812 | "Name": "Biobot",
813 | "Alerts": {
814 | "high": { "count": 0 },
815 | "med": { "count": 0 },
816 | "low": { "count": 0 }
817 | },
818 | "Savings": "76%",
819 | "Uptime": "423h",
820 | "Power": "1530kW"
821 | },
822 | {
823 | "Name": "Barley",
824 | "Alerts": {
825 | "high": { "count": 3 },
826 | "med": {
827 | "count": 3,
828 | "details": [
829 | {
830 | "metric": "Water Temp",
831 | "unit": "deg F",
832 | "time": "12/06/2022 10:23am",
833 | "threshold": 150,
834 | "value": 156
835 | },
836 | {
837 | "metric": "Air Pressure",
838 | "unit": "psi",
839 | "time": "12/11/2022 12:21am",
840 | "threshold": 12,
841 | "value": 15
842 | },
843 | {
844 | "metric": "Fan Speed",
845 | "unit": "rps",
846 | "time": "12/05/2022 11:51am",
847 | "threshold": 6,
848 | "value": 4
849 | }
850 | ]
851 | },
852 | "low": { "count": 0 }
853 | },
854 | "Savings": "89%",
855 | "Uptime": "104h",
856 | "Power": "1165kW"
857 | },
858 | {
859 | "Name": "Gaulberg",
860 | "Alerts": {
861 | "high": 0,
862 | "med": {
863 | "count": 1,
864 | "details": [
865 | {
866 | "metric": "Air Temp",
867 | "unit": "deg F",
868 | "time": "10/26/2022 11:23am",
869 | "threshold": 99,
870 | "value": 105
871 | }
872 | ]
873 | },
874 | "low": {
875 | "count": 1,
876 | "details": [
877 | {
878 | "metric": "Exhaust Volume",
879 | "unit": "cuft",
880 | "time": "11/16/2022 01:33am",
881 | "threshold": 55,
882 | "value": 78
883 | }
884 | ]
885 | }
886 | },
887 | "Savings": "33%",
888 | "Uptime": "15h",
889 | "Power": "8300kW"
890 | },
891 | {
892 | "Name": "Bridgeville",
893 | "Alerts": {
894 | "high": { "count": 0 },
895 | "med": { "count": 0 },
896 | "low": { "count": 0 }
897 | },
898 | "Savings": "52%",
899 | "Uptime": "315h",
900 | "Power": "2700kW"
901 | },
902 | {
903 | "Name": "Biobot",
904 | "Alerts": {
905 | "high": { "count": 0 },
906 | "med": { "count": 0 },
907 | "low": { "count": 0 }
908 | },
909 | "Savings": "76%",
910 | "Uptime": "423h",
911 | "Power": "1530kW"
912 | },
913 | {
914 | "Name": "Barley",
915 | "Alerts": {
916 | "high": { "count": 3 },
917 | "med": {
918 | "count": 3,
919 | "details": [
920 | {
921 | "metric": "Water Temp",
922 | "unit": "deg F",
923 | "time": "12/06/2022 10:23am",
924 | "threshold": 150,
925 | "value": 156
926 | },
927 | {
928 | "metric": "Air Pressure",
929 | "unit": "psi",
930 | "time": "12/11/2022 12:21am",
931 | "threshold": 12,
932 | "value": 15
933 | },
934 | {
935 | "metric": "Fan Speed",
936 | "unit": "rps",
937 | "time": "12/05/2022 11:51am",
938 | "threshold": 6,
939 | "value": 4
940 | }
941 | ]
942 | },
943 | "low": { "count": 0 }
944 | },
945 | "Savings": "89%",
946 | "Uptime": "104h",
947 | "Power": "1165kW"
948 | },
949 | {
950 | "Name": "Gaulberg",
951 | "Alerts": {
952 | "high": 0,
953 | "med": {
954 | "count": 1,
955 | "details": [
956 | {
957 | "metric": "Air Temp",
958 | "unit": "deg F",
959 | "time": "10/26/2022 11:23am",
960 | "threshold": 99,
961 | "value": 105
962 | }
963 | ]
964 | },
965 | "low": {
966 | "count": 1,
967 | "details": [
968 | {
969 | "metric": "Exhaust Volume",
970 | "unit": "cuft",
971 | "time": "11/16/2022 01:33am",
972 | "threshold": 55,
973 | "value": 78
974 | }
975 | ]
976 | }
977 | },
978 | "Savings": "33%",
979 | "Uptime": "15h",
980 | "Power": "8300kW"
981 | },
982 | {
983 | "Name": "Bridgeville",
984 | "Alerts": {
985 | "high": { "count": 0 },
986 | "med": { "count": 0 },
987 | "low": { "count": 0 }
988 | },
989 | "Savings": "52%",
990 | "Uptime": "315h",
991 | "Power": "2700kW"
992 | },
993 | {
994 | "Name": "Biobot",
995 | "Alerts": {
996 | "high": { "count": 0 },
997 | "med": { "count": 0 },
998 | "low": { "count": 0 }
999 | },
1000 | "Savings": "76%",
1001 | "Uptime": "423h",
1002 | "Power": "1530kW"
1003 | },
1004 | {
1005 | "Name": "Barley",
1006 | "Alerts": {
1007 | "high": { "count": 3 },
1008 | "med": {
1009 | "count": 3,
1010 | "details": [
1011 | {
1012 | "metric": "Water Temp",
1013 | "unit": "deg F",
1014 | "time": "12/06/2022 10:23am",
1015 | "threshold": 150,
1016 | "value": 156
1017 | },
1018 | {
1019 | "metric": "Air Pressure",
1020 | "unit": "psi",
1021 | "time": "12/11/2022 12:21am",
1022 | "threshold": 12,
1023 | "value": 15
1024 | },
1025 | {
1026 | "metric": "Fan Speed",
1027 | "unit": "rps",
1028 | "time": "12/05/2022 11:51am",
1029 | "threshold": 6,
1030 | "value": 4
1031 | }
1032 | ]
1033 | },
1034 | "low": { "count": 0 }
1035 | },
1036 | "Savings": "89%",
1037 | "Uptime": "104h",
1038 | "Power": "1165kW"
1039 | },
1040 | {
1041 | "Name": "Gaulberg",
1042 | "Alerts": {
1043 | "high": 0,
1044 | "med": {
1045 | "count": 1,
1046 | "details": [
1047 | {
1048 | "metric": "Air Temp",
1049 | "unit": "deg F",
1050 | "time": "10/26/2022 11:23am",
1051 | "threshold": 99,
1052 | "value": 105
1053 | }
1054 | ]
1055 | },
1056 | "low": {
1057 | "count": 1,
1058 | "details": [
1059 | {
1060 | "metric": "Exhaust Volume",
1061 | "unit": "cuft",
1062 | "time": "11/16/2022 01:33am",
1063 | "threshold": 55,
1064 | "value": 78
1065 | }
1066 | ]
1067 | }
1068 | },
1069 | "Savings": "33%",
1070 | "Uptime": "15h",
1071 | "Power": "8300kW"
1072 | },
1073 | {
1074 | "Name": "Bridgeville",
1075 | "Alerts": {
1076 | "high": { "count": 0 },
1077 | "med": { "count": 0 },
1078 | "low": { "count": 0 }
1079 | },
1080 | "Savings": "52%",
1081 | "Uptime": "315h",
1082 | "Power": "2700kW"
1083 | },
1084 | {
1085 | "Name": "Biobot",
1086 | "Alerts": {
1087 | "high": { "count": 0 },
1088 | "med": { "count": 0 },
1089 | "low": { "count": 0 }
1090 | },
1091 | "Savings": "76%",
1092 | "Uptime": "423h",
1093 | "Power": "1530kW"
1094 | },
1095 | {
1096 | "Name": "Barley",
1097 | "Alerts": {
1098 | "high": { "count": 3 },
1099 | "med": {
1100 | "count": 3,
1101 | "details": [
1102 | {
1103 | "metric": "Water Temp",
1104 | "unit": "deg F",
1105 | "time": "12/06/2022 10:23am",
1106 | "threshold": 150,
1107 | "value": 156
1108 | },
1109 | {
1110 | "metric": "Air Pressure",
1111 | "unit": "psi",
1112 | "time": "12/11/2022 12:21am",
1113 | "threshold": 12,
1114 | "value": 15
1115 | },
1116 | {
1117 | "metric": "Fan Speed",
1118 | "unit": "rps",
1119 | "time": "12/05/2022 11:51am",
1120 | "threshold": 6,
1121 | "value": 4
1122 | }
1123 | ]
1124 | },
1125 | "low": { "count": 0 }
1126 | },
1127 | "Savings": "89%",
1128 | "Uptime": "104h",
1129 | "Power": "1165kW"
1130 | },
1131 | {
1132 | "Name": "Gaulberg",
1133 | "Alerts": {
1134 | "high": 0,
1135 | "med": {
1136 | "count": 1,
1137 | "details": [
1138 | {
1139 | "metric": "Air Temp",
1140 | "unit": "deg F",
1141 | "time": "10/26/2022 11:23am",
1142 | "threshold": 99,
1143 | "value": 105
1144 | }
1145 | ]
1146 | },
1147 | "low": {
1148 | "count": 1,
1149 | "details": [
1150 | {
1151 | "metric": "Exhaust Volume",
1152 | "unit": "cuft",
1153 | "time": "11/16/2022 01:33am",
1154 | "threshold": 55,
1155 | "value": 78
1156 | }
1157 | ]
1158 | }
1159 | },
1160 | "Savings": "33%",
1161 | "Uptime": "15h",
1162 | "Power": "8300kW"
1163 | },
1164 | {
1165 | "Name": "Bridgeville",
1166 | "Alerts": {
1167 | "high": { "count": 0 },
1168 | "med": { "count": 0 },
1169 | "low": { "count": 0 }
1170 | },
1171 | "Savings": "52%",
1172 | "Uptime": "315h",
1173 | "Power": "2700kW"
1174 | },
1175 | {
1176 | "Name": "Biobot",
1177 | "Alerts": {
1178 | "high": { "count": 0 },
1179 | "med": { "count": 0 },
1180 | "low": { "count": 0 }
1181 | },
1182 | "Savings": "76%",
1183 | "Uptime": "423h",
1184 | "Power": "1530kW"
1185 | },
1186 | {
1187 | "Name": "Barley",
1188 | "Alerts": {
1189 | "high": { "count": 3 },
1190 | "med": {
1191 | "count": 3,
1192 | "details": [
1193 | {
1194 | "metric": "Water Temp",
1195 | "unit": "deg F",
1196 | "time": "12/06/2022 10:23am",
1197 | "threshold": 150,
1198 | "value": 156
1199 | },
1200 | {
1201 | "metric": "Air Pressure",
1202 | "unit": "psi",
1203 | "time": "12/11/2022 12:21am",
1204 | "threshold": 12,
1205 | "value": 15
1206 | },
1207 | {
1208 | "metric": "Fan Speed",
1209 | "unit": "rps",
1210 | "time": "12/05/2022 11:51am",
1211 | "threshold": 6,
1212 | "value": 4
1213 | }
1214 | ]
1215 | },
1216 | "low": { "count": 0 }
1217 | },
1218 | "Savings": "89%",
1219 | "Uptime": "104h",
1220 | "Power": "1165kW"
1221 | },
1222 | {
1223 | "Name": "Gaulberg",
1224 | "Alerts": {
1225 | "high": 0,
1226 | "med": {
1227 | "count": 1,
1228 | "details": [
1229 | {
1230 | "metric": "Air Temp",
1231 | "unit": "deg F",
1232 | "time": "10/26/2022 11:23am",
1233 | "threshold": 99,
1234 | "value": 105
1235 | }
1236 | ]
1237 | },
1238 | "low": {
1239 | "count": 1,
1240 | "details": [
1241 | {
1242 | "metric": "Exhaust Volume",
1243 | "unit": "cuft",
1244 | "time": "11/16/2022 01:33am",
1245 | "threshold": 55,
1246 | "value": 78
1247 | }
1248 | ]
1249 | }
1250 | },
1251 | "Savings": "33%",
1252 | "Uptime": "15h",
1253 | "Power": "8300kW"
1254 | },
1255 | {
1256 | "Name": "Bridgeville",
1257 | "Alerts": {
1258 | "high": { "count": 0 },
1259 | "med": { "count": 0 },
1260 | "low": { "count": 0 }
1261 | },
1262 | "Savings": "52%",
1263 | "Uptime": "315h",
1264 | "Power": "2700kW"
1265 | },
1266 | {
1267 | "Name": "Biobot",
1268 | "Alerts": {
1269 | "high": { "count": 0 },
1270 | "med": { "count": 0 },
1271 | "low": { "count": 0 }
1272 | },
1273 | "Savings": "76%",
1274 | "Uptime": "423h",
1275 | "Power": "1530kW"
1276 | },
1277 | {
1278 | "Name": "Barley",
1279 | "Alerts": {
1280 | "high": { "count": 3 },
1281 | "med": {
1282 | "count": 3,
1283 | "details": [
1284 | {
1285 | "metric": "Water Temp",
1286 | "unit": "deg F",
1287 | "time": "12/06/2022 10:23am",
1288 | "threshold": 150,
1289 | "value": 156
1290 | },
1291 | {
1292 | "metric": "Air Pressure",
1293 | "unit": "psi",
1294 | "time": "12/11/2022 12:21am",
1295 | "threshold": 12,
1296 | "value": 15
1297 | },
1298 | {
1299 | "metric": "Fan Speed",
1300 | "unit": "rps",
1301 | "time": "12/05/2022 11:51am",
1302 | "threshold": 6,
1303 | "value": 4
1304 | }
1305 | ]
1306 | },
1307 | "low": { "count": 0 }
1308 | },
1309 | "Savings": "89%",
1310 | "Uptime": "104h",
1311 | "Power": "1165kW"
1312 | },
1313 | {
1314 | "Name": "Gaulberg",
1315 | "Alerts": {
1316 | "high": 0,
1317 | "med": {
1318 | "count": 1,
1319 | "details": [
1320 | {
1321 | "metric": "Air Temp",
1322 | "unit": "deg F",
1323 | "time": "10/26/2022 11:23am",
1324 | "threshold": 99,
1325 | "value": 105
1326 | }
1327 | ]
1328 | },
1329 | "low": {
1330 | "count": 1,
1331 | "details": [
1332 | {
1333 | "metric": "Exhaust Volume",
1334 | "unit": "cuft",
1335 | "time": "11/16/2022 01:33am",
1336 | "threshold": 55,
1337 | "value": 78
1338 | }
1339 | ]
1340 | }
1341 | },
1342 | "Savings": "33%",
1343 | "Uptime": "15h",
1344 | "Power": "8300kW"
1345 | },
1346 | {
1347 | "Name": "Bridgeville",
1348 | "Alerts": {
1349 | "high": { "count": 0 },
1350 | "med": { "count": 0 },
1351 | "low": { "count": 0 }
1352 | },
1353 | "Savings": "52%",
1354 | "Uptime": "315h",
1355 | "Power": "2700kW"
1356 | },
1357 | {
1358 | "Name": "Biobot",
1359 | "Alerts": {
1360 | "high": { "count": 0 },
1361 | "med": { "count": 0 },
1362 | "low": { "count": 0 }
1363 | },
1364 | "Savings": "76%",
1365 | "Uptime": "423h",
1366 | "Power": "1530kW"
1367 | },
1368 | {
1369 | "Name": "Barley",
1370 | "Alerts": {
1371 | "high": { "count": 3 },
1372 | "med": {
1373 | "count": 3,
1374 | "details": [
1375 | {
1376 | "metric": "Water Temp",
1377 | "unit": "deg F",
1378 | "time": "12/06/2022 10:23am",
1379 | "threshold": 150,
1380 | "value": 156
1381 | },
1382 | {
1383 | "metric": "Air Pressure",
1384 | "unit": "psi",
1385 | "time": "12/11/2022 12:21am",
1386 | "threshold": 12,
1387 | "value": 15
1388 | },
1389 | {
1390 | "metric": "Fan Speed",
1391 | "unit": "rps",
1392 | "time": "12/05/2022 11:51am",
1393 | "threshold": 6,
1394 | "value": 4
1395 | }
1396 | ]
1397 | },
1398 | "low": { "count": 0 }
1399 | },
1400 | "Savings": "89%",
1401 | "Uptime": "104h",
1402 | "Power": "1165kW"
1403 | },
1404 | {
1405 | "Name": "Gaulberg",
1406 | "Alerts": {
1407 | "high": 0,
1408 | "med": {
1409 | "count": 1,
1410 | "details": [
1411 | {
1412 | "metric": "Air Temp",
1413 | "unit": "deg F",
1414 | "time": "10/26/2022 11:23am",
1415 | "threshold": 99,
1416 | "value": 105
1417 | }
1418 | ]
1419 | },
1420 | "low": {
1421 | "count": 1,
1422 | "details": [
1423 | {
1424 | "metric": "Exhaust Volume",
1425 | "unit": "cuft",
1426 | "time": "11/16/2022 01:33am",
1427 | "threshold": 55,
1428 | "value": 78
1429 | }
1430 | ]
1431 | }
1432 | },
1433 | "Savings": "33%",
1434 | "Uptime": "15h",
1435 | "Power": "8300kW"
1436 | },
1437 | {
1438 | "Name": "Bridgeville",
1439 | "Alerts": {
1440 | "high": { "count": 0 },
1441 | "med": { "count": 0 },
1442 | "low": { "count": 0 }
1443 | },
1444 | "Savings": "52%",
1445 | "Uptime": "315h",
1446 | "Power": "2700kW"
1447 | },
1448 | {
1449 | "Name": "Biobot",
1450 | "Alerts": {
1451 | "high": { "count": 0 },
1452 | "med": { "count": 0 },
1453 | "low": { "count": 0 }
1454 | },
1455 | "Savings": "76%",
1456 | "Uptime": "423h",
1457 | "Power": "1530kW"
1458 | },
1459 | {
1460 | "Name": "Barley",
1461 | "Alerts": {
1462 | "high": { "count": 3 },
1463 | "med": {
1464 | "count": 3,
1465 | "details": [
1466 | {
1467 | "metric": "Water Temp",
1468 | "unit": "deg F",
1469 | "time": "12/06/2022 10:23am",
1470 | "threshold": 150,
1471 | "value": 156
1472 | },
1473 | {
1474 | "metric": "Air Pressure",
1475 | "unit": "psi",
1476 | "time": "12/11/2022 12:21am",
1477 | "threshold": 12,
1478 | "value": 15
1479 | },
1480 | {
1481 | "metric": "Fan Speed",
1482 | "unit": "rps",
1483 | "time": "12/05/2022 11:51am",
1484 | "threshold": 6,
1485 | "value": 4
1486 | }
1487 | ]
1488 | },
1489 | "low": { "count": 0 }
1490 | },
1491 | "Savings": "89%",
1492 | "Uptime": "104h",
1493 | "Power": "1165kW"
1494 | },
1495 | {
1496 | "Name": "Gaulberg",
1497 | "Alerts": {
1498 | "high": 0,
1499 | "med": {
1500 | "count": 1,
1501 | "details": [
1502 | {
1503 | "metric": "Air Temp",
1504 | "unit": "deg F",
1505 | "time": "10/26/2022 11:23am",
1506 | "threshold": 99,
1507 | "value": 105
1508 | }
1509 | ]
1510 | },
1511 | "low": {
1512 | "count": 1,
1513 | "details": [
1514 | {
1515 | "metric": "Exhaust Volume",
1516 | "unit": "cuft",
1517 | "time": "11/16/2022 01:33am",
1518 | "threshold": 55,
1519 | "value": 78
1520 | }
1521 | ]
1522 | }
1523 | },
1524 | "Savings": "33%",
1525 | "Uptime": "15h",
1526 | "Power": "8300kW"
1527 | },
1528 | {
1529 | "Name": "Bridgeville",
1530 | "Alerts": {
1531 | "high": { "count": 0 },
1532 | "med": { "count": 0 },
1533 | "low": { "count": 0 }
1534 | },
1535 | "Savings": "52%",
1536 | "Uptime": "315h",
1537 | "Power": "2700kW"
1538 | },
1539 | {
1540 | "Name": "Biobot",
1541 | "Alerts": {
1542 | "high": { "count": 0 },
1543 | "med": { "count": 0 },
1544 | "low": { "count": 0 }
1545 | },
1546 | "Savings": "76%",
1547 | "Uptime": "423h",
1548 | "Power": "1530kW"
1549 | },
1550 | {
1551 | "Name": "Barley",
1552 | "Alerts": {
1553 | "high": { "count": 3 },
1554 | "med": {
1555 | "count": 3,
1556 | "details": [
1557 | {
1558 | "metric": "Water Temp",
1559 | "unit": "deg F",
1560 | "time": "12/06/2022 10:23am",
1561 | "threshold": 150,
1562 | "value": 156
1563 | },
1564 | {
1565 | "metric": "Air Pressure",
1566 | "unit": "psi",
1567 | "time": "12/11/2022 12:21am",
1568 | "threshold": 12,
1569 | "value": 15
1570 | },
1571 | {
1572 | "metric": "Fan Speed",
1573 | "unit": "rps",
1574 | "time": "12/05/2022 11:51am",
1575 | "threshold": 6,
1576 | "value": 4
1577 | }
1578 | ]
1579 | },
1580 | "low": { "count": 0 }
1581 | },
1582 | "Savings": "89%",
1583 | "Uptime": "104h",
1584 | "Power": "1165kW"
1585 | },
1586 | {
1587 | "Name": "Gaulberg",
1588 | "Alerts": {
1589 | "high": 0,
1590 | "med": {
1591 | "count": 1,
1592 | "details": [
1593 | {
1594 | "metric": "Air Temp",
1595 | "unit": "deg F",
1596 | "time": "10/26/2022 11:23am",
1597 | "threshold": 99,
1598 | "value": 105
1599 | }
1600 | ]
1601 | },
1602 | "low": {
1603 | "count": 1,
1604 | "details": [
1605 | {
1606 | "metric": "Exhaust Volume",
1607 | "unit": "cuft",
1608 | "time": "11/16/2022 01:33am",
1609 | "threshold": 55,
1610 | "value": 78
1611 | }
1612 | ]
1613 | }
1614 | },
1615 | "Savings": "33%",
1616 | "Uptime": "15h",
1617 | "Power": "8300kW"
1618 | },
1619 | {
1620 | "Name": "Bridgeville",
1621 | "Alerts": {
1622 | "high": { "count": 0 },
1623 | "med": { "count": 0 },
1624 | "low": { "count": 0 }
1625 | },
1626 | "Savings": "52%",
1627 | "Uptime": "315h",
1628 | "Power": "2700kW"
1629 | },
1630 | {
1631 | "Name": "Biobot",
1632 | "Alerts": {
1633 | "high": { "count": 0 },
1634 | "med": { "count": 0 },
1635 | "low": { "count": 0 }
1636 | },
1637 | "Savings": "76%",
1638 | "Uptime": "423h",
1639 | "Power": "1530kW"
1640 | },
1641 | {
1642 | "Name": "Barley",
1643 | "Alerts": {
1644 | "high": { "count": 3 },
1645 | "med": {
1646 | "count": 3,
1647 | "details": [
1648 | {
1649 | "metric": "Water Temp",
1650 | "unit": "deg F",
1651 | "time": "12/06/2022 10:23am",
1652 | "threshold": 150,
1653 | "value": 156
1654 | },
1655 | {
1656 | "metric": "Air Pressure",
1657 | "unit": "psi",
1658 | "time": "12/11/2022 12:21am",
1659 | "threshold": 12,
1660 | "value": 15
1661 | },
1662 | {
1663 | "metric": "Fan Speed",
1664 | "unit": "rps",
1665 | "time": "12/05/2022 11:51am",
1666 | "threshold": 6,
1667 | "value": 4
1668 | }
1669 | ]
1670 | },
1671 | "low": { "count": 0 }
1672 | },
1673 | "Savings": "89%",
1674 | "Uptime": "104h",
1675 | "Power": "1165kW"
1676 | },
1677 | {
1678 | "Name": "Gaulberg",
1679 | "Alerts": {
1680 | "high": 0,
1681 | "med": {
1682 | "count": 1,
1683 | "details": [
1684 | {
1685 | "metric": "Air Temp",
1686 | "unit": "deg F",
1687 | "time": "10/26/2022 11:23am",
1688 | "threshold": 99,
1689 | "value": 105
1690 | }
1691 | ]
1692 | },
1693 | "low": {
1694 | "count": 1,
1695 | "details": [
1696 | {
1697 | "metric": "Exhaust Volume",
1698 | "unit": "cuft",
1699 | "time": "11/16/2022 01:33am",
1700 | "threshold": 55,
1701 | "value": 78
1702 | }
1703 | ]
1704 | }
1705 | },
1706 | "Savings": "33%",
1707 | "Uptime": "15h",
1708 | "Power": "8300kW"
1709 | },
1710 | {
1711 | "Name": "Bridgeville",
1712 | "Alerts": {
1713 | "high": { "count": 0 },
1714 | "med": { "count": 0 },
1715 | "low": { "count": 0 }
1716 | },
1717 | "Savings": "52%",
1718 | "Uptime": "315h",
1719 | "Power": "2700kW"
1720 | },
1721 | {
1722 | "Name": "Biobot",
1723 | "Alerts": {
1724 | "high": { "count": 0 },
1725 | "med": { "count": 0 },
1726 | "low": { "count": 0 }
1727 | },
1728 | "Savings": "76%",
1729 | "Uptime": "423h",
1730 | "Power": "1530kW"
1731 | },
1732 | {
1733 | "Name": "Barley",
1734 | "Alerts": {
1735 | "high": { "count": 3 },
1736 | "med": {
1737 | "count": 3,
1738 | "details": [
1739 | {
1740 | "metric": "Water Temp",
1741 | "unit": "deg F",
1742 | "time": "12/06/2022 10:23am",
1743 | "threshold": 150,
1744 | "value": 156
1745 | },
1746 | {
1747 | "metric": "Air Pressure",
1748 | "unit": "psi",
1749 | "time": "12/11/2022 12:21am",
1750 | "threshold": 12,
1751 | "value": 15
1752 | },
1753 | {
1754 | "metric": "Fan Speed",
1755 | "unit": "rps",
1756 | "time": "12/05/2022 11:51am",
1757 | "threshold": 6,
1758 | "value": 4
1759 | }
1760 | ]
1761 | },
1762 | "low": { "count": 0 }
1763 | },
1764 | "Savings": "89%",
1765 | "Uptime": "104h",
1766 | "Power": "1165kW"
1767 | },
1768 | {
1769 | "Name": "Gaulberg",
1770 | "Alerts": {
1771 | "high": 0,
1772 | "med": {
1773 | "count": 1,
1774 | "details": [
1775 | {
1776 | "metric": "Air Temp",
1777 | "unit": "deg F",
1778 | "time": "10/26/2022 11:23am",
1779 | "threshold": 99,
1780 | "value": 105
1781 | }
1782 | ]
1783 | },
1784 | "low": {
1785 | "count": 1,
1786 | "details": [
1787 | {
1788 | "metric": "Exhaust Volume",
1789 | "unit": "cuft",
1790 | "time": "11/16/2022 01:33am",
1791 | "threshold": 55,
1792 | "value": 78
1793 | }
1794 | ]
1795 | }
1796 | },
1797 | "Savings": "33%",
1798 | "Uptime": "15h",
1799 | "Power": "8300kW"
1800 | },
1801 | {
1802 | "Name": "Bridgeville",
1803 | "Alerts": {
1804 | "high": { "count": 0 },
1805 | "med": { "count": 0 },
1806 | "low": { "count": 0 }
1807 | },
1808 | "Savings": "52%",
1809 | "Uptime": "315h",
1810 | "Power": "2700kW"
1811 | },
1812 | {
1813 | "Name": "Biobot",
1814 | "Alerts": {
1815 | "high": { "count": 0 },
1816 | "med": { "count": 0 },
1817 | "low": { "count": 0 }
1818 | },
1819 | "Savings": "76%",
1820 | "Uptime": "423h",
1821 | "Power": "1530kW"
1822 | },
1823 | {
1824 | "Name": "Barley",
1825 | "Alerts": {
1826 | "high": { "count": 3 },
1827 | "med": {
1828 | "count": 3,
1829 | "details": [
1830 | {
1831 | "metric": "Water Temp",
1832 | "unit": "deg F",
1833 | "time": "12/06/2022 10:23am",
1834 | "threshold": 150,
1835 | "value": 156
1836 | },
1837 | {
1838 | "metric": "Air Pressure",
1839 | "unit": "psi",
1840 | "time": "12/11/2022 12:21am",
1841 | "threshold": 12,
1842 | "value": 15
1843 | },
1844 | {
1845 | "metric": "Fan Speed",
1846 | "unit": "rps",
1847 | "time": "12/05/2022 11:51am",
1848 | "threshold": 6,
1849 | "value": 4
1850 | }
1851 | ]
1852 | },
1853 | "low": { "count": 0 }
1854 | },
1855 | "Savings": "89%",
1856 | "Uptime": "104h",
1857 | "Power": "1165kW"
1858 | },
1859 | {
1860 | "Name": "Gaulberg",
1861 | "Alerts": {
1862 | "high": 0,
1863 | "med": {
1864 | "count": 1,
1865 | "details": [
1866 | {
1867 | "metric": "Air Temp",
1868 | "unit": "deg F",
1869 | "time": "10/26/2022 11:23am",
1870 | "threshold": 99,
1871 | "value": 105
1872 | }
1873 | ]
1874 | },
1875 | "low": {
1876 | "count": 1,
1877 | "details": [
1878 | {
1879 | "metric": "Exhaust Volume",
1880 | "unit": "cuft",
1881 | "time": "11/16/2022 01:33am",
1882 | "threshold": 55,
1883 | "value": 78
1884 | }
1885 | ]
1886 | }
1887 | },
1888 | "Savings": "33%",
1889 | "Uptime": "15h",
1890 | "Power": "8300kW"
1891 | },
1892 | {
1893 | "Name": "Bridgeville",
1894 | "Alerts": {
1895 | "high": { "count": 0 },
1896 | "med": { "count": 0 },
1897 | "low": { "count": 0 }
1898 | },
1899 | "Savings": "52%",
1900 | "Uptime": "315h",
1901 | "Power": "2700kW"
1902 | },
1903 | {
1904 | "Name": "Biobot",
1905 | "Alerts": {
1906 | "high": { "count": 0 },
1907 | "med": { "count": 0 },
1908 | "low": { "count": 0 }
1909 | },
1910 | "Savings": "76%",
1911 | "Uptime": "423h",
1912 | "Power": "1530kW"
1913 | },
1914 | {
1915 | "Name": "Barley",
1916 | "Alerts": {
1917 | "high": { "count": 3 },
1918 | "med": {
1919 | "count": 3,
1920 | "details": [
1921 | {
1922 | "metric": "Water Temp",
1923 | "unit": "deg F",
1924 | "time": "12/06/2022 10:23am",
1925 | "threshold": 150,
1926 | "value": 156
1927 | },
1928 | {
1929 | "metric": "Air Pressure",
1930 | "unit": "psi",
1931 | "time": "12/11/2022 12:21am",
1932 | "threshold": 12,
1933 | "value": 15
1934 | },
1935 | {
1936 | "metric": "Fan Speed",
1937 | "unit": "rps",
1938 | "time": "12/05/2022 11:51am",
1939 | "threshold": 6,
1940 | "value": 4
1941 | }
1942 | ]
1943 | },
1944 | "low": { "count": 0 }
1945 | },
1946 | "Savings": "89%",
1947 | "Uptime": "104h",
1948 | "Power": "1165kW"
1949 | },
1950 | {
1951 | "Name": "Gaulberg",
1952 | "Alerts": {
1953 | "high": 0,
1954 | "med": {
1955 | "count": 1,
1956 | "details": [
1957 | {
1958 | "metric": "Air Temp",
1959 | "unit": "deg F",
1960 | "time": "10/26/2022 11:23am",
1961 | "threshold": 99,
1962 | "value": 105
1963 | }
1964 | ]
1965 | },
1966 | "low": {
1967 | "count": 1,
1968 | "details": [
1969 | {
1970 | "metric": "Exhaust Volume",
1971 | "unit": "cuft",
1972 | "time": "11/16/2022 01:33am",
1973 | "threshold": 55,
1974 | "value": 78
1975 | }
1976 | ]
1977 | }
1978 | },
1979 | "Savings": "33%",
1980 | "Uptime": "15h",
1981 | "Power": "8300kW"
1982 | },
1983 | {
1984 | "Name": "Bridgeville",
1985 | "Alerts": {
1986 | "high": { "count": 0 },
1987 | "med": { "count": 0 },
1988 | "low": { "count": 0 }
1989 | },
1990 | "Savings": "52%",
1991 | "Uptime": "315h",
1992 | "Power": "2700kW"
1993 | },
1994 | {
1995 | "Name": "Biobot",
1996 | "Alerts": {
1997 | "high": { "count": 0 },
1998 | "med": { "count": 0 },
1999 | "low": { "count": 0 }
2000 | },
2001 | "Savings": "76%",
2002 | "Uptime": "423h",
2003 | "Power": "1530kW"
2004 | },
2005 | {
2006 | "Name": "Barley",
2007 | "Alerts": {
2008 | "high": { "count": 3 },
2009 | "med": {
2010 | "count": 3,
2011 | "details": [
2012 | {
2013 | "metric": "Water Temp",
2014 | "unit": "deg F",
2015 | "time": "12/06/2022 10:23am",
2016 | "threshold": 150,
2017 | "value": 156
2018 | },
2019 | {
2020 | "metric": "Air Pressure",
2021 | "unit": "psi",
2022 | "time": "12/11/2022 12:21am",
2023 | "threshold": 12,
2024 | "value": 15
2025 | },
2026 | {
2027 | "metric": "Fan Speed",
2028 | "unit": "rps",
2029 | "time": "12/05/2022 11:51am",
2030 | "threshold": 6,
2031 | "value": 4
2032 | }
2033 | ]
2034 | },
2035 | "low": { "count": 0 }
2036 | },
2037 | "Savings": "89%",
2038 | "Uptime": "104h",
2039 | "Power": "1165kW"
2040 | },
2041 | {
2042 | "Name": "Gaulberg",
2043 | "Alerts": {
2044 | "high": 0,
2045 | "med": {
2046 | "count": 1,
2047 | "details": [
2048 | {
2049 | "metric": "Air Temp",
2050 | "unit": "deg F",
2051 | "time": "10/26/2022 11:23am",
2052 | "threshold": 99,
2053 | "value": 105
2054 | }
2055 | ]
2056 | },
2057 | "low": {
2058 | "count": 1,
2059 | "details": [
2060 | {
2061 | "metric": "Exhaust Volume",
2062 | "unit": "cuft",
2063 | "time": "11/16/2022 01:33am",
2064 | "threshold": 55,
2065 | "value": 78
2066 | }
2067 | ]
2068 | }
2069 | },
2070 | "Savings": "33%",
2071 | "Uptime": "15h",
2072 | "Power": "8300kW"
2073 | },
2074 | {
2075 | "Name": "Bridgeville",
2076 | "Alerts": {
2077 | "high": { "count": 0 },
2078 | "med": { "count": 0 },
2079 | "low": { "count": 0 }
2080 | },
2081 | "Savings": "52%",
2082 | "Uptime": "315h",
2083 | "Power": "2700kW"
2084 | },
2085 | {
2086 | "Name": "Biobot",
2087 | "Alerts": {
2088 | "high": { "count": 0 },
2089 | "med": { "count": 0 },
2090 | "low": { "count": 0 }
2091 | },
2092 | "Savings": "76%",
2093 | "Uptime": "423h",
2094 | "Power": "1530kW"
2095 | },
2096 | {
2097 | "Name": "Barley",
2098 | "Alerts": {
2099 | "high": { "count": 3 },
2100 | "med": {
2101 | "count": 3,
2102 | "details": [
2103 | {
2104 | "metric": "Water Temp",
2105 | "unit": "deg F",
2106 | "time": "12/06/2022 10:23am",
2107 | "threshold": 150,
2108 | "value": 156
2109 | },
2110 | {
2111 | "metric": "Air Pressure",
2112 | "unit": "psi",
2113 | "time": "12/11/2022 12:21am",
2114 | "threshold": 12,
2115 | "value": 15
2116 | },
2117 | {
2118 | "metric": "Fan Speed",
2119 | "unit": "rps",
2120 | "time": "12/05/2022 11:51am",
2121 | "threshold": 6,
2122 | "value": 4
2123 | }
2124 | ]
2125 | },
2126 | "low": { "count": 0 }
2127 | },
2128 | "Savings": "89%",
2129 | "Uptime": "104h",
2130 | "Power": "1165kW"
2131 | },
2132 | {
2133 | "Name": "Gaulberg",
2134 | "Alerts": {
2135 | "high": 0,
2136 | "med": {
2137 | "count": 1,
2138 | "details": [
2139 | {
2140 | "metric": "Air Temp",
2141 | "unit": "deg F",
2142 | "time": "10/26/2022 11:23am",
2143 | "threshold": 99,
2144 | "value": 105
2145 | }
2146 | ]
2147 | },
2148 | "low": {
2149 | "count": 1,
2150 | "details": [
2151 | {
2152 | "metric": "Exhaust Volume",
2153 | "unit": "cuft",
2154 | "time": "11/16/2022 01:33am",
2155 | "threshold": 55,
2156 | "value": 78
2157 | }
2158 | ]
2159 | }
2160 | },
2161 | "Savings": "33%",
2162 | "Uptime": "15h",
2163 | "Power": "8300kW"
2164 | },
2165 | {
2166 | "Name": "Bridgeville",
2167 | "Alerts": {
2168 | "high": { "count": 0 },
2169 | "med": { "count": 0 },
2170 | "low": { "count": 0 }
2171 | },
2172 | "Savings": "52%",
2173 | "Uptime": "315h",
2174 | "Power": "2700kW"
2175 | },
2176 | {
2177 | "Name": "Biobot",
2178 | "Alerts": {
2179 | "high": { "count": 0 },
2180 | "med": { "count": 0 },
2181 | "low": { "count": 0 }
2182 | },
2183 | "Savings": "76%",
2184 | "Uptime": "423h",
2185 | "Power": "1530kW"
2186 | },
2187 | {
2188 | "Name": "Barley",
2189 | "Alerts": {
2190 | "high": { "count": 3 },
2191 | "med": {
2192 | "count": 3,
2193 | "details": [
2194 | {
2195 | "metric": "Water Temp",
2196 | "unit": "deg F",
2197 | "time": "12/06/2022 10:23am",
2198 | "threshold": 150,
2199 | "value": 156
2200 | },
2201 | {
2202 | "metric": "Air Pressure",
2203 | "unit": "psi",
2204 | "time": "12/11/2022 12:21am",
2205 | "threshold": 12,
2206 | "value": 15
2207 | },
2208 | {
2209 | "metric": "Fan Speed",
2210 | "unit": "rps",
2211 | "time": "12/05/2022 11:51am",
2212 | "threshold": 6,
2213 | "value": 4
2214 | }
2215 | ]
2216 | },
2217 | "low": { "count": 0 }
2218 | },
2219 | "Savings": "89%",
2220 | "Uptime": "104h",
2221 | "Power": "1165kW"
2222 | },
2223 | {
2224 | "Name": "Gaulberg",
2225 | "Alerts": {
2226 | "high": 0,
2227 | "med": {
2228 | "count": 1,
2229 | "details": [
2230 | {
2231 | "metric": "Air Temp",
2232 | "unit": "deg F",
2233 | "time": "10/26/2022 11:23am",
2234 | "threshold": 99,
2235 | "value": 105
2236 | }
2237 | ]
2238 | },
2239 | "low": {
2240 | "count": 1,
2241 | "details": [
2242 | {
2243 | "metric": "Exhaust Volume",
2244 | "unit": "cuft",
2245 | "time": "11/16/2022 01:33am",
2246 | "threshold": 55,
2247 | "value": 78
2248 | }
2249 | ]
2250 | }
2251 | },
2252 | "Savings": "33%",
2253 | "Uptime": "15h",
2254 | "Power": "8300kW"
2255 | },
2256 | {
2257 | "Name": "Bridgeville",
2258 | "Alerts": {
2259 | "high": { "count": 0 },
2260 | "med": { "count": 0 },
2261 | "low": { "count": 0 }
2262 | },
2263 | "Savings": "52%",
2264 | "Uptime": "315h",
2265 | "Power": "2700kW"
2266 | },
2267 | {
2268 | "Name": "Biobot",
2269 | "Alerts": {
2270 | "high": { "count": 0 },
2271 | "med": { "count": 0 },
2272 | "low": { "count": 0 }
2273 | },
2274 | "Savings": "76%",
2275 | "Uptime": "423h",
2276 | "Power": "1530kW"
2277 | },
2278 | {
2279 | "Name": "Barley",
2280 | "Alerts": {
2281 | "high": { "count": 3 },
2282 | "med": {
2283 | "count": 3,
2284 | "details": [
2285 | {
2286 | "metric": "Water Temp",
2287 | "unit": "deg F",
2288 | "time": "12/06/2022 10:23am",
2289 | "threshold": 150,
2290 | "value": 156
2291 | },
2292 | {
2293 | "metric": "Air Pressure",
2294 | "unit": "psi",
2295 | "time": "12/11/2022 12:21am",
2296 | "threshold": 12,
2297 | "value": 15
2298 | },
2299 | {
2300 | "metric": "Fan Speed",
2301 | "unit": "rps",
2302 | "time": "12/05/2022 11:51am",
2303 | "threshold": 6,
2304 | "value": 4
2305 | }
2306 | ]
2307 | },
2308 | "low": { "count": 0 }
2309 | },
2310 | "Savings": "89%",
2311 | "Uptime": "104h",
2312 | "Power": "1165kW"
2313 | },
2314 | {
2315 | "Name": "Gaulberg",
2316 | "Alerts": {
2317 | "high": 0,
2318 | "med": {
2319 | "count": 1,
2320 | "details": [
2321 | {
2322 | "metric": "Air Temp",
2323 | "unit": "deg F",
2324 | "time": "10/26/2022 11:23am",
2325 | "threshold": 99,
2326 | "value": 105
2327 | }
2328 | ]
2329 | },
2330 | "low": {
2331 | "count": 1,
2332 | "details": [
2333 | {
2334 | "metric": "Exhaust Volume",
2335 | "unit": "cuft",
2336 | "time": "11/16/2022 01:33am",
2337 | "threshold": 55,
2338 | "value": 78
2339 | }
2340 | ]
2341 | }
2342 | },
2343 | "Savings": "33%",
2344 | "Uptime": "15h",
2345 | "Power": "8300kW"
2346 | },
2347 | {
2348 | "Name": "Bridgeville",
2349 | "Alerts": {
2350 | "high": { "count": 0 },
2351 | "med": { "count": 0 },
2352 | "low": { "count": 0 }
2353 | },
2354 | "Savings": "52%",
2355 | "Uptime": "315h",
2356 | "Power": "2700kW"
2357 | },
2358 | {
2359 | "Name": "Biobot",
2360 | "Alerts": {
2361 | "high": { "count": 0 },
2362 | "med": { "count": 0 },
2363 | "low": { "count": 0 }
2364 | },
2365 | "Savings": "76%",
2366 | "Uptime": "423h",
2367 | "Power": "1530kW"
2368 | },
2369 | {
2370 | "Name": "Barley",
2371 | "Alerts": {
2372 | "high": { "count": 3 },
2373 | "med": {
2374 | "count": 3,
2375 | "details": [
2376 | {
2377 | "metric": "Water Temp",
2378 | "unit": "deg F",
2379 | "time": "12/06/2022 10:23am",
2380 | "threshold": 150,
2381 | "value": 156
2382 | },
2383 | {
2384 | "metric": "Air Pressure",
2385 | "unit": "psi",
2386 | "time": "12/11/2022 12:21am",
2387 | "threshold": 12,
2388 | "value": 15
2389 | },
2390 | {
2391 | "metric": "Fan Speed",
2392 | "unit": "rps",
2393 | "time": "12/05/2022 11:51am",
2394 | "threshold": 6,
2395 | "value": 4
2396 | }
2397 | ]
2398 | },
2399 | "low": { "count": 0 }
2400 | },
2401 | "Savings": "89%",
2402 | "Uptime": "104h",
2403 | "Power": "1165kW"
2404 | },
2405 | {
2406 | "Name": "Gaulberg",
2407 | "Alerts": {
2408 | "high": 0,
2409 | "med": {
2410 | "count": 1,
2411 | "details": [
2412 | {
2413 | "metric": "Air Temp",
2414 | "unit": "deg F",
2415 | "time": "10/26/2022 11:23am",
2416 | "threshold": 99,
2417 | "value": 105
2418 | }
2419 | ]
2420 | },
2421 | "low": {
2422 | "count": 1,
2423 | "details": [
2424 | {
2425 | "metric": "Exhaust Volume",
2426 | "unit": "cuft",
2427 | "time": "11/16/2022 01:33am",
2428 | "threshold": 55,
2429 | "value": 78
2430 | }
2431 | ]
2432 | }
2433 | },
2434 | "Savings": "33%",
2435 | "Uptime": "15h",
2436 | "Power": "8300kW"
2437 | },
2438 | {
2439 | "Name": "Bridgeville",
2440 | "Alerts": {
2441 | "high": { "count": 0 },
2442 | "med": { "count": 0 },
2443 | "low": { "count": 0 }
2444 | },
2445 | "Savings": "52%",
2446 | "Uptime": "315h",
2447 | "Power": "2700kW"
2448 | },
2449 | {
2450 | "Name": "Biobot",
2451 | "Alerts": {
2452 | "high": { "count": 0 },
2453 | "med": { "count": 0 },
2454 | "low": { "count": 0 }
2455 | },
2456 | "Savings": "76%",
2457 | "Uptime": "423h",
2458 | "Power": "1530kW"
2459 | },
2460 | {
2461 | "Name": "Barley",
2462 | "Alerts": {
2463 | "high": { "count": 3 },
2464 | "med": {
2465 | "count": 3,
2466 | "details": [
2467 | {
2468 | "metric": "Water Temp",
2469 | "unit": "deg F",
2470 | "time": "12/06/2022 10:23am",
2471 | "threshold": 150,
2472 | "value": 156
2473 | },
2474 | {
2475 | "metric": "Air Pressure",
2476 | "unit": "psi",
2477 | "time": "12/11/2022 12:21am",
2478 | "threshold": 12,
2479 | "value": 15
2480 | },
2481 | {
2482 | "metric": "Fan Speed",
2483 | "unit": "rps",
2484 | "time": "12/05/2022 11:51am",
2485 | "threshold": 6,
2486 | "value": 4
2487 | }
2488 | ]
2489 | },
2490 | "low": { "count": 0 }
2491 | },
2492 | "Savings": "89%",
2493 | "Uptime": "104h",
2494 | "Power": "1165kW"
2495 | },
2496 | {
2497 | "Name": "Gaulberg",
2498 | "Alerts": {
2499 | "high": 0,
2500 | "med": {
2501 | "count": 1,
2502 | "details": [
2503 | {
2504 | "metric": "Air Temp",
2505 | "unit": "deg F",
2506 | "time": "10/26/2022 11:23am",
2507 | "threshold": 99,
2508 | "value": 105
2509 | }
2510 | ]
2511 | },
2512 | "low": {
2513 | "count": 1,
2514 | "details": [
2515 | {
2516 | "metric": "Exhaust Volume",
2517 | "unit": "cuft",
2518 | "time": "11/16/2022 01:33am",
2519 | "threshold": 55,
2520 | "value": 78
2521 | }
2522 | ]
2523 | }
2524 | },
2525 | "Savings": "33%",
2526 | "Uptime": "15h",
2527 | "Power": "8300kW"
2528 | },
2529 | {
2530 | "Name": "Bridgeville",
2531 | "Alerts": {
2532 | "high": { "count": 0 },
2533 | "med": { "count": 0 },
2534 | "low": { "count": 0 }
2535 | },
2536 | "Savings": "52%",
2537 | "Uptime": "315h",
2538 | "Power": "2700kW"
2539 | },
2540 | {
2541 | "Name": "Biobot",
2542 | "Alerts": {
2543 | "high": { "count": 0 },
2544 | "med": { "count": 0 },
2545 | "low": { "count": 0 }
2546 | },
2547 | "Savings": "76%",
2548 | "Uptime": "423h",
2549 | "Power": "1530kW"
2550 | },
2551 | {
2552 | "Name": "Barley",
2553 | "Alerts": {
2554 | "high": { "count": 3 },
2555 | "med": {
2556 | "count": 3,
2557 | "details": [
2558 | {
2559 | "metric": "Water Temp",
2560 | "unit": "deg F",
2561 | "time": "12/06/2022 10:23am",
2562 | "threshold": 150,
2563 | "value": 156
2564 | },
2565 | {
2566 | "metric": "Air Pressure",
2567 | "unit": "psi",
2568 | "time": "12/11/2022 12:21am",
2569 | "threshold": 12,
2570 | "value": 15
2571 | },
2572 | {
2573 | "metric": "Fan Speed",
2574 | "unit": "rps",
2575 | "time": "12/05/2022 11:51am",
2576 | "threshold": 6,
2577 | "value": 4
2578 | }
2579 | ]
2580 | },
2581 | "low": { "count": 0 }
2582 | },
2583 | "Savings": "89%",
2584 | "Uptime": "104h",
2585 | "Power": "1165kW"
2586 | },
2587 | {
2588 | "Name": "Gaulberg",
2589 | "Alerts": {
2590 | "high": 0,
2591 | "med": {
2592 | "count": 1,
2593 | "details": [
2594 | {
2595 | "metric": "Air Temp",
2596 | "unit": "deg F",
2597 | "time": "10/26/2022 11:23am",
2598 | "threshold": 99,
2599 | "value": 105
2600 | }
2601 | ]
2602 | },
2603 | "low": {
2604 | "count": 1,
2605 | "details": [
2606 | {
2607 | "metric": "Exhaust Volume",
2608 | "unit": "cuft",
2609 | "time": "11/16/2022 01:33am",
2610 | "threshold": 55,
2611 | "value": 78
2612 | }
2613 | ]
2614 | }
2615 | },
2616 | "Savings": "33%",
2617 | "Uptime": "15h",
2618 | "Power": "8300kW"
2619 | },
2620 | {
2621 | "Name": "Bridgeville",
2622 | "Alerts": {
2623 | "high": { "count": 0 },
2624 | "med": { "count": 0 },
2625 | "low": { "count": 0 }
2626 | },
2627 | "Savings": "52%",
2628 | "Uptime": "315h",
2629 | "Power": "2700kW"
2630 | },
2631 | {
2632 | "Name": "Biobot",
2633 | "Alerts": {
2634 | "high": { "count": 0 },
2635 | "med": { "count": 0 },
2636 | "low": { "count": 0 }
2637 | },
2638 | "Savings": "76%",
2639 | "Uptime": "423h",
2640 | "Power": "1530kW"
2641 | },
2642 | {
2643 | "Name": "Barley",
2644 | "Alerts": {
2645 | "high": { "count": 3 },
2646 | "med": {
2647 | "count": 3,
2648 | "details": [
2649 | {
2650 | "metric": "Water Temp",
2651 | "unit": "deg F",
2652 | "time": "12/06/2022 10:23am",
2653 | "threshold": 150,
2654 | "value": 156
2655 | },
2656 | {
2657 | "metric": "Air Pressure",
2658 | "unit": "psi",
2659 | "time": "12/11/2022 12:21am",
2660 | "threshold": 12,
2661 | "value": 15
2662 | },
2663 | {
2664 | "metric": "Fan Speed",
2665 | "unit": "rps",
2666 | "time": "12/05/2022 11:51am",
2667 | "threshold": 6,
2668 | "value": 4
2669 | }
2670 | ]
2671 | },
2672 | "low": { "count": 0 }
2673 | },
2674 | "Savings": "89%",
2675 | "Uptime": "104h",
2676 | "Power": "1165kW"
2677 | },
2678 | {
2679 | "Name": "Gaulberg",
2680 | "Alerts": {
2681 | "high": 0,
2682 | "med": {
2683 | "count": 1,
2684 | "details": [
2685 | {
2686 | "metric": "Air Temp",
2687 | "unit": "deg F",
2688 | "time": "10/26/2022 11:23am",
2689 | "threshold": 99,
2690 | "value": 105
2691 | }
2692 | ]
2693 | },
2694 | "low": {
2695 | "count": 1,
2696 | "details": [
2697 | {
2698 | "metric": "Exhaust Volume",
2699 | "unit": "cuft",
2700 | "time": "11/16/2022 01:33am",
2701 | "threshold": 55,
2702 | "value": 78
2703 | }
2704 | ]
2705 | }
2706 | },
2707 | "Savings": "33%",
2708 | "Uptime": "15h",
2709 | "Power": "8300kW"
2710 | },
2711 | {
2712 | "Name": "Bridgeville",
2713 | "Alerts": {
2714 | "high": { "count": 0 },
2715 | "med": { "count": 0 },
2716 | "low": { "count": 0 }
2717 | },
2718 | "Savings": "52%",
2719 | "Uptime": "315h",
2720 | "Power": "2700kW"
2721 | },
2722 | {
2723 | "Name": "Biobot",
2724 | "Alerts": {
2725 | "high": { "count": 0 },
2726 | "med": { "count": 0 },
2727 | "low": { "count": 0 }
2728 | },
2729 | "Savings": "76%",
2730 | "Uptime": "423h",
2731 | "Power": "1530kW"
2732 | },
2733 | {
2734 | "Name": "Barley",
2735 | "Alerts": {
2736 | "high": { "count": 3 },
2737 | "med": {
2738 | "count": 3,
2739 | "details": [
2740 | {
2741 | "metric": "Water Temp",
2742 | "unit": "deg F",
2743 | "time": "12/06/2022 10:23am",
2744 | "threshold": 150,
2745 | "value": 156
2746 | },
2747 | {
2748 | "metric": "Air Pressure",
2749 | "unit": "psi",
2750 | "time": "12/11/2022 12:21am",
2751 | "threshold": 12,
2752 | "value": 15
2753 | },
2754 | {
2755 | "metric": "Fan Speed",
2756 | "unit": "rps",
2757 | "time": "12/05/2022 11:51am",
2758 | "threshold": 6,
2759 | "value": 4
2760 | }
2761 | ]
2762 | },
2763 | "low": { "count": 0 }
2764 | },
2765 | "Savings": "89%",
2766 | "Uptime": "104h",
2767 | "Power": "1165kW"
2768 | },
2769 | {
2770 | "Name": "Gaulberg",
2771 | "Alerts": {
2772 | "high": 0,
2773 | "med": {
2774 | "count": 1,
2775 | "details": [
2776 | {
2777 | "metric": "Air Temp",
2778 | "unit": "deg F",
2779 | "time": "10/26/2022 11:23am",
2780 | "threshold": 99,
2781 | "value": 105
2782 | }
2783 | ]
2784 | },
2785 | "low": {
2786 | "count": 1,
2787 | "details": [
2788 | {
2789 | "metric": "Exhaust Volume",
2790 | "unit": "cuft",
2791 | "time": "11/16/2022 01:33am",
2792 | "threshold": 55,
2793 | "value": 78
2794 | }
2795 | ]
2796 | }
2797 | },
2798 | "Savings": "33%",
2799 | "Uptime": "15h",
2800 | "Power": "8300kW"
2801 | },
2802 | {
2803 | "Name": "Bridgeville",
2804 | "Alerts": {
2805 | "high": { "count": 0 },
2806 | "med": { "count": 0 },
2807 | "low": { "count": 0 }
2808 | },
2809 | "Savings": "52%",
2810 | "Uptime": "315h",
2811 | "Power": "2700kW"
2812 | },
2813 | {
2814 | "Name": "Biobot",
2815 | "Alerts": {
2816 | "high": { "count": 0 },
2817 | "med": { "count": 0 },
2818 | "low": { "count": 0 }
2819 | },
2820 | "Savings": "76%",
2821 | "Uptime": "423h",
2822 | "Power": "1530kW"
2823 | },
2824 | {
2825 | "Name": "Barley",
2826 | "Alerts": {
2827 | "high": { "count": 3 },
2828 | "med": {
2829 | "count": 3,
2830 | "details": [
2831 | {
2832 | "metric": "Water Temp",
2833 | "unit": "deg F",
2834 | "time": "12/06/2022 10:23am",
2835 | "threshold": 150,
2836 | "value": 156
2837 | },
2838 | {
2839 | "metric": "Air Pressure",
2840 | "unit": "psi",
2841 | "time": "12/11/2022 12:21am",
2842 | "threshold": 12,
2843 | "value": 15
2844 | },
2845 | {
2846 | "metric": "Fan Speed",
2847 | "unit": "rps",
2848 | "time": "12/05/2022 11:51am",
2849 | "threshold": 6,
2850 | "value": 4
2851 | }
2852 | ]
2853 | },
2854 | "low": { "count": 0 }
2855 | },
2856 | "Savings": "89%",
2857 | "Uptime": "104h",
2858 | "Power": "1165kW"
2859 | },
2860 | {
2861 | "Name": "Gaulberg",
2862 | "Alerts": {
2863 | "high": 0,
2864 | "med": {
2865 | "count": 1,
2866 | "details": [
2867 | {
2868 | "metric": "Air Temp",
2869 | "unit": "deg F",
2870 | "time": "10/26/2022 11:23am",
2871 | "threshold": 99,
2872 | "value": 105
2873 | }
2874 | ]
2875 | },
2876 | "low": {
2877 | "count": 1,
2878 | "details": [
2879 | {
2880 | "metric": "Exhaust Volume",
2881 | "unit": "cuft",
2882 | "time": "11/16/2022 01:33am",
2883 | "threshold": 55,
2884 | "value": 78
2885 | }
2886 | ]
2887 | }
2888 | },
2889 | "Savings": "33%",
2890 | "Uptime": "15h",
2891 | "Power": "8300kW"
2892 | },
2893 | {
2894 | "Name": "Bridgeville",
2895 | "Alerts": {
2896 | "high": { "count": 0 },
2897 | "med": { "count": 0 },
2898 | "low": { "count": 0 }
2899 | },
2900 | "Savings": "52%",
2901 | "Uptime": "315h",
2902 | "Power": "2700kW"
2903 | },
2904 | {
2905 | "Name": "Biobot",
2906 | "Alerts": {
2907 | "high": { "count": 0 },
2908 | "med": { "count": 0 },
2909 | "low": { "count": 0 }
2910 | },
2911 | "Savings": "76%",
2912 | "Uptime": "423h",
2913 | "Power": "1530kW"
2914 | },
2915 | {
2916 | "Name": "Barley",
2917 | "Alerts": {
2918 | "high": { "count": 3 },
2919 | "med": {
2920 | "count": 3,
2921 | "details": [
2922 | {
2923 | "metric": "Water Temp",
2924 | "unit": "deg F",
2925 | "time": "12/06/2022 10:23am",
2926 | "threshold": 150,
2927 | "value": 156
2928 | },
2929 | {
2930 | "metric": "Air Pressure",
2931 | "unit": "psi",
2932 | "time": "12/11/2022 12:21am",
2933 | "threshold": 12,
2934 | "value": 15
2935 | },
2936 | {
2937 | "metric": "Fan Speed",
2938 | "unit": "rps",
2939 | "time": "12/05/2022 11:51am",
2940 | "threshold": 6,
2941 | "value": 4
2942 | }
2943 | ]
2944 | },
2945 | "low": { "count": 0 }
2946 | },
2947 | "Savings": "89%",
2948 | "Uptime": "104h",
2949 | "Power": "1165kW"
2950 | },
2951 | {
2952 | "Name": "Gaulberg",
2953 | "Alerts": {
2954 | "high": 0,
2955 | "med": {
2956 | "count": 1,
2957 | "details": [
2958 | {
2959 | "metric": "Air Temp",
2960 | "unit": "deg F",
2961 | "time": "10/26/2022 11:23am",
2962 | "threshold": 99,
2963 | "value": 105
2964 | }
2965 | ]
2966 | },
2967 | "low": {
2968 | "count": 1,
2969 | "details": [
2970 | {
2971 | "metric": "Exhaust Volume",
2972 | "unit": "cuft",
2973 | "time": "11/16/2022 01:33am",
2974 | "threshold": 55,
2975 | "value": 78
2976 | }
2977 | ]
2978 | }
2979 | },
2980 | "Savings": "33%",
2981 | "Uptime": "15h",
2982 | "Power": "8300kW"
2983 | },
2984 | {
2985 | "Name": "Bridgeville",
2986 | "Alerts": {
2987 | "high": { "count": 0 },
2988 | "med": { "count": 0 },
2989 | "low": { "count": 0 }
2990 | },
2991 | "Savings": "52%",
2992 | "Uptime": "315h",
2993 | "Power": "2700kW"
2994 | },
2995 | {
2996 | "Name": "Biobot",
2997 | "Alerts": {
2998 | "high": { "count": 0 },
2999 | "med": { "count": 0 },
3000 | "low": { "count": 0 }
3001 | },
3002 | "Savings": "76%",
3003 | "Uptime": "423h",
3004 | "Power": "1530kW"
3005 | }
3006 | ]
3007 | }
3008 |
--------------------------------------------------------------------------------