rotimi-best / classroomio Goto Github PK
View Code? Open in Web Editor NEWLaunch your Online Bootcamp in Minutes. The Open Source Alternative to Udemy/Coursera.
Home Page: https://classroomio.com
License: GNU Affero General Public License v3.0
Launch your Online Bootcamp in Minutes. The Open Source Alternative to Udemy/Coursera.
Home Page: https://classroomio.com
License: GNU Affero General Public License v3.0
Acceptance criteria
Implement language support in repo
The whole UI should support at 5 languages
Implement a language switcher
Use https://www.arcade.software/ to build a live demo on the site.
Thanks for working on this PR.
Can you write an article that shares how you converted a sveltekit application into a mono repo?
Thanks
The text area component used in the New Course modal should use the same background color as the "Course Name" field in dark mode instead of black.
Following the setup guide in the README, come up with a Gitpod setup where people can click one button and get started contributing to the repo from their browser.
Total countries: Unique Countries list
Lesson Views: Lesson by View count
Most active student: Student by Lesson views
Difficult Lesson: Complexity metric
No response
No response
No response
No response
This would enable contributors to know if an issue is assigned to someone
I was thinking we should add semantic releases and changelogs to the project.
This feature can help
Add nested routes in documentation
Acceptance criteria:
People should be able to setup supabase locally with some mock data.
With this setup they should be able to connect it to their local env and everything should work fine.
It should show the following info:
Only for Teachers show:
4. Total Students Submitted,
5. Total students pending
Only for students show:
6. The status of the exercise, graded or in progress
No response
No response
No response
No response
There is a discrepancy where the exercise date does not correspond with today's date as expected.
The exercise date not matching today's date may cause confusion for users.
Log in to your dashboard by clicking and entering your credentials in the email and password fields.
Navigate to the "Courses" feature on your dashboard.
Choose a specific course from your created list.
Select the "Lessons" feature.
Navigate to the exercise section
Observe the exercise date displayed.
The exercise date should correspond with today's date.
The exercise date is displaying a date that does not align with today's date.
No response
No response
No response
We need a separate environment for testing
To avoid mixing testing data to production data
We would need a way to trigger deploys to a testing environment on vercel.
Setup a different supabase project that replicates prod db
No response
No response
I was thinking we should add semantic releases and changelogs to the project.
No response
No response
No response
No response
When the user clicks the "Replace" button on the landing page to replace the default cover image for a specific course, the button is not active.
The user should be able to successfully replace the default cover image without encountering any glitches.
The user can't replace the default cover image.
Macbook
Chrome, Safari
Production
Compare between Lemonsqueezy and Stripe to implement payment payout for teachers using ClassroomIO
Using a tool like Turbo repo, it would be nice to move all of our repos into one.
The repos we have now are the following:
Acceptance criteria
This repo should be converted into a mono repo
We should have the dashboard, landing-page, docs, and server all in this repo
Can we setup unit tests for the following:
apps/dashboard/lib/utils
apps/dashboard/lib/components
apps/dashboard/lib/routes
Also redesign the UI of the result page, Graded or Pending
No response
No response
No response
No response
Follow instructions to setup.
Summary: Send students a link, they answer some questions, they enter their email and we send them the result of the form they just filled.
Source: 1-on-1 with Yucheng
MVP Goal:
On my dashboard, I tried creating a new organization, but it keeps crashing and returning an error 404 page.
Upon selecting the "add organization" button, users should be able to successfully add a new organization without experiencing any crashes.
Creating a new organization keeps crashing.
https://jam.dev/c/b9a98536-35b9-410e-ae7f-a58baf7ca0e5
Macbook
Chrome
Production
A teacher should be able to leave comments in any question of a submitted exercise
The interaction will be on this page
As a student, I should be able to view the comments of my teacher and leave replies on the result page
No response
No response
No response
No response
A script that runs as a cron job to generate some analytics data for each organization
More features TBD
Sometimes, you might want to use the software in a regular VM (or small host, like a Raspberry Pi) without relying on Docker, especially outside a purely dev oriented environment.
From my personal point of view, I'm not using Docker nor want to manage containers in production. Doing a git pull and npm build is often enough to start in production mode and serve all of it via a reverse proxy (eg Nginx+LE). This also help to contain the dependency creep by knowing exactly the services you need and self-host them the way you want.
Nothing specific is required outside to document how to achieve it in the official doc or README file. I'm open to participate in that direction if it's OK for the project :)
No response
No response
When you publish a course and students want to join, they'd need to signup. If they choose to signup on Google, after successfully authenticating, instead of redirecting the student back to the subdomain (*.classroomio.com), the student is redirected to app.classroomio.com
No response
Redirect the user back to the subdomain
Redirect the user back to the course invite page.
Redirects to app.classroomio.com
User never gets to join a course.
No response
No response
No response
production
The idea is that users can add code snippets or upload images to any question in an exercise
This is the view of the an exercise page
No response
No response
No response
No response
Right now we have a local storage based authentication, the tokens are stored in local storage however the problem with this is spinners on the client side to get auth data before using the app.
Cookies based auth would make it faster for a user to see content faster.
No response
No response
No response
No response
When the user clicks the "Replace" button on the landing page to replace the default cover image for a specific course, the button is not active.
The user should be able to successfully replace the default cover image without encountering any glitches.
The user can't replace the default cover image.
Macbook
Chrome, Safari
Production
A user should be able to run the whole classroomio stack via docker.
Anyone interested in selfhosting can do that in a few steps
No response
No response
User should be able to mark a course as favourite and it should be shown on the home page
No response
No response
No response
No response
Enforce RLS on every table for security.
Avoids anyone from accessing/manipulating data in the db
Learn more from the supabase docs on how to implement RLS and what level of RLS is required.
No response
No response
Right now users can upload any size of images as their banner cover image
Watch this jam video: https://jam.dev/c/2044bdfc-638f-4e1c-b0dd-0f5f4a903946
Also make sure to update the text saying file limit is 500KB
Any file size can be uploaded
No response
All
All
All
Expectance criteria:
Acceptance criteria
After sending an invite to a specific user, attempting to send another invite using the same credentials does not return the expected error message indicating that the user already exists. The system shows the duplicate user details, and even after the user has accepted the invite, the system can still regenerate a new invite.
Log in to the application.
Navigate to the "Settings" feature.
Navigate to the invite section.
Send an invite to a specific user by entering their email address.
Attempt to send another invite to the same user with the same credentials.
An error message should be displayed, indicating that the user already exists and preventing the duplicate invite.
The absence of the error message may lead to confusion and potential duplicate user entries.
No error message is shown, and the application allows the sending of a duplicate invite using the same credentials.
No response
No response
No response
No response
Below is the sequence of event on signup
This task is about adding step 4
.
/org/org_slug_name/courses?create=true
When I right click on a card, ONLY on the Dashboard, show the following options:
For the UI behavior, use this component: https://carbon-components-svelte.onrender.com/components/ContextMenu
No response
No response
No response
No response
Description:
After the user logs out, the organization's name persists on the login and signup pages.
(I noticed that after I'd logged out of my previous account, my organization name still appeared on the login and signup page until I refreshed my page.)
Steps to reproduce:
Acceptance Criteria:
Upon a successful log-out, the organization's name and details should no longer be visible.
When I hit the "Enter" button while typing in TinyMCE editor, the focus goes to the current tab item of the page
https://jam.dev/c/e644703a-e464-4c6f-af54-34fce718580f
It should go to a new line and the text cursor should remain in the editor
The focus leaves the TinyMCE editor and goes to the current tab
No response
All
Chrome
All
When a user wants to ask a new question, beside the title of the question on the right hand side, ask the user to select a course (from the courses they belong to) and it should be a required field.
Once a course is associated with a question, make sure the query to fetch the questions are filtered by a course that the current user belongs to.
Requirements to work on this task:
Reach out to @rotimi-best if you are interested in picking this one
Add the following how to guides into the docs without any content
No response
No response
No response
No response
can any designer here come up with an image like this if I provide you with a light and dark mode image?
I got this attached image from this article
I want to use this kind of image on classroomio.com's landing page, instead of the video that shows the dark/light mode.
It shows a key part of the web application in dark/light mode
No response
No response
No response
When grading and you update the grade for a question, the input disappears
From the image below, you need to add a restart icon, (we use carbon icons) just beside the "Course Link" text.
When clicked it should regenerate the slug of a course.
The slug of a course is everything after this https://ciodevs.classroomio.com/course/{SLUG_HERE}
.
Pay attention to how we implement icons in the project, we first import a component call IconButton
, pass some props to it and then wrap the icon around it. See this code for example
The icon to use is this one from Carbon Icons - Refresh
and the prop size should be 16
generateSlug
And then it is used here:
If you rename the title of the course and you want a new slug
Already explained above
No response
Already explained above
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.