Giter Site home page Giter Site logo

dailydotdev / daily-apps Goto Github PK

View Code? Open in Web Editor NEW
156.0 7.0 52.0 5.43 MB

Everything you see on Daily ๐Ÿ‘€

License: GNU Affero General Public License v3.0

TypeScript 7.66% JavaScript 43.76% HTML 0.39% Vue 43.21% CSS 4.73% Shell 0.25%
daily frontend vue monorepo lerna

daily-apps's People

Contributors

ageblade avatar alaguselvan avatar andrei0872 avatar cagdas001 avatar damianomagrini avatar dependabot-preview[bot] avatar dependabot[bot] avatar dhruv479 avatar fazlerocks avatar idoshamun avatar itaiterner avatar jtan743 avatar kenanchristian avatar mojtabakaviani avatar prateek3255 avatar randalvance avatar saqibameen avatar sshanzel avatar wtfua92 avatar zaerald avatar zvikarp 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  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  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  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

daily-apps's Issues

Skip onboarding button

We would like to add a "skip" button to the onboarding process so users may skip it if they like.
The button should skip directly to the main feed along with the permissions popup for access recent websites.

Should be very straightforward to implement.

Access to our InVision project will be given to the contributor :)
image

Extension - Questions about Open new tab, Do not disturb.

Hello.

The service is amazing, but I have a couple curiosities:

  • when active, the extension overrides the new tab. There is a way to set a different behaviour (for examples, to open content only when clicking on the icon, not changing the user new tab behaviour)?

  • in Do not disturb mode, every new tab is redirected to a specific page. There is a way to set a different behaviour?

Thank you.

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating netlify-cli in /packages/moderator/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Add performance budget enforcement

We have to keep the main bundle of the application small to ensure high performance.
Need to setup a "check" on every PR that enforces our budget.

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating chalk in /packages/extension/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating babel-jest in /packages/extension/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Add a "small" variant to switch button

We would like to another variant to the existing DaSwitch.
The new variant keeps the same colors but smaller.
This variant can triggered using a simple class small.
In addition, we have to add a new story for showing the small switch.

Access to our InVision will be given to the contributor :)
small switch design

Layout customization panel

Following dailydotdev/daily#79, we introduce a layout customization panel. The panel drops from the top on request and allow to fully customize the feed.

Prerequisites for implementing this issue:

  • #49 Radio button component
  • #50 Add different layout settings to feed
  • #51 Add a "small" variant to switch button

Design

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating register-service-worker in /packages/moderator/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Add "Do Not Disturb" mode to the extension

Following dailydotdev/daily#54, we would like to implement a "Do Not Disturb" (DND) mode, during this mode every time the user opens a new tab, the browser will be redirected to Google's default new tab. In order to open Daily when DND is turned on, the user must click on the extension button. When activated the user must state for how long DND should last.

The header features a new button for turning on DND with context menu to choose the duration.
image

The new button is just like the buttons on its sides but it uses the timer icon, it can be found here. Once clicked, it should open a DaContextMenu (an example for context menu can be found here).

Once enabled, all relevant data should be stored in the ui module of vuex, the cache plugin will take care to automatically store it on the storage.

To enforce DND, we need to create a new router guard just like here, which checks the state and if it detects DND is on it should redirect to https://www.google.com/_/chrome/newtab.
Please note that if the user clicks on the button it should not redirect.

When DND is on, a message is shown below the header.
image
This is message is fixed to the center of the header and when clicking on the x button it should cancel this mode.

Placeholder for promoted content while loading

The first post in the feed is mostly a promoted content which takes more time to load than the rest of the feed. This delay causes the cards to flicker and it's pretty annoying.

Please see @madhuhc issue dailydotdev/daily#58 for more information.

To fix this issue, @tsahimatsliah designed an animated placeholder that will be shown while the promoted content is loading. This will prevent the flickering and provide smooth UX.

Placeholder design for card mode:

Placeholder design for insane mode:
image

Animation:
https://codepen.io/anon/pen/jgGovq

Tooltip component

We would like to add a tooltip component to our components library. This tooltip will be used for the extension and other future apps. One can apply relevant design to an already existing tooltip component like: https://github.com/Akryum/v-tooltip
The tooltip should support both bright and dark themes.

Access to our InVision project will be given to the contributor :)

tooltip design

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating @vue/cli-service in /packages/extension/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

"ADD TO FEED" button should follow design guideline

Currently the "ADD TO FEED" button is not following the design guideline on different states like hover and focus. It should be solved by using the newly defined CSS variables for btn class.

To reveal this button, one should click on a single publication or tag which is currently not part of the personal feed.

image

Error on : docker-compose pull && docker-compose up

I'm following instruction for daily-apps clone; when I run docker-compose pull && docker-compose up command, I'm stuck on the following error

ERROR: for daily-api  Cannot create container for service daily-api: status code not OK but 500: {"Message":"Unhandled exception: Filesharing has been cancelled","StackTrace":"   at Docker.
ApiServices.Mounting.FileSharing.<DoShareAsync>d__6.MoveNext() in C:\\workspaces\\stable-2.3.x\\src\\github.com\\docker\\pinata\\win\\src\\Docker.ApiServices\\Mounting\\FileSharing.cs:line
0\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerSer
vices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Docker.ApiServices.Mounting.FileSharing.<ShareAsync>d__4.MoveNext() in C:\\workspaces\\stable-2.3.x\\src\\githu
b.com\\docker\\pinata\\win\\src\\Docker.ApiServices\\Mounting\\FileSharing.cs:line 47\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime
.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Docker.HttpApi.Controllers.
FilesharingController.<ShareDirectory>d__2.MoveNext() in C:\\workspaces\\stable-2.3.x\\src\\github.com\\docker\\pinata\\win\\src\\Docker.HttpApi\\Controllers\\FilesharingController.cs:line
21\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerSe
rvices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Threading.Tasks.TaskHelpersExtensions.<CastToObject>d__1`1.MoveNext()\r\n--- End of stack trace from pr
evious location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessA
ndDebuggerNotification(Task task)\r\n   at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1.MoveNext()\r\n--- End of stack trace from previous location whe
re exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotificat
ion(Task task)\r\n   at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__5.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at
 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.H
ttp.Dispatcher.HttpControllerDispatcher.<SendAsync>d__15.MoveNext()"}
ERROR: Encountered errors while bringing up the project.

Do Not Disturb mode

When the "Do Not Disturb" mode is on, the new tab redirects user to the Google homepage. This isn't a very convenient feature as people like me use a different search engine by default. I personally use DuckDuckGo as my search engine and Firefox as my browser. The default homepage without Daily is not a Google webpage. It's a local page (about:newtab). Is there a way Daily could redirect to the browsers default new tab page? If not at least allow user to set the page URL in a setting to further customize it?

Sync bookmarks of anonymous user with logged-in user

When a user logs-in to Daily, all her/his settings are fetched from the server including the bookmarks. In case, the user had already selected some bookmarks they will be gone. With that said, upon registration, every setting is being sent to the cloud to prevent data loss.
Following dailydotdev/daily#106, we would like to add a confirmation popup that asks to merge the existing bookmarks with the signed-in user so there will be no data loss.

Access to our InVision will be given to the contributor :)
Light and dark design of the popup

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating caniuse-lite in /packages/extension/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Update local environment set up docs

With the merge of #109, now it's so much easier to set up a local environment for daily-apps. The only thing needed is docker-compose. The missing part is the documentation of such set up as easy as it may be. To complete dailydotdev/daily#153, we must docs here as well.

Note: docs should include also docker-compose pull and importing seed data.

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating webextension-polyfill in /packages/extension/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Filesystems with case-insensitive paths

When cloning the repository, there's a path collision on the case-insensitive filesystems and it is the default configuration on macOS.

Cloning output:

Cloning into 'daily-apps'...
remote: Enumerating objects: 120, done.
remote: Counting objects: 100% (120/120), done.
remote: Compressing objects: 100% (80/80), done.
remote: Total 2218 (delta 66), reused 77 (delta 39), pack-reused 2098
Receiving objects: 100% (2218/2218), 1.92 MiB | 654.00 KiB/s, done.
Resolving deltas: 100% (1405/1405), done.
warning: the following paths have collided (e.g. case-sensitive paths
on a case-insensitive filesystem) and only one from the same
colliding group is in the working tree:

  'packages/moderator/__tests__/Requests.js'
  'packages/moderator/__tests__/requests.js'

Proposing to rename one of these files:

  'packages/moderator/__tests__/Requests.js'
  'packages/moderator/__tests__/requests.js'

The reason for this every time you run
git status it'll show up an untracked changes
and even if you discarded it or even run git reset --hard HEAD it will still show up and still having an untracked status and would also result in not being able to rebase as you're having unstaged changes.

Build error

Hi,
I am trying to build the extension and I am getting an error:
yarn serve
ERROR Failed to compile with 41 errors

dependencies were not found
To install them, you can run: npm install --save @daily/components/icons @daily/components/icons/arrow @daily/components/icons/bookmark @daily/components/icons/card @daily/components/icons/github @daily/components/icons/google @daily/components/icons/hamburger @daily/components/icons/hashtag @daily/components/icons/line @daily/components/icons/link @daily/components/icons/logo @daily/components/icons/magnifying @daily/components/icons/mobile @daily/components/icons/moon @daily/components/icons/ph @daily/components/icons/plus @daily/components/icons/sun @daily/components/icons/terminal @daily/components/icons/timer @daily/components/icons/user @daily/components/icons/user_daily @daily/components/icons/v @daily/components/icons/x @daily/services

But, when I try to run this line, I am getting the error:
Could not install from "@daily/components/icons/arrow" as it does not contain a package.json file.

Anything I missed?

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating babel-jest in /packages/extension/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Keyboard shortcuts

We would like to implement a few keyboard shortcuts to allow users to interact with Daily without the mouse.

Bindings:
h,j,k,l - Navigate between blog posts (h - left. j - down, k - up, l - right). In insane mode h,l should do nothing.
b - Bookmark selected post.
/ - Open and focus the search bar

When a post is focused it should like it is hovered.

For more information: dailydotdev/daily#122

Add filter to remove read articles

Originating from a feature request (dailydotdev/daily#142) and following the completion of the server-side implementation (dailydotdev/daily-api#46), we need to add the extension implementation.

Regarding the user interface, we would like to add a new switch in the preferences section. The new switch should create a new column to the right of the existing preferences switches. It should be labeled with "Hide read posts" and should be turned off by default. The new column should be 32px pixels apart from the existing one.
image

As long as it is turned off no changes should occur to the existing feed and once it is turned on, the read articles should be removed only from the main feed. It shouldn't affect the bookmarks, single-source/tag, search and all the other feeds.

Show creation time of post

Following dailydotdev/daily#39, we would like to show the creation time of a post so the user can easily understand which posts are new. The creation time will replace the tags and on hover the tags will be displayed instead of the creation time (in card mode only).

Access to our InVision project will be given to the contributor :)
card mode design

insane mode

Feat: Ability to save preferred article sort-by between tabs

Hello there. ๐Ÿ‘‹

I have a feature idea I'd like to run by the contributors. Namely the ability to save which sort-by should be used between tab sessions. As it stands currently the popular sort is used whenever a new tab is opened. I would like to have the option to toggle save article sort-by and the latest sort-by I've used will be saved until that option is unchecked again.

This way I can set my sort to recent and that sort will be used until the time I have unchecked the save article sort-by option and then popular sort will be the default again. I hope I explained that well enough. ๐Ÿค”

I came to the option of suggesting the check version to make the saving of the sort-by an opt-in. Instead of modifying the current behavior of the sort-by functionality and potentially creating back-lash from current users.

Any input would be appreciated. ๐Ÿ˜€

Screenshot of potential implementation.

Screen Shot 2020-11-18 at 12 42 05 AM

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating localforage in /packages/moderator/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

vertical nav bar issue

When resizing the window and scrolling vertically the numbers scroll with the reset of the page but the nav bar doesn't.
The numbers should be fixed inside the nav bar, or the nav bar should scroll with the whole page.

Screenshot from 2019-08-15 18-50-57
Screenshot from 2019-08-15 18-59-14

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating register-service-worker in /packages/moderator/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Disable request source field while submitting a request

Currently when a user requests a source it might take a little while until the server confirms the request. In the meantime, many users click again and another request is sent. We should the disable the submit button while the request is sent. This is very easy to do by simply adding disabled attribute to the button which will automatically apply the relevant design as well.

image

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating postcss-mixins in /packages/extension/yarn.lock:
https://registry.yarnpkg.com/@daily/components: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Navigate to publication page when clicking on the logo

When clicking on the publication's logo on a post card the user should be navigated to a page containing only posts from the same publication.
The behavior is identical to clicking on a publication in the side menu.

image

Radio button component

@tsahimatsliah has added a radio button to Daily's design system and now we would like to implement it. Preferably the component should be based on input element with type=radio, otherwise must follow the same ux and accessibility of the native component.
Access to our InVision will be given to the contributor :)

Dark theme design:
Dark theme design

Insane mode post must limit the tags to one line only

Currently the component DaInsanePost doesn't limit the number of displayed tags which might turn into a strange looking post as follows:
image

To fix it we can use DaLineClamp like we used in DaCardPost to truncate the long list into a few.

Add client-side search for publications

The publication list in the side menu should have the same search bar you can find in the tag list. Same design and UX should be applied, the only difference is that this search should be client side.

Read post indicator for both card and insane mode

According to dailydotdev/daily#39, we would like to add for both card and insane mode an indicator that the post was read. This will make it easier for users to understand what posts they should consider reading.
The post object provided to both components will contain a read boolean property which indicates if the post was read.
Basically these are very simply changes of colors and opacity.

Access to our InVision project will be given to the contributor :)

Card design
Insane design

Add different layout settings to feed

According to dailydotdev/daily#79, @tsahimatsliah has added new layout settings to allow further customization. The different settings change the spaces between elements (cards or "insane" rows), the size and the overall padding of the page.
For implementation, first we have to add a layout property to the ui module and a manipulation to set it. According to this new property we should change the design of the Home page.

Access to our InVision will be given to the contributor.
Grid Settings
More grid settings

New animation for card hover

According to dailydotdev/daily#119, the current animation for card hover causes bad user experience so we would like to change it.

We would like to suggest a new animation instead of the existing one:

  • The card should move up 4px using translateY and transition should be set to 0.4s ease-out.
  • The image inside the card should keep its current scaling but should be set to 0.4s ease-out as well.
  • The tricky part is that once the card is hovered a new element should be created that will serve as background layer for a cool box-shadow effect. The element can be created by using the psueo-element :after. The element should fill the card with 16px margin for top and sides. The box-shadow should be 0 16px 24px 0 rgba(0,0,0,0.24) for the light palette and 0 16px 24px 0 rgba(0,0,0,0.4) for the default (dark) palette. Again transition on the box-shadow should be set to 0.4s ease-out
    New element with box shadow

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.