Development resources at your finger tips
Build with the coolest Web3 projects
Recurring funding for Open Source
Ethical ads to power Open Source
Learn about Web3 & earn rewards
Show appreciation for each other
Meet fellow developers, designers, futurists and more. Collaborate and BUIDL awesome projects together.
Discover great web3 organizations, work on meaningful projects and build relationships with like minded people. Browse Tribes
Meet the top hunters and contributors from our community.
KERNEL is an 8-week, invite-only program for top tech talent looking to build relationships, products, and companies in blockchain and Web 3. 100 tal…
Heyo Gitcoiners! With an entire city of hackers, coders and blockchain innovators relocated on our platform, the atmosphere is just buzzing with crea…
Type in [[ 2- term.length]] more characters to get results
[[ result.title ]]
[[ result.description | truncate(70) ]]
No matches found
Gitcoin is GDPR complaint. Learn more in
Gitcoin's Terms & Conditions.
Check out the Issue Explorer
Looking to fund some work? You can submit a new Funded Issue here.
We need to decouple the slack client from the bounty client. I'd like the master client to look like this:
bounty_client = BountyClient()
slack_client = SlackMessageClient()
sc = SlackClient(settings.SLACK_TOKEN)
def bounty_issued(bounty_id, **kwargs):
bounty = Bounty.objects.filter(bounty_id=bounty_id)
if not bounty.exists():
bounty = bounty_client.issue_bounty(**kwargs)
(That's of course just one example).
In this case, I removed the event field and just pass the bounty through. This makes it cleaner, and now we can add an email client or notificer client after this in the master client. Eventually, these will be all long-running jobs as well.
Additionally, the template strings I'd like to be in a slack_templates.py file and imported.