sfbrigade / compass Goto Github PK
View Code? Open in Web Editor NEWHome Page: https://compass-chi.vercel.app
Home Page: https://compass-chi.vercel.app
There should be a global error handler passed as an option to the trpc provider in src/pages/_app.tsx
that shows a toast or alert on API errors.
Eventually will be used by paras to submit work.
Created using "Draw.io" -> XML file.
Edit:(Link removed)
How to Add to Google Drive:
Then you should be able to view the link!
As a Para, I need to be able to to collect Data using a digital counter
5/17- Counter is designed and has been send to DS team
Each card represents a data collection activity for the para.
Flesh out the API - inputs needed to render the card, and create reusable components that follow the design system in collaboration with the UX team.
As a para, once I've initiated a task and read the instructions, I have an interface to record data following the guidelines of the CMs instructions. If I need to, I can access the instructions for the task without disrupting the task in progress or losing any information that I've already entered. I can easily count a student's successes and attempts at a given benchmark and add any contextual qualitative notes. When I'm done, I submit the data and receive confirmation that the task is completed. The system saves the time and date alongside the data I've input and my name (but doesn't need to tell me that).
To consider: what should the behavior be if a para exits a task in progress?
As a case manager, I need to represent my student's IEP goals in Compass. I can add as many IEP goals as I need to per student. Goals have titles and descriptions. This interaction can be as simple as pasting in the official IEP description.
On each individual student's page, make an IEP parent component to put Goals into. (In pages/students/student_id)
In order to make an archive property for paras, we will need relational tables to describe CM's relation to paras, using the UUID's for both parties:
ALSO make function getAllParas --> getMyParas
This may change slightly based upon if/how we restructure the CM and Para to both be Users.
Backend Make schema/table for CMs-to-paras
Backend: make a "create para" action in the front end flow through this sequence of queries in the back end(while carrying CM uuid as part of the req object or otherwise having access to it in the backend):
Backend: Put CM's uuid and para uuid in CM-to-para relational table
Frontend: Render para lists as the response to queries of the CM-to-para table (CM's uuid in that specific relational table)
Front-end: Make button on Para's individual page for archiving para
Edit 5/09/2023 (After convo with Max)
The purpose of this issue is to restructure the para flow as a multipurpose USER flow, meaning:
Notes:
As a first-time para, it is important for me:
This will enable me to actively contribute to tracking the student's progress and providing the necessary support throughout students' educational journey.
Currently, the user logging in is added to the user table automatically through an internalized createUser function in a local (non-global) scope in backend/auth/adapter.ts
It would be ideal to create/reformat and export a createUser function that can be used globally in backend/auth/adapter.ts AND in the user.ts or para.ts routers files.
#login
Either backend/*
or @/backend/*
, not both.
In order to make an archive property for students, we will need relational tables to describe CM's relation to students, using the UUID's for both parties:
This may change slightly based upon if/how we restructure the CM and Para to both be Users.
Backend Make schema/table for CMs-to-students
Backend: make a "create student" action in the front end flow through this sequence of queries in the back end(while carrying CM uuid as part of the req object or otherwise having access to it in the backend):
Backend: Put CM's uuid and student's uuid in CM-to-student relational table (Do we need student names here also?)
Frontend: Render student lists as the response to queries of the CM-to-student table (CM's uuid in that specific relational table)
Front-end: Make button for archiving student
Back-end: have CM-adding-student flow in. routers/students.ts:
Para experience
As a para, I want to see a list of prioritized benchmark data collection tasks that are assigned to me. The most important or urgent tasks are most prominent but if I need to, I can look through other benchmark data collection tasks associated with any student on my classroom's caseload. I can easily initiate a task from this view.
Flesh out the data model parts that are needed for the MVP CM and para flows.
Parts to flesh out:
When a CM adds a new para, send an email invitation to the para's email. We will send an email invitation only if the para hasn't logged into Compass yet.
Things to figure out:
This component will be a container for the other elements for the trial data collection like counters, timer etc.
The Student list and the Para/staff list use the same form format and we could reuse code by making an interface or class and making these two forms be instances of that interface.
Case manager experience
As a case manager, I can add a benchmark to a student's IEP goal. It should be clear that this is how I'm going to be able to collect and view data for this goal. A goal can have as many benchmarks as I want.
When creating a benchmark, I define instructions that will be conveyed to any para collecting data for this benchmark.
I also define what type of data will be collected (so far, we've only talked successes/attempts, but more data formats will be possible in the future).
Benchmarks have names and defined objectives (represented as a % of successes out of attempts). Benchmarks will have baseline metrics as well but those will be addressed in a separate ticket.
Implement one rpc
#backend
Para experience
As a para, I need to be able to log in to the compass app. I should be able to use my email address and a password of my choosing. If I forget my password, I can request a reset be sent to my email. This is a mobile first experience.
Create sign in wireframe and FE / BE implementation
Figure out role selection with product team for folks that land directly on our site
Design Preview:
SourceLink
#login
Linked to #62 , for the creation of the Relational CM -> Para table and Relational CM -> student table
This may change slightly based upon if/how we restructure the CM and Para to both be Users.
Example flaky run: https://github.com/sfbrigade/compass/actions/runs/5182125681/attempts/1
As a para, I can read through instructions written by a case manager about how to properly conduct a benchmark data collection task. These instructions are available when I initiate the task. If it's not my first time conducting the task, the instructions can be skipped or may not show at all.
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.