From 3bbc5d09270e26028ed89e2e4b1b416b240f4fd1 Mon Sep 17 00:00:00 2001 From: Rotimi Best Date: Sun, 28 Sep 2025 20:57:45 +0100 Subject: [PATCH] chore: vercel builds failing for dashboard and docs (#576) * chore: improvements * update README --- README.md | 41 +-- apps/api/certificate.html | 431 ------------------------------ apps/api/course.html | 182 ------------- apps/api/{ => static}/lesson.html | 0 apps/classroomio-com/package.json | 2 +- apps/course-app/package.json | 92 +++---- apps/dashboard/package.json | 4 +- apps/docs/package.json | 4 +- turbo.json | 7 +- 9 files changed, 76 insertions(+), 687 deletions(-) delete mode 100644 apps/api/certificate.html delete mode 100644 apps/api/course.html rename apps/api/{ => static}/lesson.html (100%) diff --git a/README.md b/README.md index 7d4dcec1..1c19a3ad 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ - ClassroomIO is a no-code tool that allows you build and scale your online bootcamp with ease. + ClassroomIO is a no-code tool that allows you build and scale your online bootcamp with ease.

ClassroomIO.com

The Open Source Learning Management System for Companies @@ -8,11 +8,11 @@

-[![Codacy Badge](https://api.codacy.com/project/badge/Grade/629e2bb8994345729513c4d69ccbe3d5)](https://app.codacy.com/gh/rotimi-best/classroomio?utm_source=github.com&utm_medium=referral&utm_content=rotimi-best/classroomio&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/629e2bb8994345729513c4d69ccbe3d5)](https://app.codacy.com/gh/classroomio/classroomio?utm_source=github.com&utm_medium=referral&utm_content=classroomio/classroomio&utm_campaign=Badge_Grade) ## ✨ About ClassroomIO.com -ClassroomIO Courses page +ClassroomIO Courses page Streamline training for everyone with ClassroomIO.com. Our all-in-one platform empowers bootcamps, educators, and businesses to manage training programs easily. With our platform, anyone can run multiple classes and cohorts all from one UI. The application is mobile-first, which means that students can access your lesson materials from any device. @@ -84,14 +84,14 @@ This repo is a mono repo that consists of 3 projects: 2. This will open a fully configured workspace in your browser with all the necessary dependencies already installed. -[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/rotimi-best/classroomio) +[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/classroomio/classroomio) ### Local Setup 1. Fork the repo, then clone it using the following command (remember to replace the url with the url from your forked repo) ```bash - git clone https://github.com/rotimi-best/classroomio.git + git clone https://github.com/classroomio/classroomio.git ``` 2. Go to project folder @@ -118,25 +118,26 @@ This repo is a mono repo that consists of 3 projects: 4. Set up your `.env` file - - Go to `apps/classroomio-com`, `apps/dashboard` and `apps/api`. + - Go to `apps/dashboard` and `apps/api`. - Duplicate the `.env.example` file and rename it to `.env` - Populate your .env files with the neccessary variables To get the environmental variables for supabase continue to step(5) -5. Install all dependencies +1. Install all dependencies ```bash pnpm i ``` -6. Setup Supabase. +2. Setup Supabase. - Install and Start [docker](https://docs.docker.com/engine/install/) + - Install [Supabase CLI](https://supabase.com/docs/guides/local-development/cli/getting-started) on your computer - Go to the project directory in your terminal and start Supabase ```bash - pnpm supabase:start + supabase start ``` - You should get a result like this @@ -154,7 +155,7 @@ To get the environmental variables for supabase continue to step(5) service_role key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImV4cCI6MTk4MzgxMjk5Nn0.EGIM96RAZx35lJzdJsyH-qQwv8Hdp7fsn3W0YpN81IU ``` - - Add Supabase environment variables into `app/dashboard` folder, which should be taken from the result of `pnpm supabase:start` + - Add Supabase environment variables into `app/dashboard` folder, which should be taken from the result of `supabase start` ```env PUBLIC_SUPABASE_URL= @@ -162,31 +163,31 @@ To get the environmental variables for supabase continue to step(5) PRIVATE_SUPABASE_SERVICE_ROLE= ``` - - To view the Supabase studio, open the Studio URL from the result of `pnpm supabase:start` + - To view the Supabase studio, open the Studio URL from the result of `supabase start` -7. Run all projects (in development mode) +3. Run all projects (in development mode) ```bash pnpm dev ``` -8. All projects should start running +4. All projects should start running - `classroomio-com`: [http://localhost:5174](http://localhost:5174) - `api`: [http://localhost:3002](http://localhost:3002) - `dashboard`: [http://localhost:5173](http://localhost:5173) - `docs`: [http://localhost:3000](http://localhost:3000) -9. Running a specific project +5. Running a specific project - - **classroomio-com**: `pnpm dev --filter=classroomio-com` - - **api**: `pnpm dev --filter=api` - - **dashboard**: `pnpm dev --filter=dashboard` - - **docs**: `pnpm dev --filter=docs` + - **classroomio-com**: `pnpm dev --filter=@cio/classroomio-com` + - **api**: `pnpm dev --filter=@cio/api` + - **dashboard**: `pnpm dev --filter=@cio/dashboard` + - **docs**: `pnpm dev --filter=@cio/docs` -10. Login into `dashboard` +6. Login into `dashboard` - - Visit [http://localhost:5174/login](http://localhost:5173/login) + - Visit [http://localhost:5173/login](http://localhost:5173/login) - Enter email: `admin@test.com` - Enter password: `123456` diff --git a/apps/api/certificate.html b/apps/api/certificate.html deleted file mode 100644 index 26392dbf..00000000 --- a/apps/api/certificate.html +++ /dev/null @@ -1,431 +0,0 @@ - - - - - - - - - - Certificate - - - - - -
-
- -

${orgName}

-
- -
-

This certificate is awarded to

-

${studentName}

-
- -
-

has succesfully completed training on

-

${courseName}

-
- -
-
-

${dateIssued}

-

Date Issued

-
- -
-

-

Signature

-
-
- -
${courseDescription}
-
- - - - - - - - - - - - - - - - - - - - - diff --git a/apps/api/course.html b/apps/api/course.html deleted file mode 100644 index ca9560e8..00000000 --- a/apps/api/course.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - - - - - - Lesson Note - - - - - -
-

React js for Beginners

-

By TheSpace

-
- -
- -
-

- 32 -

-

The Yams

-

By The Space

-
- -
-
-

Lesson Note: Introduction and Counselling

-

Course: The Ultimate Guide to relocating to the UK via Study Path

-

Lesson Overview:

-

This lesson serves as the introduction to the course "The Ultimate Guide to relocating to the UK via - Study Path." In this session, we will provide an overview of the course and discuss the importance of - effective counseling in the relocation process.

-

Learning Objectives:

-

By the end of this lesson, students should be able to:

-
    -
  • Understand the goals and structure of the course.
  • -
  • Recognize the significance of counseling in the relocation process.
  • -
  • Acquire knowledge about the necessary steps involved in relocating to the UK through the study path.
  • -
-

Lesson Content:

-
    -
  1. -

    Introduction to the Course

    -
      -
    • Briefly introduce the course title and explain its relevance to students' interests.
    • -
    • Highlight the main topics and modules covered throughout the course.
    • -
    -
  2. -
  3. -

    Importance of Counseling

    -
      -
    • Define the role of counseling in the relocation process.
    • -
    • Discuss how counseling can assist students in making informed decisions regarding their studies and - life in the UK.
    • -
    • Explain the benefits of seeking professional guidance during the relocation journey.
    • -
    -
  4. -
  5. -

    Steps for Relocating to the UK via Study Path

    -
      -
    • Provide an overview of the necessary steps involved in relocating to the UK for study purposes.
    • -
    • Discuss the importance of thorough planning, research, and documentation in the relocation process. -
    • -
    • Highlight key points such as visa applications, university admissions, accommodation arrangements, and - financial considerations.
    • -
    -
  6. -
  7. -

    Q&A and Discussion Time

    -
      -
    • Allocate time for students to ask questions, provide comments, or share personal experiences.
    • -
    • Encourage active participation and foster a supportive learning environment.
    • -
    -
  8. -
-

Conclusion:

-

In this lesson, we introduced the course "The Ultimate Guide to relocating to the UK via Study - Path" and emphasized the significance of counseling in the relocation process. We explored the essential - steps involved in relocating to the UK and highlighted the importance of thorough planning and research. - Students should now have a better understanding of the course objectives and overall expectations. In the next - session, we will delve deeper into the specific requirements for studying in the UK and provide detailed - guidance on university admissions.

- -
- -
-

Extra Resources

-
-

Slide Link:

Open Here -
- -

Video Link:

- - -
-
- - - -
- - - \ No newline at end of file diff --git a/apps/api/lesson.html b/apps/api/static/lesson.html similarity index 100% rename from apps/api/lesson.html rename to apps/api/static/lesson.html diff --git a/apps/classroomio-com/package.json b/apps/classroomio-com/package.json index 90bf6eca..29fcb70f 100644 --- a/apps/classroomio-com/package.json +++ b/apps/classroomio-com/package.json @@ -1,5 +1,5 @@ { - "name": "classroomio-com", + "name": "@cio/classroomio-com", "version": "0.0.1", "private": true, "scripts": { diff --git a/apps/course-app/package.json b/apps/course-app/package.json index 87a60976..b4ccbdb5 100644 --- a/apps/course-app/package.json +++ b/apps/course-app/package.json @@ -1,48 +1,48 @@ { - "name": "course-app", - "private": true, - "version": "0.0.1", - "type": "module", - "scripts": { - "dev": "vite dev", - "build": "vite build", - "preview": "vite preview", - "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", - "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", - "format": "prettier --write .", - "lint": "prettier --check .", - "test:unit": "vitest", - "test": "npm run test:unit -- --run" - }, - "devDependencies": { - "@sveltejs/adapter-auto": "^3.0.0", - "@sveltejs/kit": "^2.9.0", - "@sveltejs/vite-plugin-svelte": "^5.0.0", - "autoprefixer": "^10.4.20", - "bits-ui": "^0.21.16", - "clsx": "^2.1.1", - "mode-watcher": "^0.5.0", - "prettier": "^3.3.2", - "prettier-plugin-svelte": "^3.2.6", - "prettier-plugin-tailwindcss": "^0.6.5", - "svelte": "^5.0.0", - "svelte-check": "^4.0.0", - "svelte-sonner": "^0.3.28", - "tailwind-merge": "^2.5.5", - "tailwind-variants": "^0.3.0", - "tailwindcss": "^3.4.9", - "typescript": "^5.0.0", - "vite": "^6.0.0", - "vitest": "^2.0.4" - }, - "dependencies": { - "@tailwindcss/container-queries": "^0.1.1", - "@tailwindcss/forms": "^0.5.9", - "@tailwindcss/typography": "^0.5.15", - "lucide-svelte": "^0.468.0", - "posthog-js": "^1.180.1", - "svelte-inview": "^4.0.4", - "svelte-motion": "^0.12.2", - "svelte-radix": "^2.0.1" - } + "name": "@cio/course-app", + "private": true, + "version": "0.0.1", + "type": "module", + "scripts": { + "dev": "vite dev", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", + "format": "prettier --write .", + "lint": "prettier --check .", + "test:unit": "vitest", + "test": "npm run test:unit -- --run" + }, + "devDependencies": { + "@sveltejs/adapter-auto": "^3.0.0", + "@sveltejs/kit": "^2.9.0", + "@sveltejs/vite-plugin-svelte": "^5.0.0", + "autoprefixer": "^10.4.20", + "bits-ui": "^0.21.16", + "clsx": "^2.1.1", + "mode-watcher": "^0.5.0", + "prettier": "^3.3.2", + "prettier-plugin-svelte": "^3.2.6", + "prettier-plugin-tailwindcss": "^0.6.5", + "svelte": "^5.0.0", + "svelte-check": "^4.0.0", + "svelte-sonner": "^0.3.28", + "tailwind-merge": "^2.5.5", + "tailwind-variants": "^0.3.0", + "tailwindcss": "^3.4.9", + "typescript": "^5.0.0", + "vite": "^6.0.0", + "vitest": "^2.0.4" + }, + "dependencies": { + "@tailwindcss/container-queries": "^0.1.1", + "@tailwindcss/forms": "^0.5.9", + "@tailwindcss/typography": "^0.5.15", + "lucide-svelte": "^0.468.0", + "posthog-js": "^1.180.1", + "svelte-inview": "^4.0.4", + "svelte-motion": "^0.12.2", + "svelte-radix": "^2.0.1" + } } diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json index bff240ea..f2852977 100644 --- a/apps/dashboard/package.json +++ b/apps/dashboard/package.json @@ -1,5 +1,5 @@ { - "name": "dashboard", + "name": "@cio/dashboard", "description": "classroomio", "version": "0.0.1", "main": "main.js", @@ -10,8 +10,6 @@ "lint": "eslint ./src", "clean": "rm -rf node_modules", "format": "prettier . --write .", - "export": "vite build --entry \"/ /404 login signup forgot onboarding courses org lms course\"", - "postexport": "mv __sapper__/export/404/index.html __sapper__/export/404.html", "start": "node build", "prepare": "svelte-kit sync", "test": "jest", diff --git a/apps/docs/package.json b/apps/docs/package.json index 9dcbfd81..6629832f 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -1,7 +1,7 @@ { - "name": "docs", + "name": "@cio/docs", "version": "0.0.1", - "description": "Nextra docs template", + "description": "ClassroomIO Documentation", "scripts": { "dev": "next dev", "build": "next build", diff --git a/turbo.json b/turbo.json index 041f076a..cde7b05b 100644 --- a/turbo.json +++ b/turbo.json @@ -1,10 +1,13 @@ { - "$schema": "https://turbo.build/schema.json", + "$schema": "https://turborepo.org/schema.json", "globalEnv": ["PUBLIC_IS_SELFHOSTED", "DEPLOYMENT_PROVIDER"], "pipeline": { + "@cio/dashboard#build": { + "dependsOn": ["@cio/api#build"] + }, "build": { "dependsOn": ["^build"], - "outputs": [".next/**", "!.next/cache/**", ".svelte-kit/**", ".vercel/**"] + "outputs": [".next/**", "!.next/cache/**", ".svelte-kit/**", ".vercel/**", "dist/**"] }, "lint": { "dependsOn": ["^build"]