diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..e95a1f65 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,15 @@ +root = true + +[*] +indent_style = tab +tab_width = 2 +end_of_line = lf +charset = utf-8 +insert_final_newline = false +trim_trailing_whitespace = true + +[{.*rc,*.yml,*.md,*.json,*.svg}] +indent_style = space + +[*.md] +trim_trailing_whitespace = false \ No newline at end of file diff --git a/.gitignore b/.gitignore index 5c173be8..6ea11cca 100644 --- a/.gitignore +++ b/.gitignore @@ -1,18 +1,36 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +node_modules +.pnp +.pnp.js + +# testing +coverage + +# next.js +.next/ +out/ +build + +# misc .DS_Store -/node_modules/ -/src/node_modules/@sapper/ -yarn-error.log -.svelte-kit/ +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files .env -/dist/ -package-lock.json +.env.local +.env.development.local +.env.test.local +.env.production.local -# Local Netlify folder -.netlify +# turbo +.turbo -# Sentry Auth Token -.env.sentry-build-plugin - -/_supascripts/ -data.sql -changes.sql +# vercel +.vercel \ No newline at end of file diff --git a/.npmrc b/.npmrc index 1e86a945..1560b99c 100644 --- a/.npmrc +++ b/.npmrc @@ -1 +1 @@ -npm_config_registry=https://registry.npmjs.org \ No newline at end of file +auto-install-peers = true \ No newline at end of file diff --git a/src/lib/components/Org/Settings/Account.svelte b/.prettierignore similarity index 100% rename from src/lib/components/Org/Settings/Account.svelte rename to .prettierignore diff --git a/.prettierrc b/.prettierrc index 485ca627..6f8a88e3 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,16 +1,15 @@ { - "useTabs": false, - "singleQuote": true, - "trailingComma": "none", - "printWidth": 100, - "overrides": [ - { - "files": [ - "*.svelte" - ], - "options": { - "svelteBracketNewLine": true - } - } - ] -} \ No newline at end of file + "endOfLine": "lf", + "printWidth": 90, + "trailingComma": "all", + "semi": true, + "singleQuote": false, + "jsxSingleQuote": true, + "bracketSpacing": true, + "bracketSameLine": true, + "singleAttributePerLine": true, + "tabWidth": 2, + "useTabs": true, + "plugins": ["prettier-plugin-tailwindcss","prettier-plugin-svelte"], + "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] +} diff --git a/README.md b/README.md index 5ae1430e..74139dc1 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ ## ✨ About ClassroomIO -ClassroomIO Courses page +ClassroomIO Courses page ClassroomIO is a platform for bootcamps, individual educators, and training businesses that brings teaching and learning into one place while at the same time helping them be 10x more productive. 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. @@ -69,6 +69,14 @@ Here is what you need to be able to run ClassroomIO.com - [Docker](https://docs.docker.com/engine/install/) - [NPM](https://www.npmjs.com/) +### Project Structure + +This repo is a mono repo that consists of 3 projects: + +1. `classroomio-com`: The landing page of ClassroomIO hosted [here](https://classroomio.com) +2. `dashboard`: The web application that runs the learning management system. +3. `docs`: Official documentation of ClassroomIO hosted [here](https://docs.classroomio.com) + ## Development ### Setup @@ -101,6 +109,7 @@ Here is what you need to be able to run ClassroomIO.com 4. Set up your `.env` file + - Go to `apps/classroomio-com` and `apps/dashboard` - Duplicate the `.env.example` file and rename it to `.env` 5. Setup Supabase. @@ -141,15 +150,20 @@ Here is what you need to be able to run ClassroomIO.com 6. Install the required dependencies ```bash - npm i + pnpm i ``` 7. Run (in development mode) ```bash - npm run dev + pnpm dev ``` +8. All projects should start running + - `classroomio-com`: [http://localhost:5173](http://localhost:5173) + - `dashboard`: [http://localhost:5174](http://localhost:5174) + - `docs`: [http://localhost:3000](http://localhost:3000) + ## Related Repos You can find other repos related to classroomio here: diff --git a/apps/classroomio-com/.env.example b/apps/classroomio-com/.env.example new file mode 100644 index 00000000..08864129 --- /dev/null +++ b/apps/classroomio-com/.env.example @@ -0,0 +1,4 @@ +PUBLIC_ENABLE_PRICING=1 +PUBLIC_ENABLE_FAQ=1 +PUBLIC_ENABLE_USERS_COMPANIES= +PUBLIC_ENABLE_STATS= \ No newline at end of file diff --git a/apps/classroomio-com/.gitignore b/apps/classroomio-com/.gitignore new file mode 100644 index 00000000..6635cf55 --- /dev/null +++ b/apps/classroomio-com/.gitignore @@ -0,0 +1,10 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example +vite.config.js.timestamp-* +vite.config.ts.timestamp-* diff --git a/apps/classroomio-com/.npmrc b/apps/classroomio-com/.npmrc new file mode 100644 index 00000000..0c05da45 --- /dev/null +++ b/apps/classroomio-com/.npmrc @@ -0,0 +1,2 @@ +engine-strict=true +resolution-mode=highest diff --git a/apps/classroomio-com/README.md b/apps/classroomio-com/README.md new file mode 100644 index 00000000..651a91a4 --- /dev/null +++ b/apps/classroomio-com/README.md @@ -0,0 +1,11 @@ + + Spend less time doing the boring stuffs, instead focus on impacting the lives of your students. +

ClassroomIO

+
+ +The Open Source Teaching Platform for Bootcamps + +## Tools + +- SvelteKit +- Tailwind diff --git a/apps/classroomio-com/jsconfig.json b/apps/classroomio-com/jsconfig.json new file mode 100644 index 00000000..fe45e13f --- /dev/null +++ b/apps/classroomio-com/jsconfig.json @@ -0,0 +1,17 @@ +{ + "extends": "./.svelte-kit/tsconfig.json", + "compilerOptions": { + "allowJs": true, + "checkJs": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "skipLibCheck": true, + "sourceMap": true, + "strict": true + } + // Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias and https://kit.svelte.dev/docs/configuration#files + // + // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes + // from the referenced tsconfig.json - TypeScript does not merge them in +} diff --git a/apps/classroomio-com/package.json b/apps/classroomio-com/package.json new file mode 100644 index 00000000..d519f43d --- /dev/null +++ b/apps/classroomio-com/package.json @@ -0,0 +1,31 @@ +{ + "name": "classroomio-com", + "version": "0.0.1", + "private": true, + "scripts": { + "dev": "vite dev", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./jsconfig.json --watch" + }, + "devDependencies": { + "@melt-ui/pp": "^0.1.2", + "@melt-ui/svelte": "^0.43.0", + "@sveltejs/adapter-auto": "^2.0.0", + "@sveltejs/kit": "^1.20.4", + "autoprefixer": "^10.4.15", + "carbon-icons-svelte": "^12.3.0", + "postcss": "^8.4.29", + "svelte": "^4.0.5", + "svelte-check": "^3.4.3", + "svelte-sequential-preprocessor": "^2.0.1", + "tailwindcss": "^3.3.3", + "typescript": "^5.0.0", + "vite": "^4.4.2" + }, + "type": "module", + "dependencies": { + "posthog-node": "^3.1.3" + } +} diff --git a/postcss.config.js b/apps/classroomio-com/postcss.config.js similarity index 96% rename from postcss.config.js rename to apps/classroomio-com/postcss.config.js index 2aa7205d..2e7af2b7 100644 --- a/postcss.config.js +++ b/apps/classroomio-com/postcss.config.js @@ -3,4 +3,4 @@ export default { tailwindcss: {}, autoprefixer: {}, }, -}; +} diff --git a/apps/classroomio-com/src/app.css b/apps/classroomio-com/src/app.css new file mode 100644 index 00000000..ff407455 --- /dev/null +++ b/apps/classroomio-com/src/app.css @@ -0,0 +1,48 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +body { + overflow-x: hidden; +} + +body::-webkit-scrollbar { + display: none; +} + +li { + font-family: 'Inter', sans-serif; +} + +.inter { + font-family: 'Inter', sans-serif; +} + +.floating { + -webkit-animation: floating 2.5s linear infinite; + animation: floating 2.5s linear infinite; +} + +@-webkit-keyframes floating { + 0%, + 100% { + -webkit-transform: translateY(0rem); + transform: translateY(0rem); + } + 50% { + -webkit-transform: translateY(1rem); + transform: translateY(1rem); + } +} + +@keyframes floating { + 0%, + 100% { + -webkit-transform: translateY(0rem); + transform: translateY(0rem); + } + 50% { + -webkit-transform: translateY(1rem); + transform: translateY(1rem); + } +} diff --git a/apps/classroomio-com/src/app.d.ts b/apps/classroomio-com/src/app.d.ts new file mode 100644 index 00000000..f59b884c --- /dev/null +++ b/apps/classroomio-com/src/app.d.ts @@ -0,0 +1,12 @@ +// See https://kit.svelte.dev/docs/types#app +// for information about these interfaces +declare global { + namespace App { + // interface Error {} + // interface Locals {} + // interface PageData {} + // interface Platform {} + } +} + +export {}; diff --git a/apps/classroomio-com/src/app.html b/apps/classroomio-com/src/app.html new file mode 100644 index 00000000..83520670 --- /dev/null +++ b/apps/classroomio-com/src/app.html @@ -0,0 +1,62 @@ + + + + + + + + + ClassroomIO – The Open Source Platform for Tech Bootcamps + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + %sveltekit.head% + + + +
%sveltekit.body%
+ + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/Body/Body.svelte b/apps/classroomio-com/src/lib/Body/Body.svelte new file mode 100644 index 00000000..f9a9a9b0 --- /dev/null +++ b/apps/classroomio-com/src/lib/Body/Body.svelte @@ -0,0 +1,74 @@ + + +
+
+ +
+
+ + +{#if PUBLIC_ENABLE_STATS} +
+
+

+ 1 thousand +

+

Feedback collected

+
+
+

+ 5 thousand +

+

Documents processed

+
+
+

+ 1 million +

+

Page views recorded

+
+
+{/if} diff --git a/apps/classroomio-com/src/lib/Body/Section.svelte b/apps/classroomio-com/src/lib/Body/Section.svelte new file mode 100644 index 00000000..a05a45f5 --- /dev/null +++ b/apps/classroomio-com/src/lib/Body/Section.svelte @@ -0,0 +1,71 @@ + + +
+
+
+
+ {#if taglineIcon === 'simplified'} + + {:else if taglineIcon === 'flexible'} + + {:else if taglineIcon === 'collaboration'} +
+ + +
+ {:else if taglineIcon === 'productivity'} + + {/if} +

{tagline}

+
+

{title}

+

+ {description} +

+ {#if $$slots.more} +
+ +

+ +

+ {/if} +
+
+ +
+
+
diff --git a/apps/classroomio-com/src/lib/Faq/Faq.svelte b/apps/classroomio-com/src/lib/Faq/Faq.svelte new file mode 100644 index 00000000..cbadde4e --- /dev/null +++ b/apps/classroomio-com/src/lib/Faq/Faq.svelte @@ -0,0 +1,74 @@ + + +
+
+

+ Questions & Answers +

+

+ Can’t find the answer you’re looking for? + Shoot us an email and we’ll get back to you ASAP. +

+
+ +
+ {#each faqs as faq} +
+

+ {faq.question} +

+

+ {faq.answer} +

+
+ {/each} +
+ +
+

+ Supercharge your Classroom Today +

+

+ Try before you buy. No credit card required. +

+ +
+
+ + diff --git a/apps/classroomio-com/src/lib/Faq/faqs.js b/apps/classroomio-com/src/lib/Faq/faqs.js new file mode 100644 index 00000000..af45dc8f --- /dev/null +++ b/apps/classroomio-com/src/lib/Faq/faqs.js @@ -0,0 +1,32 @@ +export const faqs = [ + { + question: 'Who can benefit from ClassroomIO?', + answer: + 'We built ClassroomIO from the ground up for Educators, meaning if you teach online or in a physical classroom you are good to go. It works best for Educators who already have students and want an efficient way to manage their learning experience.', + }, + { + question: 'Will I be able to set up ClassroomIO without technical skills?', + answer: + 'Most definitely. You can use ClassroomIO as a no-code tool to build your own LMS platform. We provide an intuitive user interface and documentation to help you give your students the best learning experience.', + }, + { + question: 'How much customization can I do with ClassroomIO?', + answer: + 'Things like theming, organization name, landing pages, content that your students see and many more customization options to come.', + }, + { + question: 'Is ClassroomIO suitable for a large number of students?', + answer: + 'Absolutely. ClassroomIO is built for a large number of students in any course. You can have multiple courses with as many students as you need.', + }, + { + question: 'What kind of team plans does ClassroomIO offer?', + answer: + 'ClassroomIO offers a Team plan designed to cater to organizations of any size. Depending on the plan you select, you can invite other teachers into your organization.', + }, + { + question: 'Can I try ClassroomIO before I buy it?', + answer: + 'Definitely. We’ve got a generous free plan to help you get started with the platform. As your requirements grow, we’ve got other plans that can grow with you.', + }, +]; diff --git a/apps/classroomio-com/src/lib/Footer/Footer.svelte b/apps/classroomio-com/src/lib/Footer/Footer.svelte new file mode 100644 index 00000000..67b79beb --- /dev/null +++ b/apps/classroomio-com/src/lib/Footer/Footer.svelte @@ -0,0 +1,187 @@ + + +
+
+
+ classroomio logo +

+ The Open Source Platform for Tech Bootcamps +
+ Making teaching and learning seamless for tech bootcamps +

+ +
+ + +
+
+

All rights reserved.

+

+ ClassroomIO © {new Date().getFullYear()} by + Rotimi Best + from + Nigerian Flag +

+
+
diff --git a/apps/classroomio-com/src/lib/Hero/Hero.svelte b/apps/classroomio-com/src/lib/Hero/Hero.svelte new file mode 100644 index 00000000..ce70a5e5 --- /dev/null +++ b/apps/classroomio-com/src/lib/Hero/Hero.svelte @@ -0,0 +1,93 @@ + + +
+
+ + ClassroomIO - The Open Source Platform for Tech Bootcamps | Product Hunt +
+

+ The Open Source Platform + for Tech Bootcamps +

+ +

+ Spend less time doing the boring stuffs, instead focus on impacting the + lives of your students. +

+ + +
+ +
+ + {#if PUBLIC_ENABLE_USERS_COMPANIES} +
+

+ Used at +

+
+ + + + + +
+
+ {/if} +
diff --git a/apps/classroomio-com/src/lib/Hero/ImageCompare.svelte b/apps/classroomio-com/src/lib/Hero/ImageCompare.svelte new file mode 100644 index 00000000..b29e4a4c --- /dev/null +++ b/apps/classroomio-com/src/lib/Hero/ImageCompare.svelte @@ -0,0 +1,193 @@ + + + + + + + diff --git a/src/lib/components/Icons/CourseIcon.svelte b/apps/classroomio-com/src/lib/Icons/CourseIcon.svelte similarity index 100% rename from src/lib/components/Icons/CourseIcon.svelte rename to apps/classroomio-com/src/lib/Icons/CourseIcon.svelte diff --git a/apps/classroomio-com/src/lib/MoreFeatures/MoreFeatures.svelte b/apps/classroomio-com/src/lib/MoreFeatures/MoreFeatures.svelte new file mode 100644 index 00000000..8e07f692 --- /dev/null +++ b/apps/classroomio-com/src/lib/MoreFeatures/MoreFeatures.svelte @@ -0,0 +1,116 @@ + + + +
+
+
+

+ There is More... +

+

+ ClassroomIO is packed with useful features while we try to make it easy + to use. +

+
+ +
+
+ {#each moreFeatures as moreFeature, i} + + {/each} +
+ + +
+ {#key selected} + {moreFeatures[selected].title} + {/key} +
+
+
+
+ + diff --git a/apps/classroomio-com/src/lib/Navigation/Navigation.svelte b/apps/classroomio-com/src/lib/Navigation/Navigation.svelte new file mode 100644 index 00000000..64d0f806 --- /dev/null +++ b/apps/classroomio-com/src/lib/Navigation/Navigation.svelte @@ -0,0 +1,260 @@ + + +
+ +
+ classroomio logo +

ClassroomIO

+
+
+ + + + + + + + + {#if showNav} +
+
+ classroomio logo + +
+ +
+ + + discord logo + Discord + + + github logo + Github + + +
+
+ {/if} +
diff --git a/apps/classroomio-com/src/lib/Pricing/Pricing.svelte b/apps/classroomio-com/src/lib/Pricing/Pricing.svelte new file mode 100644 index 00000000..fc67c471 --- /dev/null +++ b/apps/classroomio-com/src/lib/Pricing/Pricing.svelte @@ -0,0 +1,226 @@ + + +
+
+
+

+ Pricing +

+

+ For teams and individuals +

+

+ Customizable LMS, AI integration for productive educators and many + more... +

+
+ +
+ + +
+ Save 2 months +
+
+ +
+ +
+

+ Hobby +

+

+ For personal use. Hobby plan is free for up to 5 courses forever, no + credit card required. +

+

+ $0 /mo +

+ +
    + {#each freeFeatures as freeFeature} +
  • + + {freeFeature} +
  • + {/each} +
+
+ + +
+

+ Pro +

+

+ Advanced features for small teaching businesses. Built for scale. +

+

+ ${prices ? '12' : '15'} /member +

+ +
    + {#each proFeatures as proFeature} +
  • + + {proFeature} +
  • + {/each} +
+
+ + +
+

+ Team +

+

+ Best suited for teams and larger businesses that need more control. +

+

+ ${prices ? '42' : '50'} /member +

+ + +
    + {#each teamFeatures as teamFeature} +
  • + + {teamFeature} +
  • + {/each} +
+
+
+ + +
+
diff --git a/apps/classroomio-com/src/lib/StudentDashboard/StudentDashboard.svelte b/apps/classroomio-com/src/lib/StudentDashboard/StudentDashboard.svelte new file mode 100644 index 00000000..466bd73a --- /dev/null +++ b/apps/classroomio-com/src/lib/StudentDashboard/StudentDashboard.svelte @@ -0,0 +1,42 @@ +
+ +

+ A Personalized Dashboard for Your Students +

+ +

+ Once you create an account, you get a dedicated dashboard where your + students can access all their courses, assignments, and more. +

+ +
+ +
+
diff --git a/apps/classroomio-com/src/lib/emojis/crossed-fingers.svg b/apps/classroomio-com/src/lib/emojis/crossed-fingers.svg new file mode 100644 index 00000000..4d3009df --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/crossed-fingers.svg @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/folder.svg b/apps/classroomio-com/src/lib/emojis/folder.svg new file mode 100644 index 00000000..83f36b8f --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/folder.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/globe.svg b/apps/classroomio-com/src/lib/emojis/globe.svg new file mode 100644 index 00000000..cffce823 --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/globe.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/index.js b/apps/classroomio-com/src/lib/emojis/index.js new file mode 100644 index 00000000..e1fd9205 --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/index.js @@ -0,0 +1,22 @@ +import robotArm from './robot-arm.svg'; +import thumbsUp from './thumbs-up.svg'; +import flexible from './crossed-fingers.svg'; +import rightFist from './left-fist.svg'; +import leftFist from './right-fist.svg'; + +import globe from './globe.svg'; +import team from './team.svg'; +import transcription from './printer.svg'; +import folder from './folder.svg'; + +export { + flexible, + robotArm, + thumbsUp, + leftFist, + rightFist, + globe, + team, + transcription, + folder, +}; diff --git a/apps/classroomio-com/src/lib/emojis/left-fist.svg b/apps/classroomio-com/src/lib/emojis/left-fist.svg new file mode 100644 index 00000000..5524d866 --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/left-fist.svg @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/printer.svg b/apps/classroomio-com/src/lib/emojis/printer.svg new file mode 100644 index 00000000..f655cc6e --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/printer.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/right-fist.svg b/apps/classroomio-com/src/lib/emojis/right-fist.svg new file mode 100644 index 00000000..49794e59 --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/right-fist.svg @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/robot-arm.svg b/apps/classroomio-com/src/lib/emojis/robot-arm.svg new file mode 100644 index 00000000..12527a22 --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/robot-arm.svg @@ -0,0 +1,144 @@ + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/team.svg b/apps/classroomio-com/src/lib/emojis/team.svg new file mode 100644 index 00000000..bdcd69ee --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/team.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/emojis/thumbs-up.svg b/apps/classroomio-com/src/lib/emojis/thumbs-up.svg new file mode 100644 index 00000000..8d7a85a2 --- /dev/null +++ b/apps/classroomio-com/src/lib/emojis/thumbs-up.svg @@ -0,0 +1,197 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/src/lib/index.js b/apps/classroomio-com/src/lib/index.js new file mode 100644 index 00000000..b6437275 --- /dev/null +++ b/apps/classroomio-com/src/lib/index.js @@ -0,0 +1,20 @@ +// place files you want to import through the `$lib` alias in this folder. +import Navigation from './Navigation/Navigation.svelte'; +import Hero from './Hero/Hero.svelte'; +import Body from './Body/Body.svelte'; +import Pricing from './Pricing/Pricing.svelte'; +import Faq from './Faq/Faq.svelte'; +import Footer from './Footer/Footer.svelte'; +import StudentDashboard from './StudentDashboard/StudentDashboard.svelte'; +import MoreFeatures from './MoreFeatures/MoreFeatures.svelte'; + +export { + Body, + Faq, + Footer, + Hero, + MoreFeatures, + Navigation, + Pricing, + StudentDashboard, +}; diff --git a/apps/classroomio-com/src/lib/utils/posthog/index.ts b/apps/classroomio-com/src/lib/utils/posthog/index.ts new file mode 100644 index 00000000..9119f743 --- /dev/null +++ b/apps/classroomio-com/src/lib/utils/posthog/index.ts @@ -0,0 +1,9 @@ +import { PostHog } from 'posthog-node'; + +export const client = new PostHog( + 'phc_JfdHOZ6v0cVlGELBYx1Tmoen2nxNOrAzvgvrPA6Ksov', + + { host: 'https://app.posthog.com' } +); + +await client.shutdownAsync(); diff --git a/apps/classroomio-com/src/routes/+layout.svelte b/apps/classroomio-com/src/routes/+layout.svelte new file mode 100644 index 00000000..7d4f34d8 --- /dev/null +++ b/apps/classroomio-com/src/routes/+layout.svelte @@ -0,0 +1,11 @@ + + +
+ + + +
+
diff --git a/apps/classroomio-com/src/routes/+page.svelte b/apps/classroomio-com/src/routes/+page.svelte new file mode 100644 index 00000000..4c2d4f67 --- /dev/null +++ b/apps/classroomio-com/src/routes/+page.svelte @@ -0,0 +1,23 @@ + + + + + + + +{#if PUBLIC_ENABLE_PRICING} + +{/if} +{#if PUBLIC_ENABLE_FAQ} + +{/if} diff --git a/apps/classroomio-com/src/routes/demo/+page.server.ts b/apps/classroomio-com/src/routes/demo/+page.server.ts new file mode 100644 index 00000000..429167f0 --- /dev/null +++ b/apps/classroomio-com/src/routes/demo/+page.server.ts @@ -0,0 +1,12 @@ +import { redirect } from '@sveltejs/kit'; +import { client } from '$lib/utils/posthog'; + +export const load = ({ request }) => { + client.capture({ + distinctId: + request.headers.get('x-forwarded-for') || new Date().getTime().toString(), + event: 'cal.com page visited', + }); + + throw redirect(301, 'https://cal.com/classroomio/demo'); +}; diff --git a/apps/classroomio-com/src/routes/discord/+page.server.ts b/apps/classroomio-com/src/routes/discord/+page.server.ts new file mode 100644 index 00000000..54a76d84 --- /dev/null +++ b/apps/classroomio-com/src/routes/discord/+page.server.ts @@ -0,0 +1,12 @@ +import { redirect } from '@sveltejs/kit'; +import { client } from '$lib/utils/posthog'; + +export const load = ({ request }) => { + client.capture({ + distinctId: + request.headers.get('x-forwarded-for') || new Date().getTime().toString(), + event: 'discord page visited', + }); + + throw redirect(301, 'https://discord.gg/NJqaZNuD'); +}; diff --git a/apps/classroomio-com/src/routes/github/+page.server.ts b/apps/classroomio-com/src/routes/github/+page.server.ts new file mode 100644 index 00000000..00f1a1eb --- /dev/null +++ b/apps/classroomio-com/src/routes/github/+page.server.ts @@ -0,0 +1,12 @@ +import { redirect } from '@sveltejs/kit'; +import { client } from '$lib/utils/posthog'; + +export const load = async ({ request }) => { + client.capture({ + distinctId: + request.headers.get('x-forwarded-for') || new Date().getTime().toString(), + event: 'github page visited', + }); + + throw redirect(301, 'https://github.com/rotimi-best/classroomio'); +}; diff --git a/apps/classroomio-com/src/routes/privacy/+page.server.ts b/apps/classroomio-com/src/routes/privacy/+page.server.ts new file mode 100644 index 00000000..2c963eeb --- /dev/null +++ b/apps/classroomio-com/src/routes/privacy/+page.server.ts @@ -0,0 +1,15 @@ +import { redirect } from '@sveltejs/kit'; +import { client } from '$lib/utils/posthog'; + +export const load = async ({ request }) => { + client.capture({ + distinctId: + request.headers.get('x-forwarded-for') || new Date().getTime().toString(), + event: 'privacy page visited', + }); + + throw redirect( + 301, + 'https://app.enzuzo.com/policies/privacy/958fc978-5477-11ee-a03b-7b111830c594' + ); +}; diff --git a/apps/classroomio-com/src/routes/tos/+page.server.ts b/apps/classroomio-com/src/routes/tos/+page.server.ts new file mode 100644 index 00000000..54fd756c --- /dev/null +++ b/apps/classroomio-com/src/routes/tos/+page.server.ts @@ -0,0 +1,15 @@ +import { redirect } from '@sveltejs/kit'; +import { client } from '$lib/utils/posthog'; + +export const load = async ({ request }) => { + client.capture({ + distinctId: + request.headers.get('x-forwarded-for') || new Date().getTime().toString(), + event: 'privacy page visited', + }); + + throw redirect( + 301, + 'https://app.enzuzo.com/policies/tos/958fc978-5477-11ee-a03b-7b111830c594' + ); +}; diff --git a/apps/classroomio-com/static/ai-lesson.mp4 b/apps/classroomio-com/static/ai-lesson.mp4 new file mode 100644 index 00000000..28490fad Binary files /dev/null and b/apps/classroomio-com/static/ai-lesson.mp4 differ diff --git a/apps/classroomio-com/static/classroomio-courses.png b/apps/classroomio-com/static/classroomio-courses.png new file mode 100644 index 00000000..ce123127 Binary files /dev/null and b/apps/classroomio-com/static/classroomio-courses.png differ diff --git a/static/classroomio-opengraph-image.png b/apps/classroomio-com/static/classroomio-opengraph-image.png similarity index 100% rename from static/classroomio-opengraph-image.png rename to apps/classroomio-com/static/classroomio-opengraph-image.png diff --git a/apps/classroomio-com/static/community.mp4 b/apps/classroomio-com/static/community.mp4 new file mode 100644 index 00000000..9c337c17 Binary files /dev/null and b/apps/classroomio-com/static/community.mp4 differ diff --git a/apps/classroomio-com/static/course-management.mp4 b/apps/classroomio-com/static/course-management.mp4 new file mode 100644 index 00000000..4bb7987a Binary files /dev/null and b/apps/classroomio-com/static/course-management.mp4 differ diff --git a/apps/classroomio-com/static/courses-dark-mode.png b/apps/classroomio-com/static/courses-dark-mode.png new file mode 100644 index 00000000..ca039ffd Binary files /dev/null and b/apps/classroomio-com/static/courses-dark-mode.png differ diff --git a/apps/classroomio-com/static/courses-light-mode.png b/apps/classroomio-com/static/courses-light-mode.png new file mode 100644 index 00000000..22ef7909 Binary files /dev/null and b/apps/classroomio-com/static/courses-light-mode.png differ diff --git a/apps/classroomio-com/static/dark-light-mode.mp4 b/apps/classroomio-com/static/dark-light-mode.mp4 new file mode 100644 index 00000000..47441fb0 Binary files /dev/null and b/apps/classroomio-com/static/dark-light-mode.mp4 differ diff --git a/apps/classroomio-com/static/discord-blue.png b/apps/classroomio-com/static/discord-blue.png new file mode 100644 index 00000000..e9dc50d7 Binary files /dev/null and b/apps/classroomio-com/static/discord-blue.png differ diff --git a/apps/classroomio-com/static/download-pdf.png b/apps/classroomio-com/static/download-pdf.png new file mode 100644 index 00000000..475e4709 Binary files /dev/null and b/apps/classroomio-com/static/download-pdf.png differ diff --git a/static/favicon.ico b/apps/classroomio-com/static/favicon.ico similarity index 100% rename from static/favicon.ico rename to apps/classroomio-com/static/favicon.ico diff --git a/apps/classroomio-com/static/github-mark.png b/apps/classroomio-com/static/github-mark.png new file mode 100644 index 00000000..6cb3b705 Binary files /dev/null and b/apps/classroomio-com/static/github-mark.png differ diff --git a/apps/classroomio-com/static/hero-1.svg b/apps/classroomio-com/static/hero-1.svg new file mode 100644 index 00000000..6ec7ffdc --- /dev/null +++ b/apps/classroomio-com/static/hero-1.svg @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/static/hero-2.svg b/apps/classroomio-com/static/hero-2.svg new file mode 100644 index 00000000..02500eac --- /dev/null +++ b/apps/classroomio-com/static/hero-2.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/apps/classroomio-com/static/hero-3.svg b/apps/classroomio-com/static/hero-3.svg new file mode 100644 index 00000000..ddde1219 --- /dev/null +++ b/apps/classroomio-com/static/hero-3.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/static/hero-4.svg b/apps/classroomio-com/static/hero-4.svg new file mode 100644 index 00000000..763ec7e4 --- /dev/null +++ b/apps/classroomio-com/static/hero-4.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/static/hero-5.svg b/apps/classroomio-com/static/hero-5.svg new file mode 100644 index 00000000..541646ee --- /dev/null +++ b/apps/classroomio-com/static/hero-5.svg @@ -0,0 +1,16 @@ + + + + + + + + + \ No newline at end of file diff --git a/apps/classroomio-com/static/landing-page-builder.png b/apps/classroomio-com/static/landing-page-builder.png new file mode 100644 index 00000000..6ae8cd21 Binary files /dev/null and b/apps/classroomio-com/static/landing-page-builder.png differ diff --git a/apps/classroomio-com/static/lms-customization.mp4 b/apps/classroomio-com/static/lms-customization.mp4 new file mode 100644 index 00000000..966c9535 Binary files /dev/null and b/apps/classroomio-com/static/lms-customization.mp4 differ diff --git a/static/logo-16.png b/apps/classroomio-com/static/logo-16.png similarity index 100% rename from static/logo-16.png rename to apps/classroomio-com/static/logo-16.png diff --git a/static/logo-192.png b/apps/classroomio-com/static/logo-192.png similarity index 100% rename from static/logo-192.png rename to apps/classroomio-com/static/logo-192.png diff --git a/static/logo-32.png b/apps/classroomio-com/static/logo-32.png similarity index 100% rename from static/logo-32.png rename to apps/classroomio-com/static/logo-32.png diff --git a/apps/classroomio-com/static/logo-512-bg-blue.png b/apps/classroomio-com/static/logo-512-bg-blue.png new file mode 100644 index 00000000..81acf9d5 Binary files /dev/null and b/apps/classroomio-com/static/logo-512-bg-blue.png differ diff --git a/apps/classroomio-com/static/logo-512-bg-white.png b/apps/classroomio-com/static/logo-512-bg-white.png new file mode 100644 index 00000000..f99eb0a9 Binary files /dev/null and b/apps/classroomio-com/static/logo-512-bg-white.png differ diff --git a/static/logo-512.png b/apps/classroomio-com/static/logo-512.png similarity index 100% rename from static/logo-512.png rename to apps/classroomio-com/static/logo-512.png diff --git a/static/manifest.json b/apps/classroomio-com/static/manifest.json similarity index 61% rename from static/manifest.json rename to apps/classroomio-com/static/manifest.json index 207ad894..0af9f4e6 100644 --- a/static/manifest.json +++ b/apps/classroomio-com/static/manifest.json @@ -6,10 +6,20 @@ "display": "minimal-ui", "start_url": "/", "icons": [ + { + "src": "logo-32.png", + "sizes": "32x32", + "type": "image/png" + }, { "src": "logo-192.png", "sizes": "192x192", "type": "image/png" + }, + { + "src": "logo-512.png", + "sizes": "512x512", + "type": "image/png" } ] } diff --git a/apps/classroomio-com/static/ng.png b/apps/classroomio-com/static/ng.png new file mode 100644 index 00000000..b29dd104 Binary files /dev/null and b/apps/classroomio-com/static/ng.png differ diff --git a/apps/classroomio-com/static/robot.txt b/apps/classroomio-com/static/robot.txt new file mode 100644 index 00000000..4e8dd7ec --- /dev/null +++ b/apps/classroomio-com/static/robot.txt @@ -0,0 +1,17 @@ +User-agent: Googlebot +Disallow: +User-agent: googlebot-image +Disallow: +User-agent: googlebot-mobile +Disallow: +User-agent: MSNBot +Disallow: +User-agent: Slurp +Disallow: +User-agent: yahoo-mmcrawler +Disallow: +User-agent: yahoo-blogs/v3.9 +Disallow: +User-agent: * +Disallow: +Disallow: /cgi-bin/ diff --git a/apps/classroomio-com/static/student-dashboard.mp4 b/apps/classroomio-com/static/student-dashboard.mp4 new file mode 100644 index 00000000..98a6f50b Binary files /dev/null and b/apps/classroomio-com/static/student-dashboard.mp4 differ diff --git a/apps/classroomio-com/static/team-management.png b/apps/classroomio-com/static/team-management.png new file mode 100644 index 00000000..f7f090d0 Binary files /dev/null and b/apps/classroomio-com/static/team-management.png differ diff --git a/apps/classroomio-com/static/twitter_logo.png b/apps/classroomio-com/static/twitter_logo.png new file mode 100644 index 00000000..158c4c39 Binary files /dev/null and b/apps/classroomio-com/static/twitter_logo.png differ diff --git a/apps/classroomio-com/static/video-transcription.png b/apps/classroomio-com/static/video-transcription.png new file mode 100644 index 00000000..6dc24bf1 Binary files /dev/null and b/apps/classroomio-com/static/video-transcription.png differ diff --git a/apps/classroomio-com/svelte.config.js b/apps/classroomio-com/svelte.config.js new file mode 100644 index 00000000..c8c62f6d --- /dev/null +++ b/apps/classroomio-com/svelte.config.js @@ -0,0 +1,16 @@ +import { preprocessMeltUI } from "@melt-ui/pp"; +import sequence from "svelte-sequential-preprocessor"; +import adapter from "@sveltejs/adapter-auto"; +import { vitePreprocess } from "@sveltejs/kit/vite"; + +/** @type {import('@sveltejs/kit').Config}*/ +const config = { + kit: { + // adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list. + // If your environment is not supported or you settled on a specific environment, switch out the adapter. + // See https://kit.svelte.dev/docs/adapters for more information about adapters. + adapter: adapter(), + }, + preprocess: sequence([vitePreprocess(), preprocessMeltUI()]), +}; +export default config; diff --git a/apps/classroomio-com/tailwind.config.js b/apps/classroomio-com/tailwind.config.js new file mode 100644 index 00000000..f15aa8d6 --- /dev/null +++ b/apps/classroomio-com/tailwind.config.js @@ -0,0 +1,8 @@ +/** @type {import('tailwindcss').Config} */ +export default { + content: ['./src/**/*.{html,js,svelte,ts}'], + theme: { + extend: {}, + }, + plugins: [], +}; diff --git a/apps/classroomio-com/vite.config.js b/apps/classroomio-com/vite.config.js new file mode 100644 index 00000000..bbf8c7da --- /dev/null +++ b/apps/classroomio-com/vite.config.js @@ -0,0 +1,6 @@ +import { sveltekit } from '@sveltejs/kit/vite'; +import { defineConfig } from 'vite'; + +export default defineConfig({ + plugins: [sveltekit()] +}); diff --git a/.env.example b/apps/dashboard/.env.example similarity index 94% rename from .env.example rename to apps/dashboard/.env.example index 108105e6..3c3bfd41 100644 --- a/.env.example +++ b/apps/dashboard/.env.example @@ -1,4 +1,5 @@ # Supabase setup - Required +PUBLIC_SUPABASE_PROJECT_REF=localhost PUBLIC_SUPABASE_URL=http://localhost:54321 PUBLIC_SUPABASE_BUCKET_URL=http://localhost:54323 PUBLIC_SUPABASE_ANON_KEY= diff --git a/apps/dashboard/.eslintrc.cjs b/apps/dashboard/.eslintrc.cjs new file mode 100644 index 00000000..8936009d --- /dev/null +++ b/apps/dashboard/.eslintrc.cjs @@ -0,0 +1,3 @@ +module.exports = { + extends: ['custom/svelte'] +}; diff --git a/apps/dashboard/.gitignore b/apps/dashboard/.gitignore new file mode 100644 index 00000000..66b5aff4 --- /dev/null +++ b/apps/dashboard/.gitignore @@ -0,0 +1,19 @@ +.DS_Store +/node_modules/ +node_modules +/src/node_modules/@sapper/ +yarn-error.log +.svelte-kit/ +.env +/dist/ +package-lock.json + +# Local Netlify folder +.netlify + +# Sentry Auth Token +.env.sentry-build-plugin + +/_supascripts/ +data.sql +changes.sql diff --git a/apps/dashboard/.npmrc b/apps/dashboard/.npmrc new file mode 100644 index 00000000..1e86a945 --- /dev/null +++ b/apps/dashboard/.npmrc @@ -0,0 +1 @@ +npm_config_registry=https://registry.npmjs.org \ No newline at end of file diff --git a/.nvmrc b/apps/dashboard/.nvmrc similarity index 100% rename from .nvmrc rename to apps/dashboard/.nvmrc diff --git a/apps/dashboard/.prettierrc b/apps/dashboard/.prettierrc new file mode 100644 index 00000000..73195ab7 --- /dev/null +++ b/apps/dashboard/.prettierrc @@ -0,0 +1,14 @@ +{ + "useTabs": false, + "singleQuote": true, + "trailingComma": "none", + "printWidth": 100, + "overrides": [ + { + "files": ["*.svelte"], + "options": { + "svelteBracketNewLine": true + } + } + ] +} diff --git a/apps/dashboard/README.md b/apps/dashboard/README.md new file mode 100644 index 00000000..a3e0cb9c --- /dev/null +++ b/apps/dashboard/README.md @@ -0,0 +1,158 @@ + + Spend less time doing the boring stuffs, instead focus on impacting the lives of your students. +

ClassroomIO

+

+ The Open Source Teaching Platform for Bootcamps +
+
Website | Join Discord community +

+ + +[![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) + +## ✨ About ClassroomIO + +ClassroomIO Courses page + +ClassroomIO is a platform for bootcamps, individual educators, and training businesses that brings teaching and learning into one place while at the same time helping them be 10x more productive. 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. + +### Mission: Provide Students with the best learning experience + +At ClassroomIO, our mission is to provide students with the best possible learning experience. We believe in empowering educators with the tools they need to deliver high-quality education that is accessible, engaging, and effective. + +### Key Features + +1. **📚 Advanced Course Management:** You can create unlimited courses, create lessons, invite students, add assignments, grade their assignments, and even generate certificates. +2. **👨‍👩‍👦 Multi-Teacher Management:** You can invite other teachers into your organization and assign them individual courses. +3. **🤖 AI Integration:** We've got OpenAI integration for quick course creation where you can generate course content, lesson outlines, and even generate assignments right from your lesson notes. +4. **💬 Forum:** Students can ask questions in your dedicated community and get answers from either you or other students. +5. **🏆 Kahoot-Like Quiz:** You can create live quizzes to create more engagement in your classrooms. +6. **💻 Dedicated Student Dashboard:** Once you create an account, you get a dedicated dashboard where your students can access all their courses, assignments, and more. +7. **🔒 Fully open source:** You can self-hostable the whole stack on your servers. + +### Roadmap Features + +1. **Forms:** Instead of using Google Forms to collect vital information from your students, you will be able to create forms directly within the dashboard. +2. **Course Announcement:** You can make public announcements from the course dashboard to all your students. +3. **Course Templates:** You can clone a full course or share templates with other people. +4. **Analytics:** You can track data about your students across multiple courses. +5. **Run Courses on Messengers:** Students can just join a channel on slack/discord/telegram and a bot automatically sends daily lesson content to your students without you doing anything. + +Please reach out to me on [twitter](https://x.com/rotimi_best) if you have any feature request. + +## Built With + +- [Svelekit](https://kit.svelte.dev/?ref=classroomio.com) +- [Supabase](https://supabase.com/?ref=classroomio.com) +- [TailwindCSS](https://tailwindcss.com/?ref=classroomio.com) + +## Get a Demo + +You can book a quick 15 min demo to see if ClassroomIO is a good fit for you + + + Book a Call with ClassroomIO.com + + + + +## Getting Started + +To get a local copy up and running, please follow these simple steps. + +### Prerequisites + +Here is what you need to be able to run Cal.com. + +- [Node.js](https://nodejs.org/) (Version: >=18.x) +- [Supabase CLI](https://github.com/supabase/cli) +- [Docker](https://docs.docker.com/engine/install/) +- [NPM](https://www.npmjs.com/) + +## Development + +### Setup + +1. Clone the repo + + ```bash + git clone https://github.com/rotimi-best/classroomio.git + ``` + +2. Go to project folder + + ```bash + cd classroomio + ``` + +3. Setup Node If your Node version does not meet the project's requirements as instructed by the docs, "nvm" (Node Version Manager) allows using Node at the version required by the project: + + ```bash + nvm use + ``` + + You first might need to install the specific version and then use it: + + ```bash + nvm install && nvm use + ``` + + You can install nvm from [here](https://github.com/nvm-sh/nvm). + +4. Set up your `.env` file + + - Duplicate `.env.example` to `.env` + +5. Setup Supabase. + + - Make sure you've downloaded the [supabase cli](https://github.com/supabase/cli) + - Install and Start [docker](https://docs.docker.com/engine/install/) + - Go to the project directory in your terminal and start supabase + + ```bash + supabase start + ``` + + - You should get a result like this + + ```bash + supabase local development setup is running. + + API URL: http://127.0.0.1:54321 + GraphQL URL: http://127.0.0.1:54321/graphql/v1 + DB URL: postgresql://postgres:postgres@127.0.0.1:54322/postgres + Studio URL: http://127.0.0.1:54323 + Inbucket URL: http://127.0.0.1:54324 + JWT secret: super-secret-jwt-token-with-at-least-32-characters-long + anon key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwicm9sZSI6ImFub24iLCJleHAiOjE5ODM4MTI5OTZ9.CRXP1A7WOeoJeXxjNni43kdQwgnWNReilDMblYTn_I0 + service_role key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImV4cCI6MTk4MzgxMjk5Nn0.EGIM96RAZx35lJzdJsyH-qQwv8Hdp7fsn3W0YpN81IU + ``` + + - Supabase environment variables should be taken from the result of `supabase start` + + ```env + PUBLIC_SUPABASE_URL= + PUBLIC_SUPABASE_ANON_KEY= + PUBLIC_SUPABASE_BUCKET_URL= + ``` + + - To view the Supabase studio, open the Studio URL from the result of supabase start + +6. Install the required dependencies + + ```bash + npm i + ``` + +7. Run (in development mode) + + ```bash + npm run dev + ``` + +## Related Repos + +You can find other repos related to classroomio here: + +- Help Docs: +- ClassroomIO.com: diff --git a/classroomio.code-workspace b/apps/dashboard/classroomio.code-workspace similarity index 100% rename from classroomio.code-workspace rename to apps/dashboard/classroomio.code-workspace diff --git a/main.js b/apps/dashboard/main.js similarity index 98% rename from main.js rename to apps/dashboard/main.js index 96fc30b3..36784549 100644 --- a/main.js +++ b/apps/dashboard/main.js @@ -18,7 +18,7 @@ function createWindow() { width: 800, height: 600, webPreferences: { - nodeIntegration: true, + nodeIntegration: true }, // Use this in development mode. icon: isDev() @@ -26,7 +26,7 @@ function createWindow() { : path.join(__dirname, '__sapper__/export/logo-512.png'), // Use this in production mode. // icon: path.join(__dirname, '__sapper__/export/logo-512.png'), - show: false, + show: false }); // This block of code is intended for development purpose only. diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json new file mode 100644 index 00000000..b4cae210 --- /dev/null +++ b/apps/dashboard/package.json @@ -0,0 +1,86 @@ +{ + "name": "dashboard", + "description": "classroomio", + "version": "0.0.1", + "main": "main.js", + "scripts": { + "dev": "vite dev", + "build": "vite build", + "preview": "vite preview", + "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" + }, + "dependencies": { + "@aws-sdk/client-s3": "^3.386.0", + "@carbon/charts-svelte": "^1.13.6", + "@sentry/browser": "^7.61.0", + "@sentry/integrations": "^7.61.0", + "@sentry/vite-plugin": "^2.6.2", + "@supabase/supabase-js": "^2.31.0", + "@sveltejs/adapter-auto": "^2.1.0", + "@sveltejs/adapter-vercel": "^3.0.3", + "@tailwindcss/forms": "^0.5.4", + "@tinymce/tinymce-svelte": "^1.0.1", + "@types/pluralize": "0.0.30", + "ai": "^2.1.31", + "axios": "^1.5.1", + "body-parser": "^1.20.2", + "canvas-confetti": "^1.6.0", + "cookie-parser": "^1.4.6", + "copy-to-clipboard": "^3.3.3", + "d3": "^7.8.5", + "d3-cloud": "^1.2.7", + "d3-sankey": "^0.12.3", + "dayjs": "^1.11.10", + "form-data": "^4.0.0", + "hotkeys-js": "^3.11.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "nodemailer": "^6.9.5", + "openai-edge": "^1.2.2", + "pluralize": "^8.0.0", + "posthog-js": "^1.87.2", + "sirv": "^2.0.3", + "supabase": "^1.112.0", + "svelte-email": "^0.0.4", + "svelte-ui": "workspace:*", + "unsplash-js": "^7.0.18", + "wait-on": "^7.0.1", + "zod": "^3.21.4" + }, + "devDependencies": { + "@babel/core": "^7.22.9", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.22.9", + "@babel/preset-env": "^7.22.9", + "@babel/runtime": "^7.22.6", + "@sveltejs/kit": "^1.22.4", + "@tailwindcss/typography": "^0.5.9", + "@types/lodash": "^4.14.196", + "@types/nodemailer": "^6.4.11", + "autoprefixer": "^10.4.14", + "carbon-components-svelte": "^0.79.0", + "carbon-icons-svelte": "^12.1.0", + "dotenv": "^16.3.1", + "eslint-config-custom": "workspace:*", + "postcss": "^8.4.24", + "postcss-load-config": "^4.0.1", + "sass": "^1.64.2", + "svelte": "^4.1.2", + "svelte-calendar": "^3.1.6", + "svelte-dnd-action": "^0.9.24", + "svelte-loading-spinners": "^0.3.4", + "svelte-preprocess": "^5.0.4", + "tailwindcss": "^3.3.2", + "tsconfig": "workspace:*", + "tslib": "^2.6.1", + "typescript": "^5.1.6", + "vite": "^4.4.8" + }, + "type": "module" +} diff --git a/postcss.config.cjs b/apps/dashboard/postcss.config.cjs similarity index 65% rename from postcss.config.cjs rename to apps/dashboard/postcss.config.cjs index e48cff58..3a310c7e 100644 --- a/postcss.config.cjs +++ b/apps/dashboard/postcss.config.cjs @@ -1,13 +1,13 @@ -const tailwindcss = require("tailwindcss"); -const autoprefixer = require("autoprefixer"); +const tailwindcss = require('tailwindcss'); +const autoprefixer = require('autoprefixer'); const config = { plugins: [ //Some plugins, like tailwindcss/nesting, need to run before Tailwind, tailwindcss(), //But others, like autoprefixer, need to run after, - autoprefixer, - ], + autoprefixer + ] }; module.exports = config; diff --git a/apps/dashboard/postcss.config.js b/apps/dashboard/postcss.config.js new file mode 100644 index 00000000..ba807304 --- /dev/null +++ b/apps/dashboard/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {} + } +}; diff --git a/apps/dashboard/src/ambient.d.ts b/apps/dashboard/src/ambient.d.ts new file mode 100644 index 00000000..507a6eaa --- /dev/null +++ b/apps/dashboard/src/ambient.d.ts @@ -0,0 +1,39 @@ +/** + * These declarations tell TypeScript that we allow import of images, e.g. + * ``` + + + + ``` + */ +declare module '*.gif' { + const value: string; + export = value; +} + +declare module '*.jpg' { + const value: string; + export = value; +} + +declare module '*.jpeg' { + const value: string; + export = value; +} + +declare module '*.png' { + const value: string; + export = value; +} + +declare module '*.svg' { + const value: string; + export = value; +} + +declare module '*.webp' { + const value: string; + export = value; +} diff --git a/apps/dashboard/src/app.html b/apps/dashboard/src/app.html new file mode 100644 index 00000000..13bfc2cc --- /dev/null +++ b/apps/dashboard/src/app.html @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + ClassroomIO – The Open Source Platform for Tech Bootcamps + + + + + + + + + + + + + + + + + + + + + + + + + %sveltekit.head% + + + +
%sveltekit.body%
+ + diff --git a/src/app.postcss b/apps/dashboard/src/app.postcss similarity index 97% rename from src/app.postcss rename to apps/dashboard/src/app.postcss index 69215a0c..f268bc42 100644 --- a/src/app.postcss +++ b/apps/dashboard/src/app.postcss @@ -9,9 +9,21 @@ html { --scrollbarBG: #fff; --thumbBG: #ccc; scroll-behavior: smooth; - font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, - Helvetica Neue, Arial, Noto Sans, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', - Segoe UI Symbol, 'Noto Color Emoji' !important; + font-family: + ui-sans-serif, + system-ui, + -apple-system, + BlinkMacSystemFont, + Segoe UI, + Roboto, + Helvetica Neue, + Arial, + Noto Sans, + sans-serif, + 'Apple Color Emoji', + 'Segoe UI Emoji', + Segoe UI Symbol, + 'Noto Color Emoji' !important; } #calendar .grid { diff --git a/src/config.js b/apps/dashboard/src/config.js similarity index 100% rename from src/config.js rename to apps/dashboard/src/config.js diff --git a/src/error.html b/apps/dashboard/src/error.html similarity index 64% rename from src/error.html rename to apps/dashboard/src/error.html index a0c984f6..7a54d085 100644 --- a/src/error.html +++ b/apps/dashboard/src/error.html @@ -3,18 +3,22 @@
+ class="error-container m-auto flex flex-col-reverse lg:flex-row md:flex-col-reverse items-center justify-center h-screen w-screen py-10 dark:bg-black" +>

Something unexpected occured.

- Don't worry, your learning is safe. It isn't your fault, it is ours. We - have gotten the error notification and will push a fix ASAP. In the - meantime, take a short break and come back a bit later. + Don't worry, your learning is safe. It isn't your fault, it is ours. We have gotten the error + notification and will push a fix ASAP. In the meantime, take a short break and come back a bit + later.

- Contact Us + Contact Us
@@ -26,4 +30,4 @@ .error-container { max-width: 964px; } - \ No newline at end of file + diff --git a/src/lib/components/AI/AIButton/CustomPromptBtn.svelte b/apps/dashboard/src/lib/components/AI/AIButton/CustomPromptBtn.svelte similarity index 100% rename from src/lib/components/AI/AIButton/CustomPromptBtn.svelte rename to apps/dashboard/src/lib/components/AI/AIButton/CustomPromptBtn.svelte diff --git a/src/lib/components/Apps/components/Comments/index.svelte b/apps/dashboard/src/lib/components/Apps/components/Comments/index.svelte similarity index 100% rename from src/lib/components/Apps/components/Comments/index.svelte rename to apps/dashboard/src/lib/components/Apps/components/Comments/index.svelte diff --git a/src/lib/components/Apps/components/Notes/index.svelte b/apps/dashboard/src/lib/components/Apps/components/Notes/index.svelte similarity index 100% rename from src/lib/components/Apps/components/Notes/index.svelte rename to apps/dashboard/src/lib/components/Apps/components/Notes/index.svelte diff --git a/src/lib/components/Apps/components/Poll/components/Avatar.svelte b/apps/dashboard/src/lib/components/Apps/components/Poll/components/Avatar.svelte similarity index 100% rename from src/lib/components/Apps/components/Poll/components/Avatar.svelte rename to apps/dashboard/src/lib/components/Apps/components/Poll/components/Avatar.svelte diff --git a/src/lib/components/Apps/components/Poll/components/CreatePollForm.svelte b/apps/dashboard/src/lib/components/Apps/components/Poll/components/CreatePollForm.svelte similarity index 100% rename from src/lib/components/Apps/components/Poll/components/CreatePollForm.svelte rename to apps/dashboard/src/lib/components/Apps/components/Poll/components/CreatePollForm.svelte diff --git a/src/lib/components/Apps/components/Poll/components/Label.svelte b/apps/dashboard/src/lib/components/Apps/components/Poll/components/Label.svelte similarity index 100% rename from src/lib/components/Apps/components/Poll/components/Label.svelte rename to apps/dashboard/src/lib/components/Apps/components/Poll/components/Label.svelte diff --git a/src/lib/components/Apps/components/Poll/components/Poll.svelte b/apps/dashboard/src/lib/components/Apps/components/Poll/components/Poll.svelte similarity index 100% rename from src/lib/components/Apps/components/Poll/components/Poll.svelte rename to apps/dashboard/src/lib/components/Apps/components/Poll/components/Poll.svelte diff --git a/src/lib/components/Apps/components/Poll/components/Tabs.svelte b/apps/dashboard/src/lib/components/Apps/components/Poll/components/Tabs.svelte similarity index 100% rename from src/lib/components/Apps/components/Poll/components/Tabs.svelte rename to apps/dashboard/src/lib/components/Apps/components/Poll/components/Tabs.svelte diff --git a/src/lib/components/Apps/components/Poll/index.svelte b/apps/dashboard/src/lib/components/Apps/components/Poll/index.svelte similarity index 100% rename from src/lib/components/Apps/components/Poll/index.svelte rename to apps/dashboard/src/lib/components/Apps/components/Poll/index.svelte diff --git a/src/lib/components/Apps/components/Poll/service.ts b/apps/dashboard/src/lib/components/Apps/components/Poll/service.ts similarity index 100% rename from src/lib/components/Apps/components/Poll/service.ts rename to apps/dashboard/src/lib/components/Apps/components/Poll/service.ts diff --git a/src/lib/components/Apps/components/Poll/store.ts b/apps/dashboard/src/lib/components/Apps/components/Poll/store.ts similarity index 100% rename from src/lib/components/Apps/components/Poll/store.ts rename to apps/dashboard/src/lib/components/Apps/components/Poll/store.ts diff --git a/src/lib/components/Apps/components/Poll/types.ts b/apps/dashboard/src/lib/components/Apps/components/Poll/types.ts similarity index 100% rename from src/lib/components/Apps/components/Poll/types.ts rename to apps/dashboard/src/lib/components/Apps/components/Poll/types.ts diff --git a/src/lib/components/Apps/components/Poll/utils.ts b/apps/dashboard/src/lib/components/Apps/components/Poll/utils.ts similarity index 100% rename from src/lib/components/Apps/components/Poll/utils.ts rename to apps/dashboard/src/lib/components/Apps/components/Poll/utils.ts diff --git a/src/lib/components/Apps/components/QandA/index.svelte b/apps/dashboard/src/lib/components/Apps/components/QandA/index.svelte similarity index 100% rename from src/lib/components/Apps/components/QandA/index.svelte rename to apps/dashboard/src/lib/components/Apps/components/QandA/index.svelte diff --git a/src/lib/components/Apps/constants.js b/apps/dashboard/src/lib/components/Apps/constants.js similarity index 100% rename from src/lib/components/Apps/constants.js rename to apps/dashboard/src/lib/components/Apps/constants.js diff --git a/src/lib/components/Apps/index.svelte b/apps/dashboard/src/lib/components/Apps/index.svelte similarity index 100% rename from src/lib/components/Apps/index.svelte rename to apps/dashboard/src/lib/components/Apps/index.svelte diff --git a/src/lib/components/Apps/store.ts b/apps/dashboard/src/lib/components/Apps/store.ts similarity index 100% rename from src/lib/components/Apps/store.ts rename to apps/dashboard/src/lib/components/Apps/store.ts diff --git a/src/lib/components/AuthUI/index.svelte b/apps/dashboard/src/lib/components/AuthUI/index.svelte similarity index 100% rename from src/lib/components/AuthUI/index.svelte rename to apps/dashboard/src/lib/components/AuthUI/index.svelte diff --git a/src/lib/components/Avatar/index.svelte b/apps/dashboard/src/lib/components/Avatar/index.svelte similarity index 100% rename from src/lib/components/Avatar/index.svelte rename to apps/dashboard/src/lib/components/Avatar/index.svelte diff --git a/src/lib/components/Backdrop/index.svelte b/apps/dashboard/src/lib/components/Backdrop/index.svelte similarity index 100% rename from src/lib/components/Backdrop/index.svelte rename to apps/dashboard/src/lib/components/Backdrop/index.svelte diff --git a/src/lib/components/Box/index.svelte b/apps/dashboard/src/lib/components/Box/index.svelte similarity index 100% rename from src/lib/components/Box/index.svelte rename to apps/dashboard/src/lib/components/Box/index.svelte diff --git a/src/lib/components/Buttons/Close/index.svelte b/apps/dashboard/src/lib/components/Buttons/Close/index.svelte similarity index 100% rename from src/lib/components/Buttons/Close/index.svelte rename to apps/dashboard/src/lib/components/Buttons/Close/index.svelte diff --git a/src/lib/components/Buttons/Delete/index.svelte b/apps/dashboard/src/lib/components/Buttons/Delete/index.svelte similarity index 100% rename from src/lib/components/Buttons/Delete/index.svelte rename to apps/dashboard/src/lib/components/Buttons/Delete/index.svelte diff --git a/src/lib/components/Buttons/Logout/index.svelte b/apps/dashboard/src/lib/components/Buttons/Logout/index.svelte similarity index 100% rename from src/lib/components/Buttons/Logout/index.svelte rename to apps/dashboard/src/lib/components/Buttons/Logout/index.svelte diff --git a/src/lib/components/Buttons/Send/index.svelte b/apps/dashboard/src/lib/components/Buttons/Send/index.svelte similarity index 100% rename from src/lib/components/Buttons/Send/index.svelte rename to apps/dashboard/src/lib/components/Buttons/Send/index.svelte diff --git a/src/lib/components/Buttons/VisitOrgSite.svelte b/apps/dashboard/src/lib/components/Buttons/VisitOrgSite.svelte similarity index 100% rename from src/lib/components/Buttons/VisitOrgSite.svelte rename to apps/dashboard/src/lib/components/Buttons/VisitOrgSite.svelte diff --git a/src/lib/components/Chip/Text.svelte b/apps/dashboard/src/lib/components/Chip/Text.svelte similarity index 100% rename from src/lib/components/Chip/Text.svelte rename to apps/dashboard/src/lib/components/Chip/Text.svelte diff --git a/src/lib/components/Chip/index.svelte b/apps/dashboard/src/lib/components/Chip/index.svelte similarity index 100% rename from src/lib/components/Chip/index.svelte rename to apps/dashboard/src/lib/components/Chip/index.svelte diff --git a/src/lib/components/ClEditor/index.svelte b/apps/dashboard/src/lib/components/ClEditor/index.svelte similarity index 100% rename from src/lib/components/ClEditor/index.svelte rename to apps/dashboard/src/lib/components/ClEditor/index.svelte diff --git a/src/lib/components/CodeSnippet/index.svelte b/apps/dashboard/src/lib/components/CodeSnippet/index.svelte similarity index 100% rename from src/lib/components/CodeSnippet/index.svelte rename to apps/dashboard/src/lib/components/CodeSnippet/index.svelte diff --git a/src/lib/components/ComingSoon/index.svelte b/apps/dashboard/src/lib/components/ComingSoon/index.svelte similarity index 100% rename from src/lib/components/ComingSoon/index.svelte rename to apps/dashboard/src/lib/components/ComingSoon/index.svelte diff --git a/src/lib/components/Confetti/index.svelte b/apps/dashboard/src/lib/components/Confetti/index.svelte similarity index 100% rename from src/lib/components/Confetti/index.svelte rename to apps/dashboard/src/lib/components/Confetti/index.svelte diff --git a/src/lib/components/Confetti/store.js b/apps/dashboard/src/lib/components/Confetti/store.js similarity index 82% rename from src/lib/components/Confetti/store.js rename to apps/dashboard/src/lib/components/Confetti/store.js index e6b0ab83..879839a4 100644 --- a/src/lib/components/Confetti/store.js +++ b/apps/dashboard/src/lib/components/Confetti/store.js @@ -1,12 +1,12 @@ import { writable } from 'svelte/store'; export const confettiStore = writable({ - show: false, + show: false }); export function toggleConfetti() { confettiStore.update((confetti) => ({ ...confetti, - show: !confetti.show, + show: !confetti.show })); } diff --git a/src/lib/components/Course/components/Attendance/index.svelte b/apps/dashboard/src/lib/components/Course/components/Attendance/index.svelte similarity index 100% rename from src/lib/components/Course/components/Attendance/index.svelte rename to apps/dashboard/src/lib/components/Course/components/Attendance/index.svelte diff --git a/src/lib/components/Course/components/Ceritficate/Design.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/Design.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/Design.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/Design.svelte diff --git a/src/lib/components/Course/components/Ceritficate/IssueCertificateModal.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/IssueCertificateModal.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/IssueCertificateModal.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/IssueCertificateModal.svelte diff --git a/src/lib/components/Course/components/Ceritficate/Reports.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/Reports.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/Reports.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/Reports.svelte diff --git a/src/lib/components/Course/components/Ceritficate/StudentCertificate/Index.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/StudentCertificate/Index.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/StudentCertificate/Index.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/StudentCertificate/Index.svelte diff --git a/src/lib/components/Course/components/Ceritficate/StudentCertificate/LockedCertificate.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/StudentCertificate/LockedCertificate.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/StudentCertificate/LockedCertificate.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/StudentCertificate/LockedCertificate.svelte diff --git a/src/lib/components/Course/components/Ceritficate/StudentCertificate/UnlockedCertificate.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/StudentCertificate/UnlockedCertificate.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/StudentCertificate/UnlockedCertificate.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/StudentCertificate/UnlockedCertificate.svelte diff --git a/src/lib/components/Course/components/Ceritficate/certificates/Plain.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/certificates/Plain.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/certificates/Plain.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/certificates/Plain.svelte diff --git a/src/lib/components/Course/components/Ceritficate/certificates/Professional.svelte b/apps/dashboard/src/lib/components/Course/components/Ceritficate/certificates/Professional.svelte similarity index 100% rename from src/lib/components/Course/components/Ceritficate/certificates/Professional.svelte rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/certificates/Professional.svelte diff --git a/src/lib/components/Course/components/Ceritficate/mockData.js b/apps/dashboard/src/lib/components/Course/components/Ceritficate/mockData.js similarity index 78% rename from src/lib/components/Course/components/Ceritficate/mockData.js rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/mockData.js index 79e7ef54..0ff672c6 100644 --- a/src/lib/components/Course/components/Ceritficate/mockData.js +++ b/apps/dashboard/src/lib/components/Course/components/Ceritficate/mockData.js @@ -2,23 +2,23 @@ export const CertificateReportData = [ { id: 1, title: 'Total students taking course', - value: 100, + value: 100 }, { id: 2, title: 'Number of certificates issued ', - value: 45, + value: 45 }, { id: 3, title: 'Certificates left to be issued', - value: 55, + value: 55 }, { id: 4, title: 'Personalised cetificates', - value: 15, - }, + value: 15 + } ]; export const students = [ @@ -26,60 +26,60 @@ export const students = [ id: 1, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 2, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 3, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: true, + peronalized: true }, { id: 4, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 5, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 6, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 7, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 8, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 9, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: false, + peronalized: false }, { id: 10, name: 'Anyanwu joy victory', issued: '10 Dec 2020', - peronalized: true, - }, + peronalized: true + } ]; diff --git a/src/lib/components/Course/components/Ceritficate/store.js b/apps/dashboard/src/lib/components/Course/components/Ceritficate/store.js similarity index 90% rename from src/lib/components/Course/components/Ceritficate/store.js rename to apps/dashboard/src/lib/components/Course/components/Ceritficate/store.js index 98651392..ccb23cfb 100644 --- a/src/lib/components/Course/components/Ceritficate/store.js +++ b/apps/dashboard/src/lib/components/Course/components/Ceritficate/store.js @@ -5,7 +5,7 @@ export const issueCertificateModal = writable({ automatic: false, email: '', date: '', - message: '', + message: '' }); export const resetForm = () => @@ -14,5 +14,5 @@ export const resetForm = () => automatic: false, email: '', date: '', - message: '', + message: '' })); diff --git a/src/lib/components/Course/components/Lesson/AddLessonModal.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/AddLessonModal.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/AddLessonModal.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/AddLessonModal.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/DeleteConfirmation.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/DeleteConfirmation.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/DeleteConfirmation.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/DeleteConfirmation.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/EditMode.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/EditMode.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/EditMode.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/EditMode.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/MarkExerciseModal.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/MarkExerciseModal.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/MarkExerciseModal.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/MarkExerciseModal.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/OrderModal.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/OrderModal.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/OrderModal.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/OrderModal.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/Preview.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Preview.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/Preview.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Preview.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/Submissions/Individual.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/Individual.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/Submissions/Individual.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/Individual.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/Submissions/Summary.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/Summary.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/Submissions/Summary.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/Summary.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/Submissions/functions.ts b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/functions.ts similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/Submissions/functions.ts rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/functions.ts diff --git a/src/lib/components/Course/components/Lesson/Exercise/Submissions/index.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/index.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/Submissions/index.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/index.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/Submissions/store.ts b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/store.ts similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/Submissions/store.ts rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/Submissions/store.ts diff --git a/src/lib/components/Course/components/Lesson/Exercise/UpdateDescription.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/UpdateDescription.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/UpdateDescription.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/UpdateDescription.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/ViewMode.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/ViewMode.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/ViewMode.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/ViewMode.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercise/constants.js b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/constants.js similarity index 64% rename from src/lib/components/Course/components/Lesson/Exercise/constants.js rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/constants.js index f3e78a41..822fc8d8 100644 --- a/src/lib/components/Course/components/Lesson/Exercise/constants.js +++ b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/constants.js @@ -1,20 +1,20 @@ export const STATUS = { SUBMITTED: 1, IN_PROGRESS: 2, - GRADED: 3, + GRADED: 3 }; export const SELECTABLE_STATUS = [ { label: 'Submitted', - value: STATUS.SUBMITTED, + value: STATUS.SUBMITTED }, { label: 'In progress', - value: STATUS.IN_PROGRESS, + value: STATUS.IN_PROGRESS }, { label: 'Graded', - value: STATUS.GRADED, - }, + value: STATUS.GRADED + } ]; diff --git a/src/lib/components/Course/components/Lesson/Exercise/functions.js b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/functions.js similarity index 91% rename from src/lib/components/Course/components/Lesson/Exercise/functions.js rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/functions.js index 51cf92ba..594a2fd5 100644 --- a/src/lib/components/Course/components/Lesson/Exercise/functions.js +++ b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/functions.js @@ -77,15 +77,15 @@ export function getPropsForQuestion( isActive: true } : isCorrect - ? { - label: isLast ? 'Finish' : 'Next', - isActive: true, - disableOptionSelect: true - } - : { - label: 'Check', - isActive: false - } + ? { + label: isLast ? 'Finish' : 'Next', + isActive: true, + disableOptionSelect: true + } + : { + label: 'Check', + isActive: false + } }; } diff --git a/src/lib/components/Course/components/Lesson/Exercise/index.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/index.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercise/index.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercise/index.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercises/NewExerciseModal.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercises/NewExerciseModal.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercises/NewExerciseModal.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercises/NewExerciseModal.svelte diff --git a/src/lib/components/Course/components/Lesson/Exercises/index.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Exercises/index.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Exercises/index.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Exercises/index.svelte diff --git a/src/lib/components/Course/components/Lesson/Materials/Video/Index.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/Index.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/Video/Index.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/Index.svelte diff --git a/src/lib/components/Course/components/Lesson/Materials/Video/LocalVideo.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/LocalVideo.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/Video/LocalVideo.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/LocalVideo.svelte diff --git a/src/lib/components/Course/components/Lesson/Materials/Video/YoutubeVideo.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/YoutubeVideo.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/Video/YoutubeVideo.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/YoutubeVideo.svelte diff --git a/src/lib/components/Course/components/Lesson/Materials/Video/constants.js b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/constants.js similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/Video/constants.js rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/Video/constants.js diff --git a/src/lib/components/Course/components/Lesson/Materials/components/ComponentNote.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/components/ComponentNote.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/components/ComponentNote.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/components/ComponentNote.svelte diff --git a/src/lib/components/Course/components/Lesson/Materials/components/ComponentSlide.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/components/ComponentSlide.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/components/ComponentSlide.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/components/ComponentSlide.svelte diff --git a/src/lib/components/Course/components/Lesson/Materials/components/ComponentVideo.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/components/ComponentVideo.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/components/ComponentVideo.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/components/ComponentVideo.svelte diff --git a/src/lib/components/Course/components/Lesson/Materials/constants.js b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/constants.js similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/constants.js rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/constants.js diff --git a/src/lib/components/Course/components/Lesson/Materials/index.svelte b/apps/dashboard/src/lib/components/Course/components/Lesson/Materials/index.svelte similarity index 100% rename from src/lib/components/Course/components/Lesson/Materials/index.svelte rename to apps/dashboard/src/lib/components/Course/components/Lesson/Materials/index.svelte diff --git a/src/lib/components/Course/components/Lesson/functions.ts b/apps/dashboard/src/lib/components/Course/components/Lesson/functions.ts similarity index 100% rename from src/lib/components/Course/components/Lesson/functions.ts rename to apps/dashboard/src/lib/components/Course/components/Lesson/functions.ts diff --git a/src/lib/components/Course/components/Lesson/store/answers.js b/apps/dashboard/src/lib/components/Course/components/Lesson/store/answers.js similarity index 95% rename from src/lib/components/Course/components/Lesson/store/answers.js rename to apps/dashboard/src/lib/components/Course/components/Lesson/store/answers.js index 22b519ec..905c00f6 100644 --- a/src/lib/components/Course/components/Lesson/store/answers.js +++ b/apps/dashboard/src/lib/components/Course/components/Lesson/store/answers.js @@ -19,7 +19,7 @@ const initAnswerState = { currentQuestionIndex: 0, isFinished: false, progressValue: 100, - status: STATUS.PENDING, + status: STATUS.PENDING }; export const questionnaireMetaData = writable(initAnswerState); diff --git a/src/lib/components/Course/components/Lesson/store/exercise.js b/apps/dashboard/src/lib/components/Course/components/Lesson/store/exercise.js similarity index 100% rename from src/lib/components/Course/components/Lesson/store/exercise.js rename to apps/dashboard/src/lib/components/Course/components/Lesson/store/exercise.js diff --git a/src/lib/components/Course/components/Lesson/store/lessons.ts b/apps/dashboard/src/lib/components/Course/components/Lesson/store/lessons.ts similarity index 100% rename from src/lib/components/Course/components/Lesson/store/lessons.ts rename to apps/dashboard/src/lib/components/Course/components/Lesson/store/lessons.ts diff --git a/src/lib/components/Course/components/Navigation/NavExpandable.svelte b/apps/dashboard/src/lib/components/Course/components/Navigation/NavExpandable.svelte similarity index 100% rename from src/lib/components/Course/components/Navigation/NavExpandable.svelte rename to apps/dashboard/src/lib/components/Course/components/Navigation/NavExpandable.svelte diff --git a/src/lib/components/Course/components/Navigation/NavIcons.svelte b/apps/dashboard/src/lib/components/Course/components/Navigation/NavIcons.svelte similarity index 100% rename from src/lib/components/Course/components/Navigation/NavIcons.svelte rename to apps/dashboard/src/lib/components/Course/components/Navigation/NavIcons.svelte diff --git a/src/lib/components/Course/components/Navigation/index.svelte b/apps/dashboard/src/lib/components/Course/components/Navigation/index.svelte similarity index 100% rename from src/lib/components/Course/components/Navigation/index.svelte rename to apps/dashboard/src/lib/components/Course/components/Navigation/index.svelte diff --git a/src/lib/components/Course/components/People/DeleteConfirmation.svelte b/apps/dashboard/src/lib/components/Course/components/People/DeleteConfirmation.svelte similarity index 100% rename from src/lib/components/Course/components/People/DeleteConfirmation.svelte rename to apps/dashboard/src/lib/components/Course/components/People/DeleteConfirmation.svelte diff --git a/src/lib/components/Course/components/People/InviationModal.svelte b/apps/dashboard/src/lib/components/Course/components/People/InviationModal.svelte similarity index 100% rename from src/lib/components/Course/components/People/InviationModal.svelte rename to apps/dashboard/src/lib/components/Course/components/People/InviationModal.svelte diff --git a/src/lib/components/Course/components/People/store.js b/apps/dashboard/src/lib/components/Course/components/People/store.js similarity index 100% rename from src/lib/components/Course/components/People/store.js rename to apps/dashboard/src/lib/components/Course/components/People/store.js diff --git a/src/lib/components/Course/components/People/types.ts b/apps/dashboard/src/lib/components/Course/components/People/types.ts similarity index 100% rename from src/lib/components/Course/components/People/types.ts rename to apps/dashboard/src/lib/components/Course/components/People/types.ts diff --git a/src/lib/components/Course/components/Settings/DragAndDrop.svelte b/apps/dashboard/src/lib/components/Course/components/Settings/DragAndDrop.svelte similarity index 100% rename from src/lib/components/Course/components/Settings/DragAndDrop.svelte rename to apps/dashboard/src/lib/components/Course/components/Settings/DragAndDrop.svelte diff --git a/src/lib/components/Course/components/Settings/index.svelte b/apps/dashboard/src/lib/components/Course/components/Settings/index.svelte similarity index 100% rename from src/lib/components/Course/components/Settings/index.svelte rename to apps/dashboard/src/lib/components/Course/components/Settings/index.svelte diff --git a/src/lib/components/Course/components/Settings/store.js b/apps/dashboard/src/lib/components/Course/components/Settings/store.js similarity index 100% rename from src/lib/components/Course/components/Settings/store.js rename to apps/dashboard/src/lib/components/Course/components/Settings/store.js diff --git a/src/lib/components/Course/components/readme.js b/apps/dashboard/src/lib/components/Course/components/readme.js similarity index 99% rename from src/lib/components/Course/components/readme.js rename to apps/dashboard/src/lib/components/Course/components/readme.js index bf7db970..6d50fc31 100644 --- a/src/lib/components/Course/components/readme.js +++ b/apps/dashboard/src/lib/components/Course/components/readme.js @@ -23,4 +23,4 @@ Please see our [contributing.md](/contributing.md). - Arunoda Susiripala ([@arunoda](https://twitter.com/arunoda)) - Tony Kovanen ([@tonykovanen](https://twitter.com/tonykovanen)) - Dan Zajdband ([@impronunciable](https://twitter.com/impronunciable)) -` \ No newline at end of file +`; diff --git a/apps/dashboard/src/lib/components/Course/constants.js b/apps/dashboard/src/lib/components/Course/constants.js new file mode 100644 index 00000000..e5a6d05d --- /dev/null +++ b/apps/dashboard/src/lib/components/Course/constants.js @@ -0,0 +1,4 @@ +export const ROUTES = { + COURSES: 'courses', + LESSONS: 'lessons' +}; diff --git a/src/lib/components/Course/function.js b/apps/dashboard/src/lib/components/Course/function.js similarity index 100% rename from src/lib/components/Course/function.js rename to apps/dashboard/src/lib/components/Course/function.js diff --git a/src/lib/components/Course/index.svelte b/apps/dashboard/src/lib/components/Course/index.svelte similarity index 100% rename from src/lib/components/Course/index.svelte rename to apps/dashboard/src/lib/components/Course/index.svelte diff --git a/src/lib/components/Course/store.ts b/apps/dashboard/src/lib/components/Course/store.ts similarity index 100% rename from src/lib/components/Course/store.ts rename to apps/dashboard/src/lib/components/Course/store.ts diff --git a/src/lib/components/CourseContainer/index.svelte b/apps/dashboard/src/lib/components/CourseContainer/index.svelte similarity index 100% rename from src/lib/components/CourseContainer/index.svelte rename to apps/dashboard/src/lib/components/CourseContainer/index.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/Container.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/Container.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/Container.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/Container.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/DescriptionForm.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/DescriptionForm.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/DescriptionForm.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/DescriptionForm.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/GoalsForm.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/GoalsForm.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/GoalsForm.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/GoalsForm.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/HeaderForm.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/HeaderForm.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/HeaderForm.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/HeaderForm.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/InstructorForm.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/InstructorForm.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/InstructorForm.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/InstructorForm.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/PricingForm.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/PricingForm.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/PricingForm.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/PricingForm.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/RequirementForm.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/RequirementForm.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/RequirementForm.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/RequirementForm.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/ReviewFormEditor.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/ReviewFormEditor.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/ReviewFormEditor.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/ReviewFormEditor.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/ReviewsForm.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/ReviewsForm.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/ReviewsForm.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/ReviewsForm.svelte diff --git a/src/lib/components/CourseLandingPage/components/Editor/index.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/index.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/Editor/index.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/Editor/index.svelte diff --git a/src/lib/components/CourseLandingPage/components/IntersectionObserver.js b/apps/dashboard/src/lib/components/CourseLandingPage/components/IntersectionObserver.js similarity index 100% rename from src/lib/components/CourseLandingPage/components/IntersectionObserver.js rename to apps/dashboard/src/lib/components/CourseLandingPage/components/IntersectionObserver.js diff --git a/src/lib/components/CourseLandingPage/components/PaymentModal.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/PaymentModal.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/PaymentModal.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/PaymentModal.svelte diff --git a/src/lib/components/CourseLandingPage/components/PricingSection.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/components/PricingSection.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/components/PricingSection.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/components/PricingSection.svelte diff --git a/src/lib/components/CourseLandingPage/constants.ts b/apps/dashboard/src/lib/components/CourseLandingPage/constants.ts similarity index 72% rename from src/lib/components/CourseLandingPage/constants.ts rename to apps/dashboard/src/lib/components/CourseLandingPage/constants.ts index ad331c4f..de93cc0a 100644 --- a/src/lib/components/CourseLandingPage/constants.ts +++ b/apps/dashboard/src/lib/components/CourseLandingPage/constants.ts @@ -5,32 +5,32 @@ export const SECTION_KEYS = { GOALS: '#goals', LESSONS: '#lessons', REVIEWS: '#reviews', - INSTRUCTOR: '#instructor', + INSTRUCTOR: '#instructor' }; export const NAV_ITEMS = [ { key: SECTION_KEYS.REQUIREMENT, - label: 'Requirement', + label: 'Requirement' }, { key: SECTION_KEYS.DESCRIPTION, - label: 'Description', + label: 'Description' }, { key: SECTION_KEYS.GOALS, - label: 'Goals', + label: 'Goals' }, { key: SECTION_KEYS.LESSONS, - label: 'Lessons', + label: 'Lessons' }, { key: SECTION_KEYS.REVIEWS, - label: 'Reviews', + label: 'Reviews' }, { key: SECTION_KEYS.INSTRUCTOR, - label: 'Instructor', - }, + label: 'Instructor' + } ]; diff --git a/src/lib/components/CourseLandingPage/index.svelte b/apps/dashboard/src/lib/components/CourseLandingPage/index.svelte similarity index 100% rename from src/lib/components/CourseLandingPage/index.svelte rename to apps/dashboard/src/lib/components/CourseLandingPage/index.svelte diff --git a/src/lib/components/CourseLandingPage/store.js b/apps/dashboard/src/lib/components/CourseLandingPage/store.js similarity index 100% rename from src/lib/components/CourseLandingPage/store.js rename to apps/dashboard/src/lib/components/CourseLandingPage/store.js diff --git a/src/lib/components/Courses/api.js b/apps/dashboard/src/lib/components/Courses/api.js similarity index 100% rename from src/lib/components/Courses/api.js rename to apps/dashboard/src/lib/components/Courses/api.js diff --git a/src/lib/components/Courses/components/Card/Loader.svelte b/apps/dashboard/src/lib/components/Courses/components/Card/Loader.svelte similarity index 100% rename from src/lib/components/Courses/components/Card/Loader.svelte rename to apps/dashboard/src/lib/components/Courses/components/Card/Loader.svelte diff --git a/src/lib/components/Courses/components/Card/index.svelte b/apps/dashboard/src/lib/components/Courses/components/Card/index.svelte similarity index 100% rename from src/lib/components/Courses/components/Card/index.svelte rename to apps/dashboard/src/lib/components/Courses/components/Card/index.svelte diff --git a/src/lib/components/Courses/components/CopyCourseModal/index.svelte b/apps/dashboard/src/lib/components/Courses/components/CopyCourseModal/index.svelte similarity index 100% rename from src/lib/components/Courses/components/CopyCourseModal/index.svelte rename to apps/dashboard/src/lib/components/Courses/components/CopyCourseModal/index.svelte diff --git a/src/lib/components/Courses/components/NewCourseModal/index.svelte b/apps/dashboard/src/lib/components/Courses/components/NewCourseModal/index.svelte similarity index 100% rename from src/lib/components/Courses/components/NewCourseModal/index.svelte rename to apps/dashboard/src/lib/components/Courses/components/NewCourseModal/index.svelte diff --git a/src/lib/components/Courses/constants.js b/apps/dashboard/src/lib/components/Courses/constants.js similarity index 67% rename from src/lib/components/Courses/constants.js rename to apps/dashboard/src/lib/components/Courses/constants.js index eb580334..dd07c420 100644 --- a/src/lib/components/Courses/constants.js +++ b/apps/dashboard/src/lib/components/Courses/constants.js @@ -1,10 +1,10 @@ export const statuses = [ { chipClassName: 'bg-green-600 text-white', - chipLabel: 'In progress', + chipLabel: 'In progress' }, { chipClassName: 'bg-red-600 text-white', - chipLabel: 'Completed', - }, + chipLabel: 'Completed' + } ]; diff --git a/src/lib/components/Courses/functions.js b/apps/dashboard/src/lib/components/Courses/functions.js similarity index 100% rename from src/lib/components/Courses/functions.js rename to apps/dashboard/src/lib/components/Courses/functions.js diff --git a/src/lib/components/Courses/index.svelte b/apps/dashboard/src/lib/components/Courses/index.svelte similarity index 100% rename from src/lib/components/Courses/index.svelte rename to apps/dashboard/src/lib/components/Courses/index.svelte diff --git a/src/lib/components/Courses/store.ts b/apps/dashboard/src/lib/components/Courses/store.ts similarity index 100% rename from src/lib/components/Courses/store.ts rename to apps/dashboard/src/lib/components/Courses/store.ts diff --git a/src/lib/components/Dropdown/index.svelte b/apps/dashboard/src/lib/components/Dropdown/index.svelte similarity index 100% rename from src/lib/components/Dropdown/index.svelte rename to apps/dashboard/src/lib/components/Dropdown/index.svelte diff --git a/src/lib/components/Email/EmailTemplate.svelte b/apps/dashboard/src/lib/components/Email/EmailTemplate.svelte similarity index 100% rename from src/lib/components/Email/EmailTemplate.svelte rename to apps/dashboard/src/lib/components/Email/EmailTemplate.svelte diff --git a/src/lib/components/ErrorMessage/index.svelte b/apps/dashboard/src/lib/components/ErrorMessage/index.svelte similarity index 100% rename from src/lib/components/ErrorMessage/index.svelte rename to apps/dashboard/src/lib/components/ErrorMessage/index.svelte diff --git a/src/lib/components/Expandable/index.svelte b/apps/dashboard/src/lib/components/Expandable/index.svelte similarity index 100% rename from src/lib/components/Expandable/index.svelte rename to apps/dashboard/src/lib/components/Expandable/index.svelte diff --git a/src/lib/components/Footer/index.svelte b/apps/dashboard/src/lib/components/Footer/index.svelte similarity index 100% rename from src/lib/components/Footer/index.svelte rename to apps/dashboard/src/lib/components/Footer/index.svelte diff --git a/src/lib/components/Form/AutoGrowTextField.svelte b/apps/dashboard/src/lib/components/Form/AutoGrowTextField.svelte similarity index 100% rename from src/lib/components/Form/AutoGrowTextField.svelte rename to apps/dashboard/src/lib/components/Form/AutoGrowTextField.svelte diff --git a/src/lib/components/Form/Checkbox.svelte b/apps/dashboard/src/lib/components/Form/Checkbox.svelte similarity index 100% rename from src/lib/components/Form/Checkbox.svelte rename to apps/dashboard/src/lib/components/Form/Checkbox.svelte diff --git a/src/lib/components/Form/Date.svelte b/apps/dashboard/src/lib/components/Form/Date.svelte similarity index 100% rename from src/lib/components/Form/Date.svelte rename to apps/dashboard/src/lib/components/Form/Date.svelte diff --git a/src/lib/components/Form/DateTime.svelte b/apps/dashboard/src/lib/components/Form/DateTime.svelte similarity index 100% rename from src/lib/components/Form/DateTime.svelte rename to apps/dashboard/src/lib/components/Form/DateTime.svelte diff --git a/src/lib/components/Form/RadioItem.svelte b/apps/dashboard/src/lib/components/Form/RadioItem.svelte similarity index 100% rename from src/lib/components/Form/RadioItem.svelte rename to apps/dashboard/src/lib/components/Form/RadioItem.svelte diff --git a/src/lib/components/Form/Select.svelte b/apps/dashboard/src/lib/components/Form/Select.svelte similarity index 100% rename from src/lib/components/Form/Select.svelte rename to apps/dashboard/src/lib/components/Form/Select.svelte diff --git a/src/lib/components/Form/TextArea.svelte b/apps/dashboard/src/lib/components/Form/TextArea.svelte similarity index 100% rename from src/lib/components/Form/TextArea.svelte rename to apps/dashboard/src/lib/components/Form/TextArea.svelte diff --git a/src/lib/components/Form/TextField.svelte b/apps/dashboard/src/lib/components/Form/TextField.svelte similarity index 100% rename from src/lib/components/Form/TextField.svelte rename to apps/dashboard/src/lib/components/Form/TextField.svelte diff --git a/src/lib/components/HTMLRender/HTMLRender.svelte b/apps/dashboard/src/lib/components/HTMLRender/HTMLRender.svelte similarity index 100% rename from src/lib/components/HTMLRender/HTMLRender.svelte rename to apps/dashboard/src/lib/components/HTMLRender/HTMLRender.svelte diff --git a/src/lib/components/HashTags/index.svelte b/apps/dashboard/src/lib/components/HashTags/index.svelte similarity index 100% rename from src/lib/components/HashTags/index.svelte rename to apps/dashboard/src/lib/components/HashTags/index.svelte diff --git a/src/lib/components/Hoverable/index.svelte b/apps/dashboard/src/lib/components/Hoverable/index.svelte similarity index 100% rename from src/lib/components/Hoverable/index.svelte rename to apps/dashboard/src/lib/components/Hoverable/index.svelte diff --git a/src/lib/components/IconButton/index.svelte b/apps/dashboard/src/lib/components/IconButton/index.svelte similarity index 100% rename from src/lib/components/IconButton/index.svelte rename to apps/dashboard/src/lib/components/IconButton/index.svelte diff --git a/src/lib/components/Icons/ArrowTopRight.svelte b/apps/dashboard/src/lib/components/Icons/ArrowTopRight.svelte similarity index 100% rename from src/lib/components/Icons/ArrowTopRight.svelte rename to apps/dashboard/src/lib/components/Icons/ArrowTopRight.svelte diff --git a/src/lib/components/Icons/AudienceEmptyIcon.svelte b/apps/dashboard/src/lib/components/Icons/AudienceEmptyIcon.svelte similarity index 100% rename from src/lib/components/Icons/AudienceEmptyIcon.svelte rename to apps/dashboard/src/lib/components/Icons/AudienceEmptyIcon.svelte diff --git a/src/lib/components/Icons/AudienceIcon.svelte b/apps/dashboard/src/lib/components/Icons/AudienceIcon.svelte similarity index 100% rename from src/lib/components/Icons/AudienceIcon.svelte rename to apps/dashboard/src/lib/components/Icons/AudienceIcon.svelte diff --git a/src/lib/components/Icons/CommunityIcon.svelte b/apps/dashboard/src/lib/components/Icons/CommunityIcon.svelte similarity index 100% rename from src/lib/components/Icons/CommunityIcon.svelte rename to apps/dashboard/src/lib/components/Icons/CommunityIcon.svelte diff --git a/apps/dashboard/src/lib/components/Icons/CourseIcon.svelte b/apps/dashboard/src/lib/components/Icons/CourseIcon.svelte new file mode 100644 index 00000000..82d5b0be --- /dev/null +++ b/apps/dashboard/src/lib/components/Icons/CourseIcon.svelte @@ -0,0 +1,17 @@ + + + + + diff --git a/src/lib/components/Icons/CoursesEmptyIcon.svelte b/apps/dashboard/src/lib/components/Icons/CoursesEmptyIcon.svelte similarity index 100% rename from src/lib/components/Icons/CoursesEmptyIcon.svelte rename to apps/dashboard/src/lib/components/Icons/CoursesEmptyIcon.svelte diff --git a/src/lib/components/Icons/EmailSentIcon.svelte b/apps/dashboard/src/lib/components/Icons/EmailSentIcon.svelte similarity index 100% rename from src/lib/components/Icons/EmailSentIcon.svelte rename to apps/dashboard/src/lib/components/Icons/EmailSentIcon.svelte diff --git a/src/lib/components/Icons/ErrorIcon.svelte b/apps/dashboard/src/lib/components/Icons/ErrorIcon.svelte similarity index 100% rename from src/lib/components/Icons/ErrorIcon.svelte rename to apps/dashboard/src/lib/components/Icons/ErrorIcon.svelte diff --git a/src/lib/components/Icons/ErrorIconDarkMode.svelte b/apps/dashboard/src/lib/components/Icons/ErrorIconDarkMode.svelte similarity index 100% rename from src/lib/components/Icons/ErrorIconDarkMode.svelte rename to apps/dashboard/src/lib/components/Icons/ErrorIconDarkMode.svelte diff --git a/src/lib/components/Icons/ExerciseIcon.svelte b/apps/dashboard/src/lib/components/Icons/ExerciseIcon.svelte similarity index 100% rename from src/lib/components/Icons/ExerciseIcon.svelte rename to apps/dashboard/src/lib/components/Icons/ExerciseIcon.svelte diff --git a/src/lib/components/Icons/GoogleIconColored.svelte b/apps/dashboard/src/lib/components/Icons/GoogleIconColored.svelte similarity index 100% rename from src/lib/components/Icons/GoogleIconColored.svelte rename to apps/dashboard/src/lib/components/Icons/GoogleIconColored.svelte diff --git a/src/lib/components/Icons/HomeIcon.svelte b/apps/dashboard/src/lib/components/Icons/HomeIcon.svelte similarity index 100% rename from src/lib/components/Icons/HomeIcon.svelte rename to apps/dashboard/src/lib/components/Icons/HomeIcon.svelte diff --git a/src/lib/components/Icons/PasswordEye.svelte b/apps/dashboard/src/lib/components/Icons/PasswordEye.svelte similarity index 100% rename from src/lib/components/Icons/PasswordEye.svelte rename to apps/dashboard/src/lib/components/Icons/PasswordEye.svelte diff --git a/src/lib/components/Icons/QuizIcon.svelte b/apps/dashboard/src/lib/components/Icons/QuizIcon.svelte similarity index 100% rename from src/lib/components/Icons/QuizIcon.svelte rename to apps/dashboard/src/lib/components/Icons/QuizIcon.svelte diff --git a/src/lib/components/Icons/ReviewsIcon.svelte b/apps/dashboard/src/lib/components/Icons/ReviewsIcon.svelte similarity index 100% rename from src/lib/components/Icons/ReviewsIcon.svelte rename to apps/dashboard/src/lib/components/Icons/ReviewsIcon.svelte diff --git a/src/lib/components/Icons/SiteSettingsIcon.svelte b/apps/dashboard/src/lib/components/Icons/SiteSettingsIcon.svelte similarity index 100% rename from src/lib/components/Icons/SiteSettingsIcon.svelte rename to apps/dashboard/src/lib/components/Icons/SiteSettingsIcon.svelte diff --git a/src/lib/components/Icons/UserProfileIcon.svelte b/apps/dashboard/src/lib/components/Icons/UserProfileIcon.svelte similarity index 100% rename from src/lib/components/Icons/UserProfileIcon.svelte rename to apps/dashboard/src/lib/components/Icons/UserProfileIcon.svelte diff --git a/src/lib/components/LMS/SideBar.svelte b/apps/dashboard/src/lib/components/LMS/SideBar.svelte similarity index 100% rename from src/lib/components/LMS/SideBar.svelte rename to apps/dashboard/src/lib/components/LMS/SideBar.svelte diff --git a/src/lib/components/LMS/components/Learning.svelte b/apps/dashboard/src/lib/components/LMS/components/Learning.svelte similarity index 100% rename from src/lib/components/LMS/components/Learning.svelte rename to apps/dashboard/src/lib/components/LMS/components/Learning.svelte diff --git a/src/lib/components/LMS/components/Profile.svelte b/apps/dashboard/src/lib/components/LMS/components/Profile.svelte similarity index 100% rename from src/lib/components/LMS/components/Profile.svelte rename to apps/dashboard/src/lib/components/LMS/components/Profile.svelte diff --git a/src/lib/components/LMS/components/Schedule.svelte b/apps/dashboard/src/lib/components/LMS/components/Schedule.svelte similarity index 100% rename from src/lib/components/LMS/components/Schedule.svelte rename to apps/dashboard/src/lib/components/LMS/components/Schedule.svelte diff --git a/src/lib/components/MarkdownEditor/index.svelte b/apps/dashboard/src/lib/components/MarkdownEditor/index.svelte similarity index 100% rename from src/lib/components/MarkdownEditor/index.svelte rename to apps/dashboard/src/lib/components/MarkdownEditor/index.svelte diff --git a/src/lib/components/Modal/index.svelte b/apps/dashboard/src/lib/components/Modal/index.svelte similarity index 100% rename from src/lib/components/Modal/index.svelte rename to apps/dashboard/src/lib/components/Modal/index.svelte diff --git a/src/lib/components/Navigation/app.svelte b/apps/dashboard/src/lib/components/Navigation/app.svelte similarity index 100% rename from src/lib/components/Navigation/app.svelte rename to apps/dashboard/src/lib/components/Navigation/app.svelte diff --git a/src/lib/components/Navigation/index.svelte b/apps/dashboard/src/lib/components/Navigation/index.svelte similarity index 100% rename from src/lib/components/Navigation/index.svelte rename to apps/dashboard/src/lib/components/Navigation/index.svelte diff --git a/src/lib/components/Navigation/lms.svelte b/apps/dashboard/src/lib/components/Navigation/lms.svelte similarity index 100% rename from src/lib/components/Navigation/lms.svelte rename to apps/dashboard/src/lib/components/Navigation/lms.svelte diff --git a/src/lib/components/Org/AddOrgModal/AddOrgModal.svelte b/apps/dashboard/src/lib/components/Org/AddOrgModal/AddOrgModal.svelte similarity index 100% rename from src/lib/components/Org/AddOrgModal/AddOrgModal.svelte rename to apps/dashboard/src/lib/components/Org/AddOrgModal/AddOrgModal.svelte diff --git a/src/lib/components/Org/Audience/AudienceList.svelte b/apps/dashboard/src/lib/components/Org/Audience/AudienceList.svelte similarity index 100% rename from src/lib/components/Org/Audience/AudienceList.svelte rename to apps/dashboard/src/lib/components/Org/Audience/AudienceList.svelte diff --git a/src/lib/components/Org/Audience/index.svelte b/apps/dashboard/src/lib/components/Org/Audience/index.svelte similarity index 100% rename from src/lib/components/Org/Audience/index.svelte rename to apps/dashboard/src/lib/components/Org/Audience/index.svelte diff --git a/src/lib/components/Org/Community/DeleteCommentModal.svelte b/apps/dashboard/src/lib/components/Org/Community/DeleteCommentModal.svelte similarity index 100% rename from src/lib/components/Org/Community/DeleteCommentModal.svelte rename to apps/dashboard/src/lib/components/Org/Community/DeleteCommentModal.svelte diff --git a/src/lib/components/Org/Community/Loader.svelte b/apps/dashboard/src/lib/components/Org/Community/Loader.svelte similarity index 100% rename from src/lib/components/Org/Community/Loader.svelte rename to apps/dashboard/src/lib/components/Org/Community/Loader.svelte diff --git a/src/lib/components/Org/Community/index.svelte b/apps/dashboard/src/lib/components/Org/Community/index.svelte similarity index 100% rename from src/lib/components/Org/Community/index.svelte rename to apps/dashboard/src/lib/components/Org/Community/index.svelte diff --git a/src/lib/components/Org/LandingPage/PageHeader.svelte b/apps/dashboard/src/lib/components/Org/LandingPage/PageHeader.svelte similarity index 100% rename from src/lib/components/Org/LandingPage/PageHeader.svelte rename to apps/dashboard/src/lib/components/Org/LandingPage/PageHeader.svelte diff --git a/src/lib/components/Org/LandingPage/PageLoader.svelte b/apps/dashboard/src/lib/components/Org/LandingPage/PageLoader.svelte similarity index 100% rename from src/lib/components/Org/LandingPage/PageLoader.svelte rename to apps/dashboard/src/lib/components/Org/LandingPage/PageLoader.svelte diff --git a/src/lib/components/Org/LandingPage/index.svelte b/apps/dashboard/src/lib/components/Org/LandingPage/index.svelte similarity index 100% rename from src/lib/components/Org/LandingPage/index.svelte rename to apps/dashboard/src/lib/components/Org/LandingPage/index.svelte diff --git a/src/lib/components/Org/Quiz/DeleteModal.svelte b/apps/dashboard/src/lib/components/Org/Quiz/DeleteModal.svelte similarity index 100% rename from src/lib/components/Org/Quiz/DeleteModal.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/DeleteModal.svelte diff --git a/src/lib/components/Org/Quiz/Loader.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Loader.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Loader.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Loader.svelte diff --git a/src/lib/components/Org/Quiz/NewQuizModal.svelte b/apps/dashboard/src/lib/components/Org/Quiz/NewQuizModal.svelte similarity index 100% rename from src/lib/components/Org/Quiz/NewQuizModal.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/NewQuizModal.svelte diff --git a/src/lib/components/Org/Quiz/Play/ConnectToPlay.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/ConnectToPlay.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/ConnectToPlay.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/ConnectToPlay.svelte diff --git a/src/lib/components/Org/Quiz/Play/Container.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Container.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Container.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Container.svelte diff --git a/src/lib/components/Org/Quiz/Play/Header/Answer.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Header/Answer.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Header/Answer.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Header/Answer.svelte diff --git a/src/lib/components/Org/Quiz/Play/Header/CircleContent.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Header/CircleContent.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Header/CircleContent.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Header/CircleContent.svelte diff --git a/src/lib/components/Org/Quiz/Play/Header/Timer.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Header/Timer.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Header/Timer.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Header/Timer.svelte diff --git a/src/lib/components/Org/Quiz/Play/Header/index.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Header/index.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Header/index.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Header/index.svelte diff --git a/src/lib/components/Org/Quiz/Play/Players.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Players.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Players.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Players.svelte diff --git a/src/lib/components/Org/Quiz/Play/Podium.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Podium.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Podium.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Podium.svelte diff --git a/src/lib/components/Org/Quiz/Play/Preview.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Preview.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Preview.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Preview.svelte diff --git a/src/lib/components/Org/Quiz/Play/Question.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Question.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Question.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Question.svelte diff --git a/src/lib/components/Org/Quiz/Play/Scoreboard.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/Scoreboard.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/Scoreboard.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/Scoreboard.svelte diff --git a/src/lib/components/Org/Quiz/Play/index.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Play/index.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Play/index.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Play/index.svelte diff --git a/src/lib/components/Org/Quiz/QuizCard.svelte b/apps/dashboard/src/lib/components/Org/Quiz/QuizCard.svelte similarity index 100% rename from src/lib/components/Org/Quiz/QuizCard.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/QuizCard.svelte diff --git a/src/lib/components/Org/Quiz/QuizQuestion.svelte b/apps/dashboard/src/lib/components/Org/Quiz/QuizQuestion.svelte similarity index 100% rename from src/lib/components/Org/Quiz/QuizQuestion.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/QuizQuestion.svelte diff --git a/src/lib/components/Org/Quiz/Quizzes.svelte b/apps/dashboard/src/lib/components/Org/Quiz/Quizzes.svelte similarity index 100% rename from src/lib/components/Org/Quiz/Quizzes.svelte rename to apps/dashboard/src/lib/components/Org/Quiz/Quizzes.svelte diff --git a/src/lib/components/Org/ResizeableSidebar.svelte b/apps/dashboard/src/lib/components/Org/ResizeableSidebar.svelte similarity index 100% rename from src/lib/components/Org/ResizeableSidebar.svelte rename to apps/dashboard/src/lib/components/Org/ResizeableSidebar.svelte diff --git a/src/lib/components/Org/SectionTitle.svelte b/apps/dashboard/src/lib/components/Org/SectionTitle.svelte similarity index 100% rename from src/lib/components/Org/SectionTitle.svelte rename to apps/dashboard/src/lib/components/Org/SectionTitle.svelte diff --git a/src/lib/components/RootPage/RootPage.svelte b/apps/dashboard/src/lib/components/Org/Settings/Account.svelte similarity index 100% rename from src/lib/components/RootPage/RootPage.svelte rename to apps/dashboard/src/lib/components/Org/Settings/Account.svelte diff --git a/src/lib/components/Org/Settings/Domains.svelte b/apps/dashboard/src/lib/components/Org/Settings/Domains.svelte similarity index 100% rename from src/lib/components/Org/Settings/Domains.svelte rename to apps/dashboard/src/lib/components/Org/Settings/Domains.svelte diff --git a/src/lib/components/Org/Settings/Integrations.svelte b/apps/dashboard/src/lib/components/Org/Settings/Integrations.svelte similarity index 100% rename from src/lib/components/Org/Settings/Integrations.svelte rename to apps/dashboard/src/lib/components/Org/Settings/Integrations.svelte diff --git a/src/lib/components/Org/Settings/LandingpageSettings.svelte b/apps/dashboard/src/lib/components/Org/Settings/LandingpageSettings.svelte similarity index 100% rename from src/lib/components/Org/Settings/LandingpageSettings.svelte rename to apps/dashboard/src/lib/components/Org/Settings/LandingpageSettings.svelte diff --git a/src/lib/components/Org/Settings/OrgSettings.svelte b/apps/dashboard/src/lib/components/Org/Settings/OrgSettings.svelte similarity index 100% rename from src/lib/components/Org/Settings/OrgSettings.svelte rename to apps/dashboard/src/lib/components/Org/Settings/OrgSettings.svelte diff --git a/src/lib/components/Org/Settings/Profile.svelte b/apps/dashboard/src/lib/components/Org/Settings/Profile.svelte similarity index 100% rename from src/lib/components/Org/Settings/Profile.svelte rename to apps/dashboard/src/lib/components/Org/Settings/Profile.svelte diff --git a/src/lib/components/Org/Settings/TeamMembers.svelte b/apps/dashboard/src/lib/components/Org/Settings/TeamMembers.svelte similarity index 100% rename from src/lib/components/Org/Settings/TeamMembers.svelte rename to apps/dashboard/src/lib/components/Org/Settings/TeamMembers.svelte diff --git a/src/lib/components/Org/Settings/index.svelte b/apps/dashboard/src/lib/components/Org/Settings/index.svelte similarity index 100% rename from src/lib/components/Org/Settings/index.svelte rename to apps/dashboard/src/lib/components/Org/Settings/index.svelte diff --git a/src/lib/components/Org/Settings/store.ts b/apps/dashboard/src/lib/components/Org/Settings/store.ts similarity index 100% rename from src/lib/components/Org/Settings/store.ts rename to apps/dashboard/src/lib/components/Org/Settings/store.ts diff --git a/src/lib/components/Org/SideBar.svelte b/apps/dashboard/src/lib/components/Org/SideBar.svelte similarity index 100% rename from src/lib/components/Org/SideBar.svelte rename to apps/dashboard/src/lib/components/Org/SideBar.svelte diff --git a/src/lib/components/Org/store.js b/apps/dashboard/src/lib/components/Org/store.js similarity index 100% rename from src/lib/components/Org/store.js rename to apps/dashboard/src/lib/components/Org/store.js diff --git a/src/lib/components/OrgSelector/OrgSelector.svelte b/apps/dashboard/src/lib/components/OrgSelector/OrgSelector.svelte similarity index 100% rename from src/lib/components/OrgSelector/OrgSelector.svelte rename to apps/dashboard/src/lib/components/OrgSelector/OrgSelector.svelte diff --git a/src/lib/components/OrgSelector/OrgSelectorItem.svelte b/apps/dashboard/src/lib/components/OrgSelector/OrgSelectorItem.svelte similarity index 100% rename from src/lib/components/OrgSelector/OrgSelectorItem.svelte rename to apps/dashboard/src/lib/components/OrgSelector/OrgSelectorItem.svelte diff --git a/src/lib/components/PageBody/index.svelte b/apps/dashboard/src/lib/components/PageBody/index.svelte similarity index 100% rename from src/lib/components/PageBody/index.svelte rename to apps/dashboard/src/lib/components/PageBody/index.svelte diff --git a/src/lib/components/PageNav/index.svelte b/apps/dashboard/src/lib/components/PageNav/index.svelte similarity index 100% rename from src/lib/components/PageNav/index.svelte rename to apps/dashboard/src/lib/components/PageNav/index.svelte diff --git a/src/lib/components/PrimaryButton/constants.js b/apps/dashboard/src/lib/components/PrimaryButton/constants.js similarity index 100% rename from src/lib/components/PrimaryButton/constants.js rename to apps/dashboard/src/lib/components/PrimaryButton/constants.js diff --git a/src/lib/components/PrimaryButton/index.svelte b/apps/dashboard/src/lib/components/PrimaryButton/index.svelte similarity index 100% rename from src/lib/components/PrimaryButton/index.svelte rename to apps/dashboard/src/lib/components/PrimaryButton/index.svelte diff --git a/src/lib/components/PrimaryContainedButton/index.svelte b/apps/dashboard/src/lib/components/PrimaryContainedButton/index.svelte similarity index 100% rename from src/lib/components/PrimaryContainedButton/index.svelte rename to apps/dashboard/src/lib/components/PrimaryContainedButton/index.svelte diff --git a/src/lib/components/Progress/index.svelte b/apps/dashboard/src/lib/components/Progress/index.svelte similarity index 100% rename from src/lib/components/Progress/index.svelte rename to apps/dashboard/src/lib/components/Progress/index.svelte diff --git a/src/lib/components/Question/CheckboxQuestion/index.svelte b/apps/dashboard/src/lib/components/Question/CheckboxQuestion/index.svelte similarity index 100% rename from src/lib/components/Question/CheckboxQuestion/index.svelte rename to apps/dashboard/src/lib/components/Question/CheckboxQuestion/index.svelte diff --git a/src/lib/components/Question/Grade.svelte b/apps/dashboard/src/lib/components/Question/Grade.svelte similarity index 100% rename from src/lib/components/Question/Grade.svelte rename to apps/dashboard/src/lib/components/Question/Grade.svelte diff --git a/src/lib/components/Question/RadioQuestion/index.svelte b/apps/dashboard/src/lib/components/Question/RadioQuestion/index.svelte similarity index 100% rename from src/lib/components/Question/RadioQuestion/index.svelte rename to apps/dashboard/src/lib/components/Question/RadioQuestion/index.svelte diff --git a/src/lib/components/Question/TextareaQuestion/index.svelte b/apps/dashboard/src/lib/components/Question/TextareaQuestion/index.svelte similarity index 100% rename from src/lib/components/Question/TextareaQuestion/index.svelte rename to apps/dashboard/src/lib/components/Question/TextareaQuestion/index.svelte diff --git a/src/lib/components/Question/constants.ts b/apps/dashboard/src/lib/components/Question/constants.ts similarity index 72% rename from src/lib/components/Question/constants.ts rename to apps/dashboard/src/lib/components/Question/constants.ts index 8fbc21c5..c50d608e 100644 --- a/src/lib/components/Question/constants.ts +++ b/apps/dashboard/src/lib/components/Question/constants.ts @@ -1,22 +1,22 @@ export const QUESTION_TYPE = { RADIO: 1, CHECKBOX: 2, - TEXTAREA: 3, + TEXTAREA: 3 }; export const QUESTION_TYPES = [ { id: QUESTION_TYPE.RADIO, - label: 'Single answer', + label: 'Single answer' }, { id: QUESTION_TYPE.CHECKBOX, - label: 'Multiple answers', + label: 'Multiple answers' }, { id: QUESTION_TYPE.TEXTAREA, - label: 'Paragraph', - }, + label: 'Paragraph' + } ]; export const QUESTION_TEMPLATE = { @@ -27,7 +27,7 @@ export const QUESTION_TEMPLATE = { options: [ { id: 1, - value: null, - }, - ], + value: null + } + ] }; diff --git a/src/lib/components/QuestionContainer/index.svelte b/apps/dashboard/src/lib/components/QuestionContainer/index.svelte similarity index 100% rename from src/lib/components/QuestionContainer/index.svelte rename to apps/dashboard/src/lib/components/QuestionContainer/index.svelte diff --git a/src/lib/components/QuestionnaireBuilder/index.svelte b/apps/dashboard/src/lib/components/QuestionnaireBuilder/index.svelte similarity index 100% rename from src/lib/components/QuestionnaireBuilder/index.svelte rename to apps/dashboard/src/lib/components/QuestionnaireBuilder/index.svelte diff --git a/src/lib/components/RoleBasedSecurity/index.svelte b/apps/dashboard/src/lib/components/RoleBasedSecurity/index.svelte similarity index 100% rename from src/lib/components/RoleBasedSecurity/index.svelte rename to apps/dashboard/src/lib/components/RoleBasedSecurity/index.svelte diff --git a/src/lib/components/RoleBasedSecurity/store.js b/apps/dashboard/src/lib/components/RoleBasedSecurity/store.js similarity index 100% rename from src/lib/components/RoleBasedSecurity/store.js rename to apps/dashboard/src/lib/components/RoleBasedSecurity/store.js diff --git a/src/lib/utils/functions/toHtml.js b/apps/dashboard/src/lib/components/RootPage/RootPage.svelte similarity index 100% rename from src/lib/utils/functions/toHtml.js rename to apps/dashboard/src/lib/components/RootPage/RootPage.svelte diff --git a/src/lib/components/Snackbar/constants.ts b/apps/dashboard/src/lib/components/Snackbar/constants.ts similarity index 100% rename from src/lib/components/Snackbar/constants.ts rename to apps/dashboard/src/lib/components/Snackbar/constants.ts diff --git a/src/lib/components/Snackbar/index.svelte b/apps/dashboard/src/lib/components/Snackbar/index.svelte similarity index 100% rename from src/lib/components/Snackbar/index.svelte rename to apps/dashboard/src/lib/components/Snackbar/index.svelte diff --git a/src/lib/components/Snackbar/store.js b/apps/dashboard/src/lib/components/Snackbar/store.js similarity index 100% rename from src/lib/components/Snackbar/store.js rename to apps/dashboard/src/lib/components/Snackbar/store.js diff --git a/src/lib/components/Space/index.svelte b/apps/dashboard/src/lib/components/Space/index.svelte similarity index 100% rename from src/lib/components/Space/index.svelte rename to apps/dashboard/src/lib/components/Space/index.svelte diff --git a/src/lib/components/TabContent/index.svelte b/apps/dashboard/src/lib/components/TabContent/index.svelte similarity index 100% rename from src/lib/components/TabContent/index.svelte rename to apps/dashboard/src/lib/components/TabContent/index.svelte diff --git a/src/lib/components/Tabs/index.svelte b/apps/dashboard/src/lib/components/Tabs/index.svelte similarity index 100% rename from src/lib/components/Tabs/index.svelte rename to apps/dashboard/src/lib/components/Tabs/index.svelte diff --git a/src/lib/components/TextEditor/index.svelte b/apps/dashboard/src/lib/components/TextEditor/index.svelte similarity index 100% rename from src/lib/components/TextEditor/index.svelte rename to apps/dashboard/src/lib/components/TextEditor/index.svelte diff --git a/src/lib/components/ToolTip/index.svelte b/apps/dashboard/src/lib/components/ToolTip/index.svelte similarity index 100% rename from src/lib/components/ToolTip/index.svelte rename to apps/dashboard/src/lib/components/ToolTip/index.svelte diff --git a/src/lib/components/Unauthorized/index.svelte b/apps/dashboard/src/lib/components/Unauthorized/index.svelte similarity index 100% rename from src/lib/components/Unauthorized/index.svelte rename to apps/dashboard/src/lib/components/Unauthorized/index.svelte diff --git a/src/lib/components/UploadImage/index.svelte b/apps/dashboard/src/lib/components/UploadImage/index.svelte similarity index 100% rename from src/lib/components/UploadImage/index.svelte rename to apps/dashboard/src/lib/components/UploadImage/index.svelte diff --git a/src/lib/components/UploadWidget/index.svelte b/apps/dashboard/src/lib/components/UploadWidget/index.svelte similarity index 100% rename from src/lib/components/UploadWidget/index.svelte rename to apps/dashboard/src/lib/components/UploadWidget/index.svelte diff --git a/src/lib/components/UploadWidget/utils.ts b/apps/dashboard/src/lib/components/UploadWidget/utils.ts similarity index 99% rename from src/lib/components/UploadWidget/utils.ts rename to apps/dashboard/src/lib/components/UploadWidget/utils.ts index 50d81a07..2d3205ed 100644 --- a/src/lib/components/UploadWidget/utils.ts +++ b/apps/dashboard/src/lib/components/UploadWidget/utils.ts @@ -21,4 +21,4 @@ export async function queryUnsplash(searchQuery: string) { } catch (error) { console.error('Error sending fetch request', error); } -} \ No newline at end of file +} diff --git a/src/lib/components/Vote/index.svelte b/apps/dashboard/src/lib/components/Vote/index.svelte similarity index 100% rename from src/lib/components/Vote/index.svelte rename to apps/dashboard/src/lib/components/Vote/index.svelte diff --git a/src/lib/components/WelcomeModal/WelcomeModal.svelte b/apps/dashboard/src/lib/components/WelcomeModal/WelcomeModal.svelte similarity index 100% rename from src/lib/components/WelcomeModal/WelcomeModal.svelte rename to apps/dashboard/src/lib/components/WelcomeModal/WelcomeModal.svelte diff --git a/apps/dashboard/src/lib/components/WelcomeModal/store.js b/apps/dashboard/src/lib/components/WelcomeModal/store.js new file mode 100644 index 00000000..018f5784 --- /dev/null +++ b/apps/dashboard/src/lib/components/WelcomeModal/store.js @@ -0,0 +1,5 @@ +import { writable } from 'svelte/store'; + +export const welcomeModalStore = writable({ + open: false +}); diff --git a/src/lib/emails/Welcome.svelte b/apps/dashboard/src/lib/emails/Welcome.svelte similarity index 100% rename from src/lib/emails/Welcome.svelte rename to apps/dashboard/src/lib/emails/Welcome.svelte diff --git a/src/lib/mocks/css/001_css_syntax.ts b/apps/dashboard/src/lib/mocks/css/001_css_syntax.ts similarity index 88% rename from src/lib/mocks/css/001_css_syntax.ts rename to apps/dashboard/src/lib/mocks/css/001_css_syntax.ts index fe5dc510..f141fdd9 100644 --- a/src/lib/mocks/css/001_css_syntax.ts +++ b/apps/dashboard/src/lib/mocks/css/001_css_syntax.ts @@ -16,8 +16,8 @@ const template: ExerciseTemplate = { options: [ { label: 'Cascading Style Sheets', is_correct: true }, { label: 'Computer Style Sheets', is_correct: false }, - { label: 'Creative Style Sheets', is_correct: false }, - ], + { label: 'Creative Style Sheets', is_correct: false } + ] }, { title: 'How do you select an HTML element with id="demo" in CSS?', @@ -28,8 +28,8 @@ const template: ExerciseTemplate = { options: [ { label: '#demo', is_correct: true }, { label: '.demo', is_correct: false }, - { label: 'element="demo"', is_correct: false }, - ], + { label: 'element="demo"', is_correct: false } + ] }, { title: 'How do you select HTML elements with class="example" in CSS?', @@ -40,8 +40,8 @@ const template: ExerciseTemplate = { options: [ { label: '.example', is_correct: true }, { label: '#example', is_correct: false }, - { label: 'element="example"', is_correct: false }, - ], + { label: 'element="example"', is_correct: false } + ] }, { title: 'Which CSS property is used to change the text color of an element?', @@ -52,8 +52,8 @@ const template: ExerciseTemplate = { options: [ { label: 'text-color', is_correct: false }, { label: 'color', is_correct: true }, - { label: 'font-color', is_correct: false }, - ], + { label: 'font-color', is_correct: false } + ] }, { title: 'How do you add a background color for all

elements?', @@ -64,8 +64,8 @@ const template: ExerciseTemplate = { options: [ { label: 'h1 {background-color: yellow;}', is_correct: true }, { label: 'h1.background-color: yellow;', is_correct: false }, - { label: 'all.h1 {bg-color: yellow;}', is_correct: false }, - ], + { label: 'all.h1 {bg-color: yellow;}', is_correct: false } + ] }, { title: 'What is the correct CSS syntax for making all the

elements bold?', @@ -76,8 +76,8 @@ const template: ExerciseTemplate = { options: [ { label: 'p {text-style: bold;}', is_correct: false }, { label: 'p {font-weight: bold;}', is_correct: true }, - { label: 'p.bold {text-weight: bold;}', is_correct: false }, - ], + { label: 'p.bold {text-weight: bold;}', is_correct: false } + ] }, { title: 'How do you add a comment in CSS?', @@ -85,7 +85,7 @@ const template: ExerciseTemplate = { points: 2, order: 6, question_type: QuestionTypes[2], // TEXTAREA - options: [], + options: [] }, { title: 'What is the purpose of the "float" property in CSS?', @@ -93,7 +93,7 @@ const template: ExerciseTemplate = { points: 2, order: 7, question_type: QuestionTypes[2], // TEXTAREA - options: [], + options: [] }, { title: 'Explain the box model in CSS.', @@ -101,7 +101,7 @@ const template: ExerciseTemplate = { points: 1, order: 8, question_type: QuestionTypes[2], // TEXTAREA - options: [], + options: [] }, { title: 'What does CSS specificity refer to?', @@ -109,10 +109,10 @@ const template: ExerciseTemplate = { points: 2, order: 9, question_type: QuestionTypes[2], // TEXTAREA - options: [], - }, - ], - }, + options: [] + } + ] + } }; export default template; diff --git a/src/lib/mocks/css/002_css_selectors.ts b/apps/dashboard/src/lib/mocks/css/002_css_selectors.ts similarity index 85% rename from src/lib/mocks/css/002_css_selectors.ts rename to apps/dashboard/src/lib/mocks/css/002_css_selectors.ts index e0f43b0d..1c880590 100644 --- a/src/lib/mocks/css/002_css_selectors.ts +++ b/apps/dashboard/src/lib/mocks/css/002_css_selectors.ts @@ -16,8 +16,8 @@ const template: ExerciseTemplate = { options: [ { label: 'All

elements', is_correct: true }, { label: 'The first

element', is_correct: false }, - { label: 'All elements with class "h1"', is_correct: false }, - ], + { label: 'All elements with class "h1"', is_correct: false } + ] }, { title: 'Which CSS selector selects all elements with the class "example"?', @@ -28,8 +28,8 @@ const template: ExerciseTemplate = { options: [ { label: '.example', is_correct: true }, { label: '#example', is_correct: false }, - { label: 'element="example"', is_correct: false }, - ], + { label: 'element="example"', is_correct: false } + ] }, { title: 'How can you select all elements inside a
element?', @@ -40,8 +40,8 @@ const template: ExerciseTemplate = { options: [ { label: '
{ }', is_correct: false }, { label: 'div { }', is_correct: true }, - { label: '
* { }', is_correct: false }, - ], + { label: '
* { }', is_correct: false } + ] }, { title: 'Which CSS selector selects elements with the "href" attribute?', @@ -52,8 +52,8 @@ const template: ExerciseTemplate = { options: [ { label: '[href]', is_correct: true }, { label: 'href', is_correct: false }, - { label: 'element="href"', is_correct: false }, - ], + { label: 'element="href"', is_correct: false } + ] }, { title: 'How do you select an element with the id "myID"?', @@ -64,8 +64,8 @@ const template: ExerciseTemplate = { options: [ { label: '#myID', is_correct: true }, { label: '.myID', is_correct: false }, - { label: 'id="myID"', is_correct: false }, - ], + { label: 'id="myID"', is_correct: false } + ] }, { title: 'What does the CSS selector "p.intro" target?', @@ -76,8 +76,8 @@ const template: ExerciseTemplate = { options: [ { label: 'All

elements with class "intro"', is_correct: true }, { label: 'The first

element with class "intro"', is_correct: false }, - { label: 'All elements with the id "intro"', is_correct: false }, - ], + { label: 'All elements with the id "intro"', is_correct: false } + ] }, { title: 'Explain the usage of the universal selector "*" in CSS.', @@ -85,7 +85,7 @@ const template: ExerciseTemplate = { points: 2, order: 6, question_type: QuestionTypes[2], // TEXTAREA - options: [], + options: [] }, { title: 'How can you select only the first child element of a parent element?', @@ -93,7 +93,7 @@ const template: ExerciseTemplate = { points: 2, order: 7, question_type: QuestionTypes[2], // TEXTAREA - options: [], + options: [] }, { title: 'What is the purpose of pseudo-classes in CSS?', @@ -101,18 +101,19 @@ const template: ExerciseTemplate = { points: 1, order: 8, question_type: QuestionTypes[2], // TEXTAREA - options: [], + options: [] }, { - title: 'What is the difference between the "descendant" selector and the "child" selector in CSS?', + title: + 'What is the difference between the "descendant" selector and the "child" selector in CSS?', name: 'q10', points: 2, order: 9, question_type: QuestionTypes[2], // TEXTAREA - options: [], - }, - ], - }, + options: [] + } + ] + } }; export default template; diff --git a/src/lib/mocks/css/003_css_howTo.ts b/apps/dashboard/src/lib/mocks/css/003_css_howTo.ts similarity index 87% rename from src/lib/mocks/css/003_css_howTo.ts rename to apps/dashboard/src/lib/mocks/css/003_css_howTo.ts index 758edd89..ab044f66 100644 --- a/src/lib/mocks/css/003_css_howTo.ts +++ b/apps/dashboard/src/lib/mocks/css/003_css_howTo.ts @@ -16,8 +16,8 @@ const template: ExerciseTemplate = { options: [ { label: '', is_correct: true }, { label: '