edify-front-end's People
edify-front-end's Issues
Set up CI for the React Web App
Configure equation editor to reopen with equation after equation added
Add test for adding blocks between blocks
Set up a Java Spring Web App
Add a create flow
This flow would allow a user to create what we would call a 'Notebook' with the following components:
- Notes
- This would allow a user to type up their notes. This could be a rich text editor
- Flash cards
- This would allow a user to create question-answer type flash cards
Fix save date formatting
The save date message is quite verbose at the moment, need to clean it up.
Remove unnecessary components from template
The template has several components that we might not need in their current form. It is somewhat important they are removed to make it easier to reason about the code.
Display all created notes
Add flashcards block component
This should be a flow consisting of:
A button that opens a flash card form.A question (front) and answer (back) text fields.An add button in the form that onClick:
-Creates a new box with recently added card.
-Adds to an existing box if box exists.Allows sideways scroll through added cards: Downwards scroll was implemented.Allows editing current card in view.
Delete using button deletes block based on last focus rather than corresponding block
Add keyboard shortcuts for adding cells
Update auth flow to work with API
Currently, API requests are unauthenticated and the auth flow is a bit hacky. Before website deployment, this needs to be fixed.
Route to individual note
Make add elements toolbar sticky
Add elements toolbar isn't currently sticky and disappears if you scroll too far down on the page
Add delete note icon to home page tiles
Fix blocks losing focus on a click outside their area
Even if focus is lost, it should show last block that was in focus to guide the user back.
Set up CI for the Java Spring Web App
Fix save button on RichTextEditor equation tooltip
The save button doesn't work for saving a formula. Only hitting enter saves a formula and displays it.
Allow saving notes
This is just a matter of linking up the right API endpoint
Add deck/card delete dialog
Add a dialog that confirms deleting flashcard or a deck of flashcards.
Add custom image handler
Currently, rich text editor image uploads will encode the image in base64 and send that as data. It would be better to add a custom handler that allows for uploading an image (storing it to s3 - need to think about security here) and then displaying the link as an embedded document.
Add preloader for loading existing notes
Add UI tests
Set up a React Web App
Add mock api
Add mock api to deliver mock data for various routes
Create flashcard review flow
This flow fetches flashcards scheduled for review from the database and displays them to the user for testing their recall.
Feature Spec:
- Fetches cards for review from database. If no cards pending, show appropriate message.
- Shows a progress bar for cards remaining.
- User can choose whether card was remembered or not remembered (to start off with).
- Pushes card recall result back to the database.
Depends on:
- API Endpoint (not needed urgently since data can be mocked).
- Refactoring the flashcard component to be more general purpose.
Features Wishlist
In no particular order, a list of features that would be nice to have at some point in time:
- A dashboard view for course leaders to track engagement with their notes.
- A PDF to Rich Notes import.
- An automated suggestion for improving flashcard quality.
- Zettelkasten
- Being able to make notes public.
- Being able to fork public notes for reference/editing.
- More extensive flashcard editing (currently it is only text).
- Publish notes with flashcards on the internet to organically drive traffic to the site. Some sort of blog publishing trick should work here.
- Custom in-text review questions (MCQ, type answers) - kind of like Khan Academy.
- Web extension to add flashcard in arbitrary content.
- Support for subcontinental languages.
Set up linter
Housekeeping tasks
- Fix review page bug
- Add delete button for notes on homepage
- Add documentation for all components
- Remove commented out snippets
- Remove console.logs
- Add logging interface
- Increase test coverage to 70%
- Improve test execution times
Deploy front end online
Revisit code mirror dependency hot fix before launch
Add authentication and private routes
Add Google and Microsoft auth using Firebase and secure pages to prevent unauthorised access.
Build control flow to add, edit and run code
This is a brain dump for what the ideal code execution environment would look like and what features of the kernel need to be supported on the front end.
Add routes test
Currently, routes test do not work with auth context. Find a fix and reimplement them.
Add navbar to the right of the page
Fix to/from react router navigation
Having a properly working to/from react router navigation would enable us to redirect users directly to review page for their daily session from an email.
Make deleting blocks more intuitive
Currently deleting a block is hard to do, add explicit button to remove a block.
Replace equation editor tooltip with dialog
This should be addressed quickly given the component already exists.
Add rich text block component
Features:
The styles supported by this component are (to start off with):
- Page Title
- Heading
- Subheading
- Paragraph
- Bold
- Italic
- Underlined
- Math
The interaction is carried out using a popover menu (this might get us in IP trouble, so we might have to think of something else) and using a toolbar on the page.
Testing:
Each interaction (toolbar or other) must be tested to produce the expected styles.
Testing for math is not clear at the moment. Most likely a library would take care of it.
Revisit delete on flashcard blocks
Flashcard blocks still have focus and deleting issues. Integration tests aren't catching them. Revisit this
Enable review page to work with a custom user dependent link from email for review sessions
The integration of the auth with review page should be such that users can:
Click on the email CTA -> be asked to login -> are redirected to Review page on success with the cards due for review.
Add deeplinks to review flashcards
Add deep links to flashcards so that user can access the deck the flashcard came from and review the note further.
Fix Editing Note highlights New Note
Currently, if you click on a note on the home page, it opens the respective note in the edit view but also highlights "New Note" in the sidebar, implying that this is a new note. This behaviour is counterintuitive. This requires a fix.
Add test for deleting blocks using keyboard shortcut
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.