lb_2's People
lb_2's Issues
Logging
... logging URLs that had to be redirected
... logging links that were not valid
... logging timestamps of in-app activities
ERROR: src/components/TagButton.tsx:139:36 - error TS2345
Failed to collect coverage from /home/runner/work/lb_2/lb_2/src/components/TagButton.tsx
ERROR: src/components/TagButton.tsx:139:36 - error TS2345: Argument of type '(string | Tag)[]' is not assignable to parameter of type 'Tag[]'.
Type 'string | Tag' is not assignable to type 'Tag'.
Type 'string' is not assignable to type 'Tag'.
139 onChangeAutocomplete(value, reason, item)
itemsReducer should not contain any if/else logic
...
Tag actions
As a user, I want the app to allow me to create and assign tags to links, so that I can group links by common topics.
Acceptance criteria
- It's done when app lets user to remove tags from known tags when no longer wanted
- It's done when app lets user to add new tag(s) next to the link with keyboard only
- It's done when app lets user to remove assigned tags from dialog with keyboard only
- It's done when app lets user create new tag
- It's done when app lets user assign tag to link
- It's done when app lets user remove assigned tag from link
- It's done when app stores known tags
- It's done when app displays tags assigned to link
Routing advanced
As a user, I want the app to let me have unique URLs for links and tabs, so that I can remind myself of a link I want to read and so the app remembers where did I leave the app last time.
Acceptance criteria:
- It's done when user can generate URL that sends him to added link
- It's done when dialog button opened by link has its unique URL
Routing
As a user, I want the app to let me have unique URLs for links and tabs, so that I can remind myself of a link I want to read and so the app remembers where did I leave the app last time.
Acceptance criteria:
- It's done when user can access URL of chosen tab
- It's done when user is redirected to default tab when tab URL is no longer in use/is empty
Storing link actions
As a user, I want the app to store link actions, preferrably independent of which browser I choose, so that I can retrieve previously added/read links.
Acceptance criteria:
- It's done when app automatically stores the data in the browser
- It's done when app automatically stores the data in the cloud:
- init
- reading
- writing
- editing
- deleting
Sync between devices
As a user, I want the app to sync link actions between devices, so that I can use the app on desktop and mobile at the same time.
Acceptance criteria:
- Given that I'm logged on device A and B, when on device B I add/deletelink, then device A receives/removes link under 5s.
Firebase+OAuth access control
...
Rename dispatch actions
Funky mode
...
Settings actions
As a user, I want the app to adjust the app according to my needs.
Acceptance criteria:
- It's done when user has option to remove unused tags here
Test extensively
As a developer, I want the app to run tests before each build, so that the app .
Acceptance criteria
- It's done when tests cover:
- link validation
- only allowed link added
- error messaging
- tags
- tag validation
- unknown tag added as a written text, updating empty/nonempty tags in items, rewriting known tags
- known tag added as a written text, updating tags in items, leaving list of known tags without change
- known tag added from dropdown, updating tags in items, leaving list of known tags without change
- error messaging
- tabs
- ...
- ...
- ...
- ...
- link validation
Deploy & build process
As a developer, I want to have automatic deploy&build process set up smoothly, so that I don't waste time deploying new features manually.
Acceptance criteria:
- It's done when building through /docs folder is moved and functioning through /gh-pages folder
- It's done once README.md displays workflow status badge
Code analysis
As a developer, I want to have intelligent code analysis and code formatting logic set up, so that I can minimize introducing bugs.
Acceptance criteria:
- It's done when eslint is implemented in the code-creation process, not only in its pre-deploy phase
- It's done when implementation of eslint communicates with TypeScript and defaults with highlighting bugs
- It's done when prettier and eslint communicate well and do not surprise me with raising bugs after unit testing
Tab X not found, we redirected you to default (toast)
...
Replace 'itemsToTabConnector' with solution based on predicates
...
Reduce amount of loggingIn/Out actions/errors
Link actions
As a user, I want the app to allow me to mark links as read/unread, so that I can divide between links I want to read and links I have already read but want to have them by hand when necessary.
Acceptance criteria:
- It's done when user can delete added link forever
- It's done when button with 'Read' and 'Unread' states is implemented
- It's done when listing of 'Unread' and 'Read' is separated into Previously read links and Links to read tabs
Friendly UI
As a user, I want the app to have friendly UI, so that:
- my experience with the app is enjoyable,
- the app works swiftly,
- I can control the app with keyboard only,
- the app works without hickups,
- the functional logic of the app is clear to me.
Acceptance criteria:
- It's done when user sees date of added link as dynamic (t - now())
- It's done when user sees truncated anchor link
- It's done when user sees defaultly links sorted by last added link
- It's done when user can see a number of unread links (badge)
- It's done when user has default focus on link adding and clicking enter button submits the link
- It's done when user can use keystroke to open the link in new tab
- It's done when user can click on tag next to link and it delegates him on respective tab
- It's done when user sees error message only when link cant be added
- It's done when user on his/her first visit is informed of what to do
- It's done when user doesn't see empty page when read/unread tab contains no links
- It's done when user sees basic stats (read/unread/added links) for past week
- It's done when all app's elements are styled
- It's done when user is allowed to assign tags to links
- It's done when user can switch link state (Read/Unread)
- It's done when user can use arrow keys to navigate between added links
- It's done when user can filter links by tags
- It's done when user sees links split to read/unread/individual tag tabs
Later
- It's done when user sees link editing options on focus/active/hover
- It's done when user sees defaultly unread tab unless it is contrary to the last session
BUILD GET https://brtsmrtn.github.io/lb_2/css/v0.css net::ERR_ABORTED 404
...
Link validation
As a user, I want the app to notify me which links are valid/invalid, so that I have clear idea of which types of links are allowed.
Acceptance criteria:
- It's done when app correctly validates long urls
- It's done when app displays clear error messages
Negative scenarios
As a developer, I want the app to inform me of users unexpected behavior, so that I can debug fast.
Acceptance criteria:
- It's done when app logs invalid links
Warning: findDOMNode is deprecated in StrictMode.
...
Fix tests + add mocks
OAuth implementation
...
Acceptance criteria:
- It's done when app can persist JWT token
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.