We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

From Python script to Open Source Project

Formal Metadata

Title
From Python script to Open Source Project
Subtitle
Project maturity checklist
Title of Series
Number of Parts
118
Author
License
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Did you write a cool and useful Python script? Would you like to share it with the community, but you're not sure how to go about that? If so, then this talks is for you. We'll go over a list of simple steps which can turn your script into a fully fledged open-source project. The Python community has a rich set of tools which can help verify the quality of your code through automated code-review and linting. You can benefit by taking advantage of this ecosystem. Complete the steps in this checklist, and your project will be easier to maintain, you'll be ready to take contributions from the community and those contributions will be up to high standards. Your project will also keep up with other projects on PyPI and you will be alerted if any new release causes an incompatibility with your code. The same checklist can be used for non open-source projects as well. The project maturity checklist includes: Properly structure your code Use a setup.py file Add entry_points for your script command Create a requirements.txt file Use Black to format your code Create a tox.ini config and include code linters Set up a Git repo Refactor your code to be unit-testable and add tests Add missing docstrings Add type annotations and a MyPy verification step Upload to GitHub Add a continuous integration service (e.g. Travis) Add a requirements updater (e.g. pyup.bot) Add test coverage checker (e.g. coveralls) Add a Readme file and documentation Publish your project on PyPI Advertise your project
Keywords