onecrayon / onecrayon/api.ashes.live
Request: "Likes"
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 13
- Forks
- 7
- Avg merge
- 7h 39m
- Merged PRs (30d)
- 1
Description
I'm on the fence about this. On the one hand, I don't personally see much value to these (particularly given the amount of development time that they'd potentially require). On the other, they're a very common request.
Some possibilities:
- Allow arbitrary "reactions" to stuff (similar to Discord/Slack emoji reactions, but probably restricted to the Ashes iconography), and then implement filtration and sorting based off the number of any given reaction. UPSIDE: this is my ideal use-case. DOWNSIDE: really complicated to implement, particularly the sorting.
- Allow people to flag decks with a heart icon or something. This could be a simple one-to-many relationship table to track which users have flagged a given deck, along with a column in the Deck table that tracks the total number for easy sorting. UPSIDE: provides the basic "like" functionality, but also provides the possibility to bookmark things (and could show public bookmarks on the user profile page), which is functionality that I'd actually want to use myself. DOWNSIDE: really simplistic, and it's affected by all my reasons for disliking simple numerical likes (e.g. to properly sort it you really need to weight them based on when the like was created, or else you're liable to get old monsters that dominate the top of the list and make the whole thing worthless)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by resolving whether the project wants arbitrary reactions or simpler likes/bookmarks, then define the required filtering, sorting, and user-facing behavior; done means the selected design is implemented and its behavior is verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100