diff --git a/packages/akeru-server/src/index.ts b/packages/akeru-server/src/index.ts index 00121b9..c521169 100644 --- a/packages/akeru-server/src/index.ts +++ b/packages/akeru-server/src/index.ts @@ -8,7 +8,7 @@ export const name = "Akeru"; export const healthCheck = async () => { return { - name: "Your API Name", + name: "Akeru Server Up and Running!", description: "This is an open-source alternative to OpenAI's Assistant API. It provides a powerful, flexible AI model for generating human-like text based on the input provided. It's designed to assist developers in creating applications that require natural language processing and generation, from chatbots to content creators and more.", message: "API is up and running", diff --git a/packages/app-akeru/package.json b/packages/app-akeru/package.json index d723014..9b9b2e9 100644 --- a/packages/app-akeru/package.json +++ b/packages/app-akeru/package.json @@ -9,18 +9,18 @@ "lint": "next lint" }, "dependencies": { + "next": "14.2.3", "react": "^18", - "react-dom": "^18", - "next": "14.2.3" + "react-dom": "^18" }, "devDependencies": { - "typescript": "^5", "@types/node": "^20", - "@types/react": "^18", + "@types/react": "^18.3.2", "@types/react-dom": "^18", + "eslint": "^8", + "eslint-config-next": "14.2.3", "postcss": "^8", "tailwindcss": "^3.4.1", - "eslint": "^8", - "eslint-config-next": "14.2.3" + "typescript": "^5.4.5" } } diff --git a/packages/app-akeru/pnpm-lock.yaml b/packages/app-akeru/pnpm-lock.yaml index e417d61..a7c3949 100644 --- a/packages/app-akeru/pnpm-lock.yaml +++ b/packages/app-akeru/pnpm-lock.yaml @@ -16,8 +16,8 @@ devDependencies: specifier: ^20 version: 20.0.0 '@types/react': - specifier: ^18 - version: 18.0.0 + specifier: ^18.3.2 + version: 18.3.2 '@types/react-dom': specifier: ^18 version: 18.0.0 @@ -26,7 +26,7 @@ devDependencies: version: 8.0.0 eslint-config-next: specifier: 14.2.3 - version: 14.2.3(eslint@8.0.0)(typescript@5.0.2) + version: 14.2.3(eslint@8.0.0)(typescript@5.4.5) postcss: specifier: ^8 version: 8.0.0 @@ -34,8 +34,8 @@ devDependencies: specifier: ^3.4.1 version: 3.4.1 typescript: - specifier: ^5 - version: 5.0.2 + specifier: ^5.4.5 + version: 5.4.5 packages: @@ -274,22 +274,17 @@ packages: /@types/react-dom@18.0.0: resolution: {integrity: sha512-49897Y0UiCGmxZqpC8Blrf6meL8QUla6eb+BBhn69dTXlmuOlzkfr7HHY/O8J25e1lTUMs+YYxSlVDAaGHCOLg==} dependencies: - '@types/react': 18.0.0 + '@types/react': 18.3.2 dev: true - /@types/react@18.0.0: - resolution: {integrity: sha512-7+K7zEQYu7NzOwQGLR91KwWXXDzmTFODRVizJyIALf6RfLv2GDpqpknX64pvRVILXCpXi7O/pua8NGk44dLvJw==} + /@types/react@18.3.2: + resolution: {integrity: sha512-Btgg89dAnqD4vV7R3hlwOxgqobUQKgx3MmrQRi0yYbs/P0ym8XozIAlkqVilPqHQwXs4e9Tf63rrCgl58BcO4w==} dependencies: '@types/prop-types': 15.7.12 - '@types/scheduler': 0.23.0 csstype: 3.1.3 dev: true - /@types/scheduler@0.23.0: - resolution: {integrity: sha512-YIoDCTH3Af6XM5VuwGG/QL/CJqga1Zm3NkU3HZ4ZHK2fRMPYP1VczsTUqtsf43PH/iJNVlPHAo2oWX7BSdB2Hw==} - dev: true - - /@typescript-eslint/parser@7.2.0(eslint@8.0.0)(typescript@5.0.2): + /@typescript-eslint/parser@7.2.0(eslint@8.0.0)(typescript@5.4.5): resolution: {integrity: sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -301,11 +296,11 @@ packages: dependencies: '@typescript-eslint/scope-manager': 7.2.0 '@typescript-eslint/types': 7.2.0 - '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.0.2) + '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.4.5) '@typescript-eslint/visitor-keys': 7.2.0 debug: 4.3.4 eslint: 8.0.0 - typescript: 5.0.2 + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true @@ -323,7 +318,7 @@ packages: engines: {node: ^16.0.0 || >=18.0.0} dev: true - /@typescript-eslint/typescript-estree@7.2.0(typescript@5.0.2): + /@typescript-eslint/typescript-estree@7.2.0(typescript@5.4.5): resolution: {integrity: sha512-cyxS5WQQCoBwSakpMrvMXuMDEbhOo9bNHHrNcEWis6XHx6KF518tkF1wBvKIn/tpq5ZpUYK7Bdklu8qY0MsFIA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -339,8 +334,8 @@ packages: is-glob: 4.0.3 minimatch: 9.0.3 semver: 7.6.2 - ts-api-utils: 1.3.0(typescript@5.0.2) - typescript: 5.0.2 + ts-api-utils: 1.3.0(typescript@5.4.5) + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true @@ -942,7 +937,7 @@ packages: engines: {node: '>=10'} dev: true - /eslint-config-next@14.2.3(eslint@8.0.0)(typescript@5.0.2): + /eslint-config-next@14.2.3(eslint@8.0.0)(typescript@5.4.5): resolution: {integrity: sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==} peerDependencies: eslint: ^7.23.0 || ^8.0.0 @@ -953,7 +948,7 @@ packages: dependencies: '@next/eslint-plugin-next': 14.2.3 '@rushstack/eslint-patch': 1.10.3 - '@typescript-eslint/parser': 7.2.0(eslint@8.0.0)(typescript@5.0.2) + '@typescript-eslint/parser': 7.2.0(eslint@8.0.0)(typescript@5.4.5) eslint: 8.0.0 eslint-import-resolver-node: 0.3.9 eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.0.0) @@ -961,7 +956,7 @@ packages: eslint-plugin-jsx-a11y: 6.8.0(eslint@8.0.0) eslint-plugin-react: 7.34.1(eslint@8.0.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.0.0) - typescript: 5.0.2 + typescript: 5.4.5 transitivePeerDependencies: - eslint-import-resolver-webpack - supports-color @@ -1021,7 +1016,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 7.2.0(eslint@8.0.0)(typescript@5.0.2) + '@typescript-eslint/parser': 7.2.0(eslint@8.0.0)(typescript@5.4.5) debug: 3.2.7 eslint: 8.0.0 eslint-import-resolver-node: 0.3.9 @@ -1040,7 +1035,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 7.2.0(eslint@8.0.0)(typescript@5.0.2) + '@typescript-eslint/parser': 7.2.0(eslint@8.0.0)(typescript@5.4.5) array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 array.prototype.flat: 1.3.2 @@ -2622,13 +2617,13 @@ packages: is-number: 7.0.0 dev: true - /ts-api-utils@1.3.0(typescript@5.0.2): + /ts-api-utils@1.3.0(typescript@5.4.5): resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.0.2 + typescript: 5.4.5 dev: true /ts-interface-checker@0.1.13: @@ -2704,9 +2699,9 @@ packages: possible-typed-array-names: 1.0.0 dev: true - /typescript@5.0.2: - resolution: {integrity: sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw==} - engines: {node: '>=12.20'} + /typescript@5.4.5: + resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} + engines: {node: '>=14.17'} hasBin: true dev: true diff --git a/packages/app-akeru/src/app/components/health-banner.tsx b/packages/app-akeru/src/app/components/health-banner.tsx new file mode 100644 index 0000000..be0659b --- /dev/null +++ b/packages/app-akeru/src/app/components/health-banner.tsx @@ -0,0 +1,14 @@ +interface HealthData { + name: string, + description: string, + timestamp: number, +} + +export default async function HealthBanner() { + const healthCheck = await fetch('https://akeru-server.onrender.com'); + const healthData: HealthData = await healthCheck.json(); + + return ( + {healthData.name} + ) +} diff --git a/packages/app-akeru/src/app/globals.css b/packages/app-akeru/src/app/globals.css index 875c01e..39a9271 100644 --- a/packages/app-akeru/src/app/globals.css +++ b/packages/app-akeru/src/app/globals.css @@ -2,30 +2,6 @@ @tailwind components; @tailwind utilities; -:root { - --foreground-rgb: 0, 0, 0; - --background-start-rgb: 214, 219, 220; - --background-end-rgb: 255, 255, 255; -} - -@media (prefers-color-scheme: dark) { - :root { - --foreground-rgb: 255, 255, 255; - --background-start-rgb: 0, 0, 0; - --background-end-rgb: 0, 0, 0; - } -} - -body { - color: rgb(var(--foreground-rgb)); - background: linear-gradient( - to bottom, - transparent, - rgb(var(--background-end-rgb)) - ) - rgb(var(--background-start-rgb)); -} - @layer utilities { .text-balance { text-wrap: balance; diff --git a/packages/app-akeru/src/app/page.tsx b/packages/app-akeru/src/app/page.tsx index 2acfd44..eb6de4e 100644 --- a/packages/app-akeru/src/app/page.tsx +++ b/packages/app-akeru/src/app/page.tsx @@ -1,113 +1,14 @@ -import Image from "next/image"; +import { Suspense } from "react"; +import HealthBanner from "./components/health-banner"; -export default function Home() { +export default async function Home() { + const healthData = await fetch('https://akeru-server.onrender.com'); return ( -
-
-

- Get started by editing  - src/app/page.tsx -

-
- - By{" "} - Vercel Logo - -
-
- -
- Next.js Logo -
- -
- -

- Docs{" "} - - -> - -

-

- Find in-depth information about Next.js features and API. -

-
- - -

- Learn{" "} - - -> - -

-

- Learn about Next.js in an interactive course with quizzes! -

-
- - -

- Templates{" "} - - -> - -

-

- Explore starter templates for Next.js. -

-
- - -

- Deploy{" "} - - -> - -

-

- Instantly deploy your Next.js site to a shareable URL with Vercel. -

-
-
+
+ Welcome to Akeru! + Performing Health Check!}> + +
); }