Metadata-Version: 1.0
Name: dl-skel
Version: 0.1
Summary: DoubleLeft skeleton generator
Home-page: http://doubleleft.github.com/dl-skel
Author: vitorfaleiros
Author-email: barrabin.fc@gmail.com
License: UNKNOWN
Description: # dl-skel
        
        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
        
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python
