Sourcery instantly reviews your Python code and refactors it, making it cleaner and more readable. It’s like having a pair programmer always working next to you. Install into PyCharm, VS Code, or your GitHub repos in 1 minute. It's free!
Thanks for hunting Sourcery @davidcohen!
Hey Product Hunt 👋 - @nick_thapen, @tim_sourcery, and I are very excited to be sharing Sourcery with you all. Sourcery instantly refactors your code while you're working directly in your IDE.
We're obsessed with trying to figure out the best way to write high quality code - and Sourcery is our way to make sure everyone can always work with the cleanest code possible.
Sourcery sits in the background when you're working, analyzing your code, finding problems, and suggesting changes to make your code easier to read. In your IDE Sourcery works fully locally, so your code is always private.
We're focused on Python right now and have integrations with PyCharm, VS Code, and GitHub. Sourcery's still in its early days - so let us know how we can keep improving it to make it more useful to you 😁
It's free to get started - just sign up on our site, add Sourcey to your IDE, and let us know what you think!
Thanks @csaba_kissi ! We're aiming to expand Sourcery to other languages down the line (we're planning on starting with Java and Javascript next). But first we want to provide even more detailed, frequent, and impactful improvements for Python.
Hi @brendan_maginnis@nick_thapen@tim_sourcery - great to see you launch! I know a few folks who've been using Sourcery over the past couple of months, and they've nothing but praise for it.
Be interested to know how you make sure your reviews and refactoring suggestions are accurate? Is Sourcery implimenting basic best practise and fixing obvious mistakes, or is it learning in a dynamic way across your crowd of users?
@brendan_maginnis@tim_sourcery@paul_a_smith
Thanks Paul that's great to hear! We take a lot of care to make sure that the suggestions are correct.
Firstly bucketloads of internal testing around each suggestion, secondly lots of detailed static analysis of the code, and as a backstop we run all of our suggestions over lots of open-source libraries then check that their tests are still green. Lots more detail here: https://sourcery.ai/blog/testing....
On the second point we treat our suggestions like building blocks - they can stack on top of each other to make more impressive changes to the code (like in the Gilded Rose example in the video).
@eamonncarey thanks! We're going to be focused on Python for the next several months to year at least. We want to make sure we are able to really help Python developers make meaningful improvements to their code and work much faster. Then we'll start to shift over to other languages.
Javascript and Java are the first two on our list, but we've had requests for pretty much every language out there - so depending on what people want those plans might change.
@brendan_maginnis@nick_thapen@tim_sourcery This is awesome! 🙌 We have been using Sourcery for a while now and are super excited about how easy it makes refactoring our code + it gives us cool advice on how to simplify our code. Very excited to see what's coming in the next releases! 🚀
Thanks @lukas_kemkes ! I always love to hear when Sourcery is helping out teams a lot. We're working now on getting more types of suggestions for your code, doing more complex refactorings (moving to the class level), and building out more tools to help you deal with duplicate code.
This is amazing! Congrats on your PH launch team!
Are you saying that Sourcery will auto-suggest improvements on my GitHub repos directly 🤯?
Interested to hear more!
Thanks @_teddy !!
And exactly. If you add Sourcery to your GitHub repos Sourcery will automatically review any new pull request you make. Or you can have Sourcery review your entire repo anytime you want from your Sourcery dashboard.
We're Python only for now - so we won't review sections of your repos in other languages - but we'll get there in the future :)
This looks really cool! Excited to give it a try and congrats on launching.
I'm really curious to know how the suggestions handle opinion – aware that Python has 'one obvious way' but devs are still opinionated (I'm as guilty as the next person) on coding styles, and I'm keen to know how you handle that – as I've often found JetBrains auto formatting very restrictive and undoing of my personal conventions – and how (or if?) you see it expanding beyond Python to more opinionated languages? :)
Thanks @djmckee !
You're definitely not alone - we're opinionated ourselves as developers 🙂. That's why we've set up Sourcery so you can review every suggestion before it's implemented (if you want) and can choose to skip an individual suggestion or configure Sourcery to not suggest certain types of refactorings altogether. In terms of formatting we try our best to fit in with the style of the existing code.
As for other languages. We're still a ways out from moving beyond Python - but we will likely have a similar approach where we will take a strong line on what is best practice and how the code should be structured, but always give you flexibility to code to your own style/approach/opinion
Replies
Sourcery AI
LLC Toolkit
Sourcery AI
Invoice generator
Sourcery AI
Pollen for LinkedIn
Sourcery AI
Hired Goons
Sourcery AI
Sourcery AI
Sourcery AI
Sourcery AI
4Share
Sourcery AI
Black
Sourcery AI
Helpdesk by LabiDesk
Sourcery AI
Fit Gurus
Sourcery AI