GithubHelp home page GithubHelp logo

pass's People

Contributors

andycwilliams avatar benzelcurry avatar bingeboy avatar brancwill avatar cameronabel avatar cnease10 avatar danicaboe avatar dionsat avatar emilysellers avatar faddah avatar fighawkins avatar goodguygregory avatar jaegif avatar jared-krajewski avatar jonnymc94 avatar joshua-cornett avatar k-mack avatar leekahung avatar masenmatthews avatar milofultz avatar ogorman89 avatar raspber avatar richestrinh avatar rioredwards avatar russfraze avatar timbot1789 avatar tomit4 avatar tryngagear avatar xscottxbrownx avatar zakeriya23 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pass's Issues

Going over/updating JSDoc comments in codebase

Is your feature request related to a problem? Please describe.
Making sure JSDoc comments are correct and up to date

Describe the solution you'd like
Going over and modifying JSDoc comments if needed

Describe alternatives you've considered
None

Additional context
None

Multi-file Upload

Is your feature request related to a problem? Please describe.
Current version of PASS supports single file uploads to Solid via HTML input element

Describe the solution you'd like
HTML input allows for multi-file uploads with the multiple attribute. We just need to update these elements and refactor all relevant components and functions

Add A Code Linter to the Project

As the project gets larger we will need to maintain consistency among developers.

the team has decided to implement a linting tool.

I plan to work through this with the team and post a documentation trail here for future projects as well.

Cache dependencies on GH Actions

Is your feature request related to a problem? Please describe.
The GH Action used to the build the project downloads the project's dependencies every time. This is a waste of system resources. Time is money, and in this case, time is carbon ๐ŸŒŽโค๏ธ.

Describe the solution you'd like
Use the GH Actions cache to reuse the dependencies downloaded from a previous job.

Describe alternatives you've considered
None.

Additional context
None.

Research: Location and Travel Data

There are situations in which a validated history of visits and trips would be very helpful. For Example being able to show that you travelled to a meeting on LT Rail could enable reimbursement. What is the best way to capture this information Google has Location Services and a Mode (travel) Service. Could these be used? Is there a non proprietary way to capture and analyse this data directly from phone sensors into a POD.

Research: DataPODS

Research the DataPODS data infrastructure and the type of tooling that would be required to integrate this system.
Research how to integrate PDF or email files into this system.

Updating .gitignore for existing version of PASS

Is your feature request related to a problem? Please describe.
Previous .gitignore file includes items that was relevant to a previous version of PASS when it was still using Parcel as a bundler instead of Vite.

Describe the solution you'd like
The fix for this is simply to remove the paths that no longer exist.

Creating guard rails for setDocAclPermission

Is your feature request related to a problem? Please describe.
At the moment, users can revoke their access to their own file container in their pod and lose access to it

Describe the solution you'd like
Creating an early return in case Pod url are their own and send an error message which states users cannot change ACL permission of their own Pod on themselves. If they don't want the file on their Pod, they can simply delete it from their Pod.

Describe alternatives you've considered
None

Additional context
None

General review/refactoring of codebase for typos/errors/bugs

Is your feature request related to a problem? Please describe.
A general review of the codebase for typos/errors/bugs (no new features will be added)

Describe the solution you'd like
Going over each file for typos/errors/bugs and modifying them if needed

Describe alternatives you've considered
None

Additional context
None

Fixing typo in Logout.jsx

Is your feature request related to a problem? Please describe.
Line 15 jsx is wrong. The id should be "logout" not "login".

Describe the solution you'd like
Fixing type from "login" to "logout"

Describe alternatives you've considered
None

Additional context
None

Application Routing

Is your feature request related to a problem? Please describe.
At the moment, PASS uses a single page to render everything. We're starting to mess around with a home screen, so adding routing to the Application would be a good idea.

Describe the solution you'd like
Have already implemented some routing to PASS using React Router. Can expand on that.

Update Readme

Update the readme with information about the project.

Chrome's file explorer crashing Application

Describe the bug
On MacOS 13.2.1 Ventura, Chrome 111 seems to crash whenever user attempts to upload a file using PASS

To Reproduce
Steps to reproduce the behavior:

  1. Login into PASS
  2. Click on "Choose File"
  3. See error

Expected behavior
Expect to open Chrome's file explorer GUI

Screenshots
Difficult to show via screenshot, the browser just crashes (Chrome window with application disappears) after clicking on "Choose File"

Desktop (please complete the following information):

  • OS: MacOS 13.2.1
  • Browser: Chrome
  • Version 111

Decode license barcodes for verification

Is your feature request related to a problem? Please describe.
Scans for and decodes barcodes from input files to obtain data for verification purposes. Eventually to be implemented into file upload with creation of .ttl file containing the data.

Describe the solution you'd like
Working barcode scanner from input files.

Describe alternatives you've considered
various open source barcode scanners. chose zxing library because it seemed to be the most popular and well supported.

Additional context
this is mainly for proof of concept and is done in a single HTML file(barcode_scanner.html) with the code in a script tag. Working on further organizing the data into a more readable content

Removing duplicate files and lines

Describe the bug
Not exactly a bug, but there seems to be duplicate files and lines on Development branch

To Reproduce
In package.json, check Line 50 and 53. They're both prettier 2.8.4 packages. Duplicate need to be removed.
As for .prettier.rc, the configuration file for prettier is currently being fulfilled by .prettierrc.js. Extraneous file need to be removed.

Expected behavior
Expect package.json to just contain one prettier and prettier to read .prettierrc.js.

Screenshots
Can be checked directly in package.json and .prettier.rc in Development branch.

Desktop (please complete the following information):

  • OS: MacOS
  • Browser: Chrome
  • Version 110

Smartphone (please complete the following information):
Not using phone to check this bug

Additional context
None

Issue with initial routing /PASS/

Describe the bug
Routing for the most part seems to be working as expected. If users login from /PASS/ it gets redirected to /PASS/home/. However, if users type /PASS/ manually, users get stuck in the login screen despite being logged in. Technically it should have redirected to /PASS/home/ with React Router, but it doesn't seem to be working.

The existing Router we're using is BrowerRouter. However, we might be changing to HashRouter to make PASS routing compatible with GitHub Pages so solutions to this should take account of URLs created by HashRouter.

Update: The problem is a bit different with HashRouter. Using localhost:5173/PASS/#/PASS/ does redirect us back to localhost:5173/PASS/#/PASS/home/ as intended. However, if we do localhost:5173/PASS/, we get redirected to localhost:5173/PASS/#/PASS/ instead of all the way back to localhost:5173/PASS/#/PASS/home/.

To Reproduce

  1. Log into PASS
  2. Change pathing to /PASS/
  3. See problem (You're logged in, but you're stuck in /PASS/; you can fix this by refreshing the webpage page, which takes us back to /PASS/home/, but it doesn't redirect automatically)

Expected behavior
Expect /PASS/ to redirect to /PASS/home/ if user is logged in

Update README

Add info on Inrupt, RDFs, Security, team members, link to onboarding, code of conduct(?)

Allow for file and ttl file updates

Is your feature request related to a problem? Please describe.
At the moment, PASS is set up that you need to delete a previous file in a container in order to update the file and ttl file description.

Describe the solution you'd like
Refactor uploadDocument to just upload documents into pass and create a function that allows for file updates.

Describe alternatives you've considered
None

Additional context
None

User list management

Is your feature request related to a problem? Please describe.
Will want to create list of users that people can manage (i.e. add or delete from list)

Describe the solution you'd like
Create a new Form component that could manage CRUD-like operations for adding/deleting users from a user's list on their Pod

Describe alternatives you've considered
None

Additional context
None

Refactoring FormSection and Form components

Is your feature request related to a problem? Please describe.
FormSection and Form components can be refactored a little further by moving form title inside FormSection instead of inside the Form component

Describe the solution you'd like
Refactoring section title of Form components to FormSection instead

Describe alternatives you've considered
None

Additional context
None

Refresh Problem on GitHub Pages vs. Local build

Describe the bug
At the moment, PASS uses BrowerRouter from React Router to help with routing and path redirecting. However, on GitHub Pages, this solution does not work as BrowerRouter is not compatible with GitHub Pages. This seems to be an ongoing issue in the community not related to PASS (see: https://stackoverflow.com/questions/71984401/react-router-not-working-with-github-pages), but it's something we would need to take care of.

To Reproduce

  1. Log into PASS
  2. Refresh page
  3. See problem (instead of being redirected back, it returns 404 Not Found)

Expected behavior
Upon refresh, I expect this to redirect me back to where I was previously

Potential solution
Ideally, we'll switch to using HashRouter instead for routing. I have attempted this solution before replacing BrowerRouter with HashRouter, but it seems Inrupt takes issue with hash fragments when I simply use window.location.href as by redirectUrl.

So to fix it, I've took out the hash fragment by running window.location.href.split("#")[0]. This will give us the non-hashed url, of which HashRouter will accept and redirect to the hash version in production. For example, you type localhost:5173/PASS/ (a URL that both GitHub Pages and Inrupt's library accepts), it'll redirect to localhost:5173/PASS/#/PASS/.

Deploy React app to project's GitHub Page via GitHub Actions

Is your feature request related to a problem? Please describe.
Automated deployments will eliminate the overhead of manual deployments.

Describe the solution you'd like
When a branch is merged into Master, the React App on Master is built and deployed to GitHub Pages.

Describe alternatives you've considered
None.

Additional context
None.

Inactivity message

Is your feature request related to a problem? Please describe.
More of a "quality of life" feature if anything. But perhaps a user has been inactive for a certain amount of time. Perhaps we could create a small prompt that alerts/remind the user on whether or not they would like to log out since they have not been using PASS for a certain amount of time.

Describe the solution you'd like
Perhaps create a modal or a pop-up or something with a message. Could be closed easily.

Research: Email and Document Capture

Important communications received on email should be easy to move into a POD. What is the best way to do this. Could we design a simple plugin to an open source email client that makes dragging important emails, documents and other attachments into the POD simple.

Add clipboard functionality to pod URLs

Is your feature request related to a problem? Please describe.
While there's a select user functionality at the moment, there could be times when people just want to copy and paste a user's link.

Describe the solution you'd like
Perhaps we could use something like the Clipboard API for what we need.

SSL Certification expired for opencommons.net

Describe the bug
The SSL certificate for opencommons.net so it's not possible to log with it as our Solid provider. Unable to log in because if it.

To Reproduce

  1. Go to PASS
  2. Attempt login
  3. See problem (can't login)

Expected behavior
Log into PASS like normal.

Refactoring session-core, session-helper, and statusReducer

Is your feature request related to a problem? Please describe.
Current state of session-core, session-helper, and statusReducer doesn't seem to be too WET at the moment on Development. However, I want to see if I can make it more DRY before pushing the existing version of Development to Master.

Describe the solution you'd like
Would like to comb over code one more time to see what can be refactored, clarified functions with better variable name, etc., especially since #71 had just recently been merged into Development with the ttl file update functionality.

Describe alternatives you've considered
None

Additional context
None

Build functionality for cross pod interactions

Is your feature request related to a problem? Please describe.
Still need to implement cross pod querying/writing

Describe the solution you'd like
Porting the existing vanilla versions in the project and refactoring them for React.

Describe alternatives you've considered
None at this moment.

Additional context
None at this moment.

ESLint for JSDoc

Is your feature request related to a problem? Please describe.
Standardizing syntax for JSDoc using ESLint

Describe the solution you'd like
I'll be using ESLint plugin to JSDoc for this

Describe alternatives you've considered
None

Additional context
None

Restore session on refresh

Is your feature request related to a problem? Please describe.
Current, users using PASS automatically logs out if browser is refreshed. This is due to the nature of the Inrupt library's default login handling. Would be best if users can stayed logged in from refresh and only log out when they click on logout.

Describe the solution you'd like
Using the handleIncomingRedirect function from Inrupt's solid-client-authn-browser library, we can set restorePreviousSession to true to ensure our browser is redirected to our original web page when refreshed and with an authenticated session.

Organization to User Communication

In Order to initiate the initial communication process for sending and recieving documetation. a process must initiated to allow this communication. Basically think like a friend request with a note.

Provision multi-user Node Solid Server

Is your feature request related to a problem? Please describe.
We need a dedicated Node Solid Server (NSS) that supports testing and experimentation.
Without this, the team is using the Community Solid Server (CSS), which AFAICT is not fully compatible with NSS.

Describe the solution you'd like

  1. Provision a multi-user NSS
  2. Documentation for how to provision and manage the NSS

Describe alternatives you've considered
We've been using CSS, but this is not identical to NSS, which is what we'd be deploying since NSS is open source.

Additional context

JSDoc errors

Describe the bug
Running npm run docs gives an error for generating certain types, namely userLIstObject.

To Reproduce
Steps to reproduce the behavior:

  1. run npm run docs
  2. error appears on terminal

Expected behavior
JSDoc is generated without errors

Updating user list data structure

Is your feature request related to a problem? Please describe.
Currently, the user list are being updated as a JSON string, which is fine. However, it doesn't take advantage of the inherent properties of RDF.

Describe the solution you'd like
Restructure userlist.ttl such that it builds/updates/removes users from userlist.ttl using getThing, setThing, and removeThing functionalities from Inrupt's Solid JS client library.

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.