Giter Site home page Giter Site logo

product-os / jellyfish Goto Github PK

View Code? Open in Web Editor NEW
15.0 15.0 3.0 544.56 MB

The Jellyfish Project

Home Page: https://jel.ly.fish/

License: GNU Affero General Public License v3.0

JavaScript 11.43% HTML 0.28% Shell 1.05% Dockerfile 0.33% TypeScript 86.92%

jellyfish's People

Contributors

ab77 avatar afitzek avatar alidaodendaal avatar balena-ci avatar cmfcruz avatar dependabot-preview[bot] avatar dependabot[bot] avatar dt-rush avatar ereski avatar ffissore avatar flowzone-app[bot] avatar grahammcculloch avatar inwenc avatar joshbwlng avatar juanfridano avatar jviotti avatar karaxuna avatar ljewalsh avatar lucianbuzzo avatar mbalamat avatar mikesimos avatar nazrhom avatar page- avatar petrosagg avatar ramirogm avatar renovate-bot avatar renovate[bot] avatar stefkors avatar wrboyce avatar xginn8 avatar

Stargazers

 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

jellyfish's Issues

Community chat should filter chat messages not chat threads

Currently the community chat view filters for chat threads, ideally it should just show all chat messages that the user can see. To implement this we will need to ensure that community users cannot see chat messages that are attached to cards that they cannot see, so there is a requirement on #153

Create and update events are always created by the actions user

When creating and updating a card, I would expect the card's timeline to credit the user who initiated the create or update action to be the actor shown on the timeline. Instead the actor for update and create cards is always the actions user.
This makes using the timeline as an audit trail impossible, as we can't tell which user did what.

Fix Bluebird warning in gravatar component

After logging in, the following warning can be seen in the console

Warning: a promise was created in a handler at http://localhost:9000/bundle.js:144116:16 but was not returned from it, see http://goo.gl/rRqMUw
    at new Promise (http://localhost:9000/bundle.js:17705:10)
    at getGravatar (http://localhost:9000/bundle.js:584:12)
    at Gravatar../lib/ui/components/Gravatar.tsx.Gravatar.load (http://localhost:9000/bundle.js:616:9)
    at Gravatar../lib/ui/components/Gravatar.tsx.Gravatar.componentWillReceiveProps (http://localhost:9000/bundle.js:607:22)
    at callComponentWillReceiveProps (http://localhost:9000/bundle.js:92665:16)
    at updateClassInstance (http://localhost:9000/bundle.js:92905:9)
    at updateClassComponent (http://localhost:9000/bundle.js:94118:22)
    at beginWork (http://localhost:9000/bundle.js:94755:16)
    at performUnitOfWork (http://localhost:9000/bundle.js:97587:16)
    at workLoop (http://localhost:9000/bundle.js:97616:26)
    at renderRoot (http://localhost:9000/bundle.js:97647:9)
    at performWorkOnRoot (http://localhost:9000/bundle.js:98222:24)
    at performWork (http://localhost:9000/bundle.js:98143:9)
    at performSyncWork (http://localhost:9000/bundle.js:98120:5)
    at requestWork (http://localhost:9000/bundle.js:98020:7)
    at scheduleWorkImpl (http://localhost:9000/bundle.js:97895:13)
    at scheduleWork (http://localhost:9000/bundle.js:97855:12)
    at Object.enqueueSetState (http://localhost:9000/bundle.js:92417:7)
    at Connect../node_modules/react/cjs/react.development.js.Component.setState (http://localhost:9000/bundle.js:145193:16)

Ensure that all data returned from the server is run through the `jsonSchema.filter` method

Th jsonSchema.filter method is using the removeAdditional option in AJV ( https://github.com/epoberezkin/ajv#filtering-data ), which, when combined with user permissions allows us to whitelist fields. This is very useful for doing thing like stopping users from viewing other users password hashes.
At the moment, not every query result gets run through the filter function which means there may be cases where a malicious user could see data they are not meant to ( getElementBySlug, getElementById etc)

Reload UI config on page reload

At the moment configuration like Type cards is stored in LocalStorage and only gets reloaded if you logout and log back in again. This data should be refreshed on page reload and automatically via a socket connection.

`utils.waitForMatch` can hang indefinitely

utils.waitForMatch can hang indefinitely if a matching card is created whilst the stream is initialising. To resolve this, a query for matching cards should be run once the stream is initialised, similar to how the actions server does it.

Improve signup UX

At the moment, its not obvious that signup has worked. Additionally we should make sure you can't signup with the same email/username

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.