camdendotlol / groupread Goto Github PK
View Code? Open in Web Editor NEW๐ Self-hosted reading groups
Home Page: http://gr.camdenmecklem.com
License: GNU Affero General Public License v3.0
๐ Self-hosted reading groups
Home Page: http://gr.camdenmecklem.com
License: GNU Affero General Public License v3.0
See here: camdendotlol/website#43
Upgrading from Remark 13 to 14 will take some work unless the Remark devs revert their changes. I messed around trying to get it to work on my personal site for 30 minutes and gave up. The only solutions shared by the devs involves changing a remarkrc.js file, but GR doesn't use one, so it's not clear how to move forward on this.
Currently, things like looking up the username of the author of a post are done by checking the list of group members. This is really bad because of how bug-prone it is and how difficult it makes it to add new features in the future (particularly, the ability to leave a group).
The best way forward is to de-couple the user state and the group state.
The simplest implementation, in the short run, is to include the author's display name in the post object. I've been trying to avoid having a bunch of giant objects with tons of properties junking up the state, but this seems like a pretty clear case where slightly complicating the state will simplify overall development.
Describe the bug
When you try to re-submit a schedule after getting an error, Groupread doesn't send the request to the API.
To Reproduce
Steps to reproduce the behavior:
/groups/{id}/schedule
)Expected behavior
The form should re-submit as many times as you need it to until it succeeds.
While running the development build, navigating from the group view to a post's page causes a warning:
Warning: Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in a useEffect cleanup function.
I strongly suspect that this is related to a bad interaction between webpack-dev-server
's live-refresh WebSocket and Remark's markdown-parsing features. If that is the case, it's not something to worry too much about because it does not apply to the production build.
In any case, it's worth looking into this as a low-prority bug.
This can be fixed with some simple useEffect hooks, the problem is picking which pages should bump you up to the top and which shouldn't. Also, jumping to the top with useEffect happens even if the user hits the back button, which isn't ideal. Not sure how to address that.
This is a checklist for small-ish things that would make Groupread feel more polished and improve the experience of using it. This is not in any particular order.
More things will be added here as I think of them.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.