Skip to main content

Strongly opinionated python project management.

Project description

edgy.project

Strongly opinionated python project management.

This package helps you create python source trees using best practices (or at least the practices we consider as best for us) in a breeze.

Don’t worry about setting up git, a makefile, usual project targets, unit tests framework, pip, wheels, virtualenv, code coverage, namespace packages, setup.py files … Project’s got you covered on all this, using one simple and fast command.

Install

Before installing the package, you must make sure that pip and virtualenv are installed and available to be used in your current environment.

pip install edgy.project

Now, you may want to bootstrap a python package source tree.

mkdir my.awesome.pkg
cd my.awesome.pkg
cat >Projectfile <<EOF
name = 'my.awesome.pkg'
description = 'Amazing description.'
license = 'Apache License, Version 2.0'
EOF
python -m edgy.project init

You’re done with the bootstrap. You can now run:

make install
make test
git commit -m 'Damn that was fast ...'

Happy?

Gotchas

As the headline says, we have made strong opinionated choices about how a project tree should be organized.

For example, we choose to use make to provide the main project entrypoints (install, test). We also choose to use git. And nosetests. And to put root package in the project root. Etc.

For beginners, that’s a good thing, because they won’t have to ask themselves questions like “What should I put in setup.py ?” or “Should I create a «src» dir or not ?”. For more advanced users, it can be either a good thing if you agree with our choices, or a bad one …

F.A.Q

  • I’m using PasteScript, isn’t that enough?

    • PasteScript with the basic_package template will only generate a very minimalistic tree, while we install a few tools and generate more boilerplate than it does. The fact is, we were using it before but still had a lot of repeated actions to do then, and the exact aim of this project is to automate the whole. Also, PasteScript cannot update a project once generated, while we do.

  • Should I use it?

    • You’re a grown man, right?

  • Can I contribute?

    • Yes, but the right vs wrong choices decision is up to us. Probably a good idea to discuss about it (in an issue for example) first.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

edgy.project-0.1.0.tar.gz (6.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

edgy.project-0.1.0.macosx-10.10-x86_64.tar.gz (13.4 kB view details)

Uploaded Source

edgy.project-0.1.0-py2.7.egg (21.2 kB view details)

Uploaded Egg

edgy.project-0.1.0-py2-none-any.whl (12.1 kB view details)

Uploaded Python 2

File details

Details for the file edgy.project-0.1.0.tar.gz.

File metadata

  • Download URL: edgy.project-0.1.0.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for edgy.project-0.1.0.tar.gz
Algorithm Hash digest
SHA256 980d07bc6321814e3c180769865d2886d214222f073abfc4e522470444bbdf3c
MD5 280ba646b19f11e53fb5af4a4950f1ff
BLAKE2b-256 ec1612b857b5ca4964add0a2fd42d04d14767180b66ae8764d4242b9aff8b70f

See more details on using hashes here.

File details

Details for the file edgy.project-0.1.0.macosx-10.10-x86_64.tar.gz.

File metadata

File hashes

Hashes for edgy.project-0.1.0.macosx-10.10-x86_64.tar.gz
Algorithm Hash digest
SHA256 9e6f5e517b1e75cbc0e57df2ca2097b01b7bb0d7da1fd592bae857d782126d00
MD5 75f9ae4b7ec9c4336147f3bc4d390dc2
BLAKE2b-256 f4578b7a6a44e0af55cb87e43c0f0a7af64b30b8b9026d41547239837ad79c0a

See more details on using hashes here.

File details

Details for the file edgy.project-0.1.0-py2.7.egg.

File metadata

File hashes

Hashes for edgy.project-0.1.0-py2.7.egg
Algorithm Hash digest
SHA256 43474113dfbc8c32c8e1930cbb2a1affc07bf34b2873974552598f1c3b14fccd
MD5 c5ce4ddfd1a47e7f20a0fcf7ceb04b6a
BLAKE2b-256 0909dc20e22e3196b6a972966cb21142a9e80debb32be4e99e1ffa5a9a793b1c

See more details on using hashes here.

File details

Details for the file edgy.project-0.1.0-py2-none-any.whl.

File metadata

File hashes

Hashes for edgy.project-0.1.0-py2-none-any.whl
Algorithm Hash digest
SHA256 79380150bcef624230f63cc54334da7ee02d9099871b0a4c3f843642174463cd
MD5 d942ade8f58a18c39b03be40d10105fe
BLAKE2b-256 9fc0190f80bd69a183c3c02e8a479a7f9f9ffd70f678eb583716d5d3a55b995b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page