Giter VIP home page Giter VIP logo

scrappy's People

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scrappy's Issues

Donā€™t allow streaks to be negative

Something is causing some peopleā€™s streak count to be negative. Idk whatā€™s causing it, but we should prevent streaks from decreasing if theyā€™re 0

Log pronouns in Airtable

Iā€™d like to run some stats on gender breakdown of those with streaks so we have a baseline for future improvement.

Would greatly appreciate if Scrappy could log this in the Slack Accounts table so I can do this.

Add stack trace logging in slack

Just like Orpheus, I want to know when something went wrong. Scrappy is randomly failing for some people, to different degrees (for some people it posts but never replies, and for some people it doesnā€™t post). I donā€™t know whatā€™s causing these failures, and I canā€™t reproduce them, and the logs are ephemeral so I canā€™t check them. So if scrappy fails to post, it should reply in the thread with the error so that I know what went wrong, and if a command fails, the command response should also reply with the error

Scrappy didnā€™t reset my Slack status after I broke my streak

Hereā€™s what happened:

  1. Posted on Thursday (day 1 of streak). Slack status got set.
  2. Posted on Friday (day 2 of streak). Slack status got set
  3. Forgot to post on Saturday (would have been day 3).
  4. Notice at 2:56 PM ET on Sunday that Scrappy hasnā€™t removed my streak from my Slack status.
  5. Toggle my streak showing with /scrappy displaystreaks (ran twice). Notice that since I missed my post yesterday, my Slack status didnā€™t get set to anything as expected

Scrappy doesn't reliably reset statuses

I've noticed many people's status not being properly updated when they need to. My theory for why this is happening: the streakResetter file loops through every account record in Airtable (of which there are currently 980), queries Slack to get their latest post, queries Slack again to update their status, then queries Airtable to update their record. This wasn't a problem at the beginning of scrapbook when there were very few records, but now, scrappy is likely being rate-limited by Slack and Airtable.

I'd fix this by 1) filtering the initial Airtable query to only include records where the 'updates' field is not empty, and 2) slowing down the loop so that rate limits aren't hit.

Transform user mentions

9DE7CBE0-9817-4C8C-B9D9-01CDE51544F3

Would be nice to switch these to @-mentions so we could easily autolink them on the frontend.

Add non-unfurled link to profile to CSS success reply

Want to be able to see the CSS on someoneā€™s page, so I know whether or not I want to apply it. Want the link to not unfurl because the thread reply + button already takes up a bunch of vertical space & the card wonā€™t be a helpful addition there.

User ID shown when @'ing someone

In the posts, when someone @'s someone in their post the scrapbook site shows the person's slack ID rather than the name. It might be better to show the name instead, or at least some better form of identification?

Improve help command copy

466612B2-199E-462B-9932-F5EAF664EA81

  • Capitalize command descriptions consistently
  • Remove updateprofile, via #64
  • Link & capitalize Scrapbook in first sentence
  • Mention that Scrappy eats trash šŸ—‘

Allow posting until 3 or 4am for previous day

Should let me post after midnight to count a day's streak. Most of my scrapbook work I do at night, after work, so the midnight cutoff just breaks the experience & makes me frustrated with Scrappy.

Add Scrapbook field to Slack profiles

Link @username to either scrapbook.hackclub.com/username or their custom domain, as appropriate. Will make exploring peoples' scrapbooks from mobile way easier.

Allow people to change their Scrapbook username via a command

  • /scrappy-changeusername
  • Checks that the username they want to set doesn't already exist in Airtable
  • Changes their username in Airtable
  • Finds every update that includes their previous username and replaces every instance of those with their new username

Idea: Comments for posts

Here's an idea: Have the comments in the threads in the slack channel also show up in the scrapbook site itself as well!

-> people can toggle if they want comments for that specific post by reacting with a certain emoji
-> either the comments show up on a diff page or it's expandable underneath

This would be super cool because it'd be easier for people to see what others have said about their work without having to scroll up or check threads.

Add some variants to latest-webring-post copy

  • Strap on your glasses for a new post from your webring!
  • Go peep your peepers at a new post from your webring!
  • Do a little jig on over to this new post from your webring
  • Quick! Go check out this new post from your webring before it blows away

Idk Iā€™m tired but letā€™s make them bizarre

Idea: Message post content to slack account when it gets deleted for not including a photo

Whenever you post something in #scrapbook without a photo or video, scrappy will delete the post, and let you know that you need to include a video or picture.

Video of slack, where a user types in a post and it gets deleted, with scrappy saying: "You can only share images or videos in #scrapbook!"

Unfortunately, because scrappy deletes the post, you lose your writing. You cannot copy and paste it into a new message if you want to retry.

I think a better way to deal with these posts would be for scrappy to PM an account with their post content when scrappy deletes it.

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.