thinkly.ai's Introduction
thinkly.ai's People
thinkly.ai's Issues
Submit units to firestore
Be able to push the units for the course to firestore.
Make sure to warn the user that they cant go back once the push is completed.
Notes: Upload notes
For the teacher we need to allow them to upload their own notes to the app. By pdf, doc, etc.
We want to be able to render the notes natively in the app. I do not want to render the actual pdf or doc.
Assignments: Upload assignments
We want to allow the teacher to upload notes from their device.
pdf or doc Preferably
We want to render the pdf/doc natively in app. So we will need to parse the doc.
Fetch the full curriculum at once
Fetching each unit from GPT does not produce good results. But bringing the entire curriculum all at once works fine. So we need to take in instead the user prompt on what they wish to learn and from there, we generate a curriculum.
- Get the logic for the notes worked out in NotesViewModel and NotesView
- Remake the course definition popup to take in a user prompt. Here we need to display the curriculum versions like we already have on the notes page. So take the view from the notes page and make a new pop-up.
- After the user has selected their curriculum, generate a course name and description
- Push the course and the curriculum to firestore.
Assignments: Reword assignment
We want to give teacher the ability to have their assignments reworded to make them clearer for the students.
Assignments: Make UI
We need to make a UI for Assignments
Assignments: Auto generate assignment
We want to give teachers the ability to use gpt to create an assignment for them given the topic/chapter/grade level with varying difficulty of questions
Ping server before long running calls
Ping the server before making long-running calls, ensure the server is up and running.
Add Error Handling
We need to error-handle each endpoint on the backend.
read about do-try-catch in python
Count tokens for billing
We need to count the amount of tokens used for billing.
Billing for GPT-4:
- input: $0.03USD/1k
- Ouput: $0.06USD/1k
Setup firestore on the backend and have it save the token count for each request.
We will need the user to input the UID to each backend function.
- Make sure each input to backend calls has a uid
Notes: Note questions
We want to give the student the ability to ask questions on the notes.
We will have them hold on the paragraph and then they can ask a question/ have a chat with gpt.
When the student asks a question, that chat is saved for them to go back and view.
Fix Course Definition popup
- The textbox does not work properly. Fix it
- The trash buttons should not appear once the next generate button is pressed
Generating lessons for units not working properly
If the user wants lessons for subunit number 1.2, it is outputting 1.1.1 instead of 1.2.1.
Fix this.
Check the frontend and the backend.
I think this issue is also breaking the trash function.
When the user tries to trash lessons from a bad lessonNumber (mentioned above) it does not delete properly.
Determine pricing
Create 5-10 courses that vary in length.
- Determine the average cost of each course.
- Make sure to estimate the amount of questions the user will ask daily
- Determine the average length of response.
- Set an expected number of users in the first 2 months.
- Determine the quota size we need from GPT given these numbers.
GPT Version Option
Provide the user with the option to select their preferred GPT version.
Review the current functions/prompts to assess their performance with GPT-3.5 as compared to GPT-4.
IMPORTANT: GPT-4 has been found to excel notably at generating a weekly schedule that includes due dates for assignments, quizzes, labs, and examinations. Unfortunately, GPT-3.5 lacks the ability to produce due dates.
It's crucial to alert the user that the due dates feature will not be available when using GPT-3.
Furthermore, users should be informed about potential issues arising from using different GPT versions.
Remove teacher/student signup
First version is for self learning only.
So remove the teacher/student signup.
Additionally, remove the course signup section for students.
Display network error messages to user
Display network error messages to the user when they encounter and error with the server.
Notes: Create notes
We want to have gpt make the an outline of the class for the teacher given some input parameters.
From there the course will be split into weeks -> then sections/units/chapters -> The notes themselves.
Quizzes: Auto quiz
Teachers can have gpt make a quiz for them based on a section of notes/ topic etc.
Teachers can then edit the questions and answers.
Notes: View Course
Teachers and students must be able to view the course notes.
Make sure we can render each week's:
- topics + Readings
- Generate preliminary Curriculum
- Remove locked Icon from each unit/week
- Generate several versions to select from.
- Make the unit drops downs cleaner
- Generate sub-units
- Display Sub-units
- Submit sub-units to firestore
- Be able to see if the subunits were submitted.
- Be able to trash subunits from firestore
- Generate sub-sub-units...? (We're calling them lessons now)
- Generate lessons
- Render lessons
- Save to firestore
- Fetch from firestore
- Generate text for sub-units
- Generate notes
- Render notes
- Save to firestore
- Fetch from firestore
Course Definition UI
We need a sheet view where users can define their couse
Estimated Time to Completion
Some prompts return more data and thus take longer.
We need to measure the output of these functions so we can give the user a timeframe for when they will be finished
Dockerize
Dockerize the flask app and ensure everything still works
Handle network errors
If there is an error when fetching the units for the course, we need to allow the user to continue. I would like it to be automatic, the user should not know there is an error.
We should also have a button to stop generating.
Dismiss course creation view after create course is pressed
When the user presses create course, the view should be dismissed.
Additionally, the viewModel/all data should be reset.
Refactor UnitDropDown to take in a NotesViewModel
Refactor UnitDropDown to take in a NotesViewModel instead of a bunch of closures.
We need this because we are using the same view for the lessons/ sub-subunits.
Grades: Teacher dashboard
Make the view in which teachers can view all of their students grades.
They can look at grades per assignment/quiz etc.
They can look at total grades for students and so on.
Quizzes: Do quiz
Students can do quizzes if they are open by the teacher.
Quizzes will be timed.
Grades from quiz will be submitted such that the teacher can see the marks.
Assignments: Ask about assignment
Students can ask questions about the assignment but it will not answer the question directly.
Questions about assignments will saved so students can see in the future.
Push Course definition to firestore
Decide how we want to break up the course definition (or not). And make the required service(s).
Assignments: Submit assignment
Here the students can submit their assignment.
The assignment will be auto graded by gpt and assignment itself will be accessible by the teacher.
Remake Add course pop up
We are making the app a self learning app now. Sooooo...
- Ask user what they want to learn about (textbox)
- Get learning objectives
- generate course title and description
- Add fetching logic for generateLearningObjectiveFromUserPrompt
- Add fetching logic for getCourseTitleSuggestion
- Refactor addCourse functionality to firebase.
Add the user input side to the CourseDefinitionPopup
- Make next page animation
- Grade Level
- Input course assessments
- Input timing structure
Remove all unused files
Go through the app and determine which files/functions/classes are being used.
Remove everything that is not being used.
Add icons
Make sure the app has icons for the app store/ home screen etc.
Make Service Wrappers
Make the service wrappers for:
- Course Definition
- Course Creation
- Assignments
- Quizzes
Add a dropdown to CourseList CourseButton
Add a dropdown to CourseButton to show the description of the course.
Notes: Add Depth
Given the output of GPT's notes, add a feature to add depth.
Feed: Feed view
Make the UI for the feed.
we need to be able to see:
- When new notes are published/ edited
- When assignments are active + due dates
- Quizzes are active + due dates
- When grades are published
- Any other announcements (such as days off, field trips, etc)
Fetch units/curriculum from firestore when entering course view
When the user enters the course view, we need to fetch the curriculum and render it in the view.
Regenerate lessons not showing loading view
When the lessons already exist and you press regenerate, it does not show the loading view.
Change this.
Quizzes: Upload a quiz
Teachers can create/ upload a quiz on their own.
The quiz can have a timeframe in which it can be completed.
A teacher can start the quiz when they want.
The quiz will have multiple choice only.
Refine Data Models
Our backend needs specific JSON objects in order to function correctly with the fronend.
Go over the backend objects and see how we can make them more compatible.
Once the backend models are completed, begin implementing them in swift.
Quizzes: Reword quiz
The quiz the teacher entered can be reworded such that is more concise and readable for the students.
Trash units breaking
When there is one curriculum generated and you click trash, it breaks. Please fix.
Full app check
Check over the app and make any changes/bug fixes that need to be made
- Check over the login/signin process
- Check over course definition process (create course)
- Check over course creation process (notes view)
Notes: Make UI
We need to make the UI layout for the Notes screen.
It may be handy to have sections for different units like in URCourses.
There will be a prompt for teachers to add a new section.
Then each section will contain a custom drop down.
Within the section will be the notes.
Assignments: Grade assignment
We need to:
- Generate a rubric for each question of the assignment
- Grade exercise submission based on the rubric
- Allow student to make an appeal on grade.
Make sure the course name title in course view is one line
Adjust the size of the font such that one line is all that is needed for the course title on the course view
Grades: Student dashboard
Make the student dashboard such that they can view their grades for each quiz/assignment.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.