dl-skel.py provides skeleton generator for you to avoid creating a
project from zero everytime.
Its useful to bootstrap general projects, like HTMLBootstrap, PythonPackage,
and others. It will download a GIT repository available on the net, and
process some files to change names and so on.
In the end, you will have a new folder, with `dlbuild.py` that can be used
to `runserver`, or `build` the project.

---
## Installation
Install it via pip (`pip install dl-skel`), or manually:
```
$ git clone git@github.com:doubleleft/dl-skel.git
$ cd dl-skel
$ python setup.py install
```
This will create a `dl-skel.py` bin in your path (virtualenv or systemwide)
## CLI Usage
Usage via CLI app called `dl-skel.py`
```
Usage: dl-skel.py [options]
Options:
-h, --help show this help message and exit
--skeleton-config=SKELCONFIG
dlskel Config file. Default is ~/.dl-skel/config.json
--skeleton-path=SKELPATH
Use another Skeleton Search Path. Default is ~/.dl-skel/
-l, --list List skeletons
Import new Template:
-i <GIT_REPO> <TEMPLATE_NAME>, --import=<GIT_REPO> <TEMPLATE_NAME>
import a new template from the given GIT
repository.
Create a new project:
-c <TEMPLATE_NAME> <OUTPUT>, --create=<TEMPLATE_NAME> <OUTPUT>
Create a new <project> skeleton
```
## Default Skeletons
You can check all available skeletons using `-l`:
```
$ dl-skel.py -l
wordpress5 https://github.com/doubleleft/skeleton-wordpress Wordpress 5.0
```
Template | URL
--- | ---
wordpress5 | [skeleton-wordpress](https://github.com/doubleleft/skeleton-wordpress)
HTMLRichApp | [skeleton-htmlrichapp](https://github.com/doubleleft/skeleton-htmlrichapp)
HTMLSimleApp | [skeleton-wordpress](https://github.com/doubleleft/skeleton-wordpress)
## Create a new project
To create a new project using a base skeleton, try option `-c`
```
$ dl-skel.py -c python ../my-shiny-project
Cloning python(https://github.com/ionelmc/projectskel) into ../my-shiny-project
```
## Importing your own skeletons
To import your own skeletons, use `-i`
```
$ dl-skel.py -i <REPO_URL> <SKELETON_NAME>
```
This will import `<REPO_URL>` and save it as `<SKELETON_NAME>`.
You can now create new projects using `<SKELETON_NAME>`
```
$ dl-skel.py -c <SKEL_NAME> name-of-my-project
```
# Creating my own skeletons
Skeletons are simple **GIT** repositories, with a special recipe stored in the
file `dlbuild`. This recipe tells what to substitute, download, install,
pretty much by hand.
You MUST create the following functions in the `dlbuild.py` file:
setup (Download and replace files)
build (Build project)
while others functions, like `runserver` are optional.
To see a simple example of a skeleton, check [skeleton-wordpress](https://github.com/doubleleft/skeleton-wordpress/blob/master/dlbuild.py)
# Using it inside python
You can use it direcly as an API in python
```
$ python
>>> from dlskel.skel import skeleton_create, make_password
>>> skeleton_create( 'git@github.com:doubleleft/skeleton-wordpress.git',
'my-wp-project',
skel_vars={
'DB_NAME': 'myproj',
'DB_USER': 'myuser',
'DB_PASSWORD': make_password(length=8) })
```
---
### TODO
- ✓ Add better file substituion via jinja2 template
- ✓ Add simple API for using it inside python
- ✓ Finish setup.py and make it pip installable
- ✓ Delete repository .git when creating a new project.
- Add dependencies check and installation (if necessary)
- ** Create Skeletons **
* ✓ Wordpress Skeleton
* Laravel Skeleton
* ✓ Python Package Skeleton
* Python Flask Skeleton
* HTML Bootstrap Skeleton
* HTML Static Skeleton
Metadata
Release files for dl-skel 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dl-skel-0.1.2.tar.gz | 111.6 kB | Without provenance | Details for dl-skel-0.1.2.tar.gz |
Release files / dl-skel-0.1.2.tar.gz
| Download URL | dl-skel-0.1.2.tar.gz |
|---|---|
| Size | 111.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
eec7c10afe6db0343321e5d1890c26931004ffe789b0c16fb6f00bb137ae8013
|
|
BLAKE2b-256 checksum How to use checksums |
c10642a9423bbaf3e356a8eae4ed659e948ba83c45f144e88069815078f44906
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for dl-skel 0.1.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.