diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f3d81dd..27273e1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -69,10 +69,7 @@ jobs: steps: - uses: actions/checkout@v3 - name: build tauri for Linux - run: | - sudo apt-get update - sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf pkg-config - sh <(curl https://tea.xyz) build + uses: ./devops/ubuntu - uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} @@ -126,14 +123,8 @@ jobs: steps: - uses: actions/checkout@v3 - - name: install dependencies (ubuntu only) - if: matrix.platform.name == 'linux+x86-64' - run: | - sudo apt-get update - sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev - - name: build tauri for MacOS - uses: teaxyz/setup@v0 + # uses: teaxyz/setup@v0 if: startsWith(matrix.platform.name, 'darwin') # FROM: https://tauri.app/v1/guides/distribution/sign-macos env: @@ -146,16 +137,14 @@ jobs: # only used for notarization # APPLE_ID: ${{ secrets.APPLE_ID }} # APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} - with: - target: build + run: | + sh <(curl https://tea.xyz) -ES xc build - name: build tauri for Linux # uses: teaxyz/setup@v0 if: startsWith(matrix.platform.name, 'linux') # TODO: https://tauri.app/v1/guides/distribution/sign-linux - run: | - sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf pkg-config - sh <(curl https://tea.xyz) build + uses: ./devops/ubuntu - name: build platform output id: build_platform diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8cab9df..1b9e312 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -42,7 +42,7 @@ jobs: run: | sudo apt-get update sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf pkg-config - sh <(curl https://tea.xyz) build + sh <(curl https://tea.xyz) xc build build_tauri: needs: changes @@ -64,7 +64,7 @@ jobs: - uses: actions/checkout@v3 - name: build tauri for MacOS - uses: teaxyz/setup@v0 + # uses: teaxyz/setup@v0 if: startsWith(matrix.platform.name, 'darwin') # FROM: https://tauri.app/v1/guides/distribution/sign-macos env: @@ -77,17 +77,14 @@ jobs: # this only helps in notarization # APPLE_ID: ${{ secrets.APPLE_ID }} # APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} - with: - target: build + run: | + sh <(curl https://tea.xyz) -ES xc build - name: build tauri for Linux # uses: teaxyz/setup@v0 if: startsWith(matrix.platform.name, 'linux') # TODO: https://tauri.app/v1/guides/distribution/sign-linux - run: | - sudo apt-get update - sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf pkg-config - sh <(curl https://tea.xyz) build + uses: ./devops/ubuntu - name: Get current unix ts - seconds id: date diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ac0a681..a20cb55 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -34,7 +34,6 @@ jobs: echo "extension=$EXTENSION" >> $GITHUB_OUTPUT - name: build tauri for MacOS - uses: teaxyz/setup@v0 if: startsWith(matrix.platform.name, 'darwin') # FROM: https://tauri.app/v1/guides/distribution/sign-macos env: @@ -47,17 +46,14 @@ jobs: # this only helps in notarization # APPLE_ID: ${{ secrets.APPLE_ID }} # APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} - with: - target: build + run: | + sh <(curl https://tea.xyz) -ES xc build - name: build tauri for Linux # uses: teaxyz/setup@v0 if: startsWith(matrix.platform.name, 'linux') # TODO: https://tauri.app/v1/guides/distribution/sign-linux - run: | - sudo apt-get update - sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf pkg-config - sh <(curl https://tea.xyz) build + uses: ./devops/ubuntu - name: Get current unix ts - seconds diff --git a/.gitignore b/.gitignore index f26a964..21bcdde 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ node_modules yarn-error.log -.DS_Store \ No newline at end of file +.DS_Store +.pnpm-store \ No newline at end of file diff --git a/README.md b/README.md index 58f57aa..486af93 100644 --- a/README.md +++ b/README.md @@ -13,12 +13,23 @@ For better documentation checkout this [notion](https://www.notion.so/teaxyz/tea | nodejs.org | >=16 | | pnpm.io | >=7.18.2 | | rust-lang.org | >=1.62 | +| rust-lang.org/cargo | >=0.66 | +| xcfile.dev | >=0.0.110 | -# Getting Started +## Tasks + +### setup ```sh pnpm install ``` +### build +```sh +pnpm install +pnpm build:gui +``` + +## Development To develop the GUI within Tauri Webview ``` $ pnpm dev:gui @@ -28,11 +39,6 @@ To develop the GUI within your local browser at localhost:8080 ``` $ pnpm web:gui ``` -# Build -```sh -pnpm install -pnpm build:gui -``` # Creating a release Tag any commit in the main branch, then push directly to the main branch. diff --git a/devops/ubuntu/Dockerfile b/devops/ubuntu/Dockerfile new file mode 100644 index 0000000..27822a2 --- /dev/null +++ b/devops/ubuntu/Dockerfile @@ -0,0 +1,17 @@ + +FROM ubuntu:20.04 + +RUN apt-get update +ARG DEBIAN_FRONTEND=noninteractive +RUN apt-get install -y libgtk-3-dev webkit2gtk-4.0 +RUN apt-get install -y --fix-missing libappindicator3-dev librsvg2-dev +RUN apt-get install -y --fix-missing patchelf pkg-config curl libatomic1 gcc-multilib libsoup-gnome2.4 +RUN apt-get install -y libjavascriptcoregtk-4.0-dev wget +RUN curl https://tea.xyz -o ./tea.sh +RUN chmod +x tea.sh +RUN ./tea.sh --yes +# Copies your code file from your action repository to the filesystem path `/` of the container +COPY entrypoint.sh /entrypoint.sh + +# Code file to execute when the docker container starts up (`entrypoint.sh`) +ENTRYPOINT ["/entrypoint.sh"] \ No newline at end of file diff --git a/devops/ubuntu/action.yml b/devops/ubuntu/action.yml new file mode 100644 index 0000000..e067cd1 --- /dev/null +++ b/devops/ubuntu/action.yml @@ -0,0 +1,8 @@ +name: 'Tea Ubuntu' +description: 'build gui using custom ubuntu' + +runs: + using: 'docker' + image: 'Dockerfile' + args: + - build \ No newline at end of file diff --git a/devops/ubuntu/entrypoint.sh b/devops/ubuntu/entrypoint.sh new file mode 100755 index 0000000..773f7c2 --- /dev/null +++ b/devops/ubuntu/entrypoint.sh @@ -0,0 +1,3 @@ +#!/bin/sh -l +tea -SE . +tea -ES xc build \ No newline at end of file diff --git a/modules/gui/setupTest.js b/modules/gui/setupTest.js index e7103f5..b210af5 100644 --- a/modules/gui/setupTest.js +++ b/modules/gui/setupTest.js @@ -1,4 +1,4 @@ import matchers from '@testing-library/jest-dom/matchers'; -import { expect, vi } from 'vitest'; +import { expect } from 'vitest'; expect.extend(matchers); diff --git a/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte b/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte index 1d64133..29272fe 100644 --- a/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte +++ b/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte @@ -6,12 +6,15 @@ import Preloader from '@tea/ui/Preloader/Preloader.svelte'; import { postsStore } from '$libs/stores'; + export let title = 'Workshops'; + export let ctaLabel = 'View all'; + let courses: AirtablePost[] = []; postsStore.subscribeByTag('course', (posts) => (courses = posts)); - + {#if courses.length} {:else} diff --git a/modules/gui/src/components/FooterLinks/FooterLinks.svelte b/modules/gui/src/components/FooterLinks/FooterLinks.svelte index 50e294c..18aba0a 100644 --- a/modules/gui/src/components/FooterLinks/FooterLinks.svelte +++ b/modules/gui/src/components/FooterLinks/FooterLinks.svelte @@ -12,7 +12,7 @@ here.

- grid + grid
diff --git a/modules/gui/src/components/TopPackages/TopPackages.svelte b/modules/gui/src/components/Packages/Packages.svelte similarity index 93% rename from modules/gui/src/components/TopPackages/TopPackages.svelte rename to modules/gui/src/components/Packages/Packages.svelte index 9917058..69d7cbe 100644 --- a/modules/gui/src/components/TopPackages/TopPackages.svelte +++ b/modules/gui/src/components/Packages/Packages.svelte @@ -5,9 +5,13 @@ import Preloader from '@tea/ui/Preloader/Preloader.svelte'; import PackageCard from '@tea/ui/PackageCard/PackageCard.svelte'; import { onMount } from 'svelte'; + + // TODO: replace with getting foundation essentials import { getTopPackages } from '$libs/api/mock'; import { installPackage } from '@api'; + export let title = 'Packages'; + let packages: GUIPackage[] = []; const getCTALabel = (state: PackageStates): string => { @@ -27,7 +31,7 @@
- TOP PACKAGES + {title} View all packages
    diff --git a/modules/gui/src/components/PageHeader/PageHeader.svelte b/modules/gui/src/components/PageHeader/PageHeader.svelte index 2146296..d58eabf 100644 --- a/modules/gui/src/components/PageHeader/PageHeader.svelte +++ b/modules/gui/src/components/PageHeader/PageHeader.svelte @@ -1,3 +1,12 @@ -
    - -
    + + +
    + {#if coverUrl} + cover + {/if} +
    + +
    +
    diff --git a/modules/gui/src/routes/+page.svelte b/modules/gui/src/routes/+page.svelte index 75b6b42..067e990 100644 --- a/modules/gui/src/routes/+page.svelte +++ b/modules/gui/src/routes/+page.svelte @@ -2,27 +2,49 @@
    - Discover -
    - + Discover +
    +
    -
    - + ASSET TYPE +
    +
    + + +
    +
    + + +
    -
    - -
    -
    - + TUTORIALS +
    +
    + OPEN-SOURCE NEWS
    diff --git a/modules/gui/static/images/headers/header_bg_1.png b/modules/gui/static/images/headers/header_bg_1.png new file mode 100644 index 0000000..3411052 Binary files /dev/null and b/modules/gui/static/images/headers/header_bg_1.png differ diff --git a/modules/ui/src/HeaderCard/HeaderCard.svelte b/modules/ui/src/HeaderCard/HeaderCard.svelte new file mode 100644 index 0000000..0380ee9 --- /dev/null +++ b/modules/ui/src/HeaderCard/HeaderCard.svelte @@ -0,0 +1,25 @@ + + +
    +
    +

    {title}

    + {ctaLabel} +
    +
    + {title} +
    +
    +

    {articleTitle}

    +

    {description}

    +
    +
    diff --git a/modules/ui/src/ListAction/ListAction.svelte b/modules/ui/src/ListAction/ListAction.svelte new file mode 100644 index 0000000..7313f2d --- /dev/null +++ b/modules/ui/src/ListAction/ListAction.svelte @@ -0,0 +1,72 @@ + + +
    +
    {title}
    +
      +
    • +
      +
      +
      Homebrew
      +
      ver 1.21
      +
      +
      + +
      +
    • +
    • +
      +
      +
      Homebrew
      +
      ver 1.21
      +
      +
      + +
      +
    • +
    • +
      +
      +
      Homebrew
      +
      ver 1.21
      +
      +
      + +
      +
    • +
    • +
      +
      +
      Homebrew
      +
      ver 1.21
      +
      +
      + +
      +
    • +
    • +
      +
      +
      Homebrew
      +
      ver 1.21
      +
      +
      + +
      +
    • +
    +
    + + + +