Giter Club home page Giter Club logo

readr's Introduction

readr's People

Contributors

techie09 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

readr's Issues

base URL for singleton not working

there is a URL on the Login screen that an end-user can change to point to a different server, The URL does not seem to be working and prevents the client-side from making calls to the server side.

Add ability to Read Test using OCR

Using Cognitive Services and Optical Character Recognition (OCR) provide basic ability to read text and store data for the session if the confidence is above 85?

Is fragment of #7

Restructure Repository Pattern

I recently found out that there is a lot of opinions about how Object Relational Mapping (ORM) tools are an anti-pattern as they are creating an abstraction that is meaningless. Here is an example article defining some arguments on why ORMs are bad.

https://www.yegor256.com/2014/12/01/orm-offensive-anti-pattern.html

I was taught however that Data Access Layers (DALs) are important to creating a layer of separation (usually by abstraction) to allow for decoupling of datastore technology. In .Net, that usually means using Entity Framework (EF) with something like Fluent Validation and Dependency Injection for increased testability. All those create layers and layers of abstractions and would require creating multiple interfaces and classes just to implement one small table with two columns.

In this project, I started to use the Repository pattern and fell for a common mistake. It felt like a solid implementation, but it is one that is not as flexible or scalable as it should be. Check out the article for more information on how to improve the implementation.

https://brianbu.com/2019/09/25/the-repository-pattern-isnt-an-anti-pattern-youre-just-doing-it-wrong/

Stop a Readr Session

Provide the end-user a way to stop a Readr session when they are finished reading the specific material.

this is required to complete #5

AC:

  • the User can press a button to stop a session
  • The session should end collecting any further data for the session

Manage User Account Creation & Login

This is required to complete Issue #5.

AC:

  • An end-user can create an account
  • An end-user can enter their username to login

Note:
I am intentionally ignoring a proper Authentication system such as IdentityServer since the focus of this prototype is the develop functionality for our application, A Proper Authentication system should be installed when creating a full application.

update routings to match best practices

I should use HttpPut if I am inserting (and only inserting) data. The body of the data should be in the html content. If I attempt to Update using an HttpPut I should get an Invalid Operation Exception.

I should use HttpPost when I am upserting (update or Insert) data. The url should contain the Id if the id is known, otherwise it should be absent in the url call and an insert will occur. The body of the data should be in the html content. Inserts and updates will both work.

I should use HttpGet when I am retriving data based on a value(such as an id, or username).

Develop Readr Getting Started Guide Documentation

Add a Getting Started guide for Readr with the focus to have a basic overview for users who want to learn what is the project's purpose. This will include information on how to download, install, and setup a local client and include more advanced information on how to host the server and database.

On Login, Begin a Session

After the end-user logs in, the start of a new session should prompt the end-user for an ISBN. The End-user may enter in the ISBN and can optionally enter a description of the session as well, or if the End-user cannot provide an ISBN, then the end-user can skip the ISBN requirement, but the Description field will be required.

This case is required to complete #5

AC:

  • Prompt User for an ISBN
  • If an ISBN is provided, optionally allow the user to set a description
  • if the ISBN is not provided, require the user to set a description.

Add Session Based Workflow

Description:

Session based Workflow should require an end-user to login with their account to begin a session, since some publications do not contain an ISBN, the ISBN would be recommended but not required. A description field would be required if the ISBN is not given. The description is information to help the end-user know what material is being read during the session. An example would be reading the New York Times on Sunday 1/26/2020. This would be information to cite in the description since an ISBN is not available. The user should be able to stop the session, and start a new session while logged in.

Tasks:

  • Complete Auth Account Management #29
  • Manage Session Start Data #30
  • Add functionality to Stop a Session #31

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.