Metadata-Version: 2.1
Name: fscast
Version: 0.0.3a1
Summary: FIle System Templates
Home-page: https://github.com/taesko/cast
Author: Antonio Todorov
Author-email: taeskow@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Operating System :: POSIX :: Linux
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Requires-Python: >=3.6
Requires-Dist: click

Cast
====

    command line app for file system templates.

Cast can modify the structure of multiple directories at once. Provided
these directories are registered for a common template - moving,
renaming or deleting folders from that template will apply those changes
to the directories (called instances of the template).

Installation
------------

Linux:

.. code:: sh

    git clone https://github.com/taesko/cast.git
    cd cast
    pip install .

NOTE: This project has only been tested on linux. Installation is no
different on other OS provided git and pip are installed, but it's not
guaranteed to work properly.

Usage example
-------------

Use any existing directory to make a template out of it.

.. code:: sh

    cast add template_name ./dir_path

Register any other directory to that template as it's instance

.. code:: sh

    cast register template_name /directory/we/want/registered

If the directory's structure is not conformed to the template's an error
is raised. That is the instance must contain directories with the same
as the template's. (it is OK for the instance to have other directories
as well)

Create additional directories inside a template:

.. code:: sh

    cast add -m template_name various dir_names dir_names/similar to mkdir arguments

Rename a directory inside a template

.. code:: sh

    cast mv template_name relative_src_path relative_dst_path

Remove a directory from a template

.. code:: sh

    cast rm template_name multiple relative/directory/paths

Commands that modify a templates structure all take the name of the
template as a first argument and relative paths (considered from the
root of the template not the current working directory) to the desired
directories as additional arguments. Moving and renaming directories by
default applies the same changes to instances of the template as well
but this is not true for removing directories.

For full information:

.. code:: sh

    cast --help

Development setup
-----------------

There is no development branch (yet) and setup is nearly identical to
user installation.

.. code:: sh

    git clone https://github.com/taesko/cast.git
    cd cast
    pip install -e .

Release History
---------------

-  0.0.2

   -  Add proper logging (log file can be found in ~/.cast/logs.txt).

-  0.0.1

   -  Work in progress

Meta
----

Author: Antonio Todorov – taeskow@gmail.com

Distributed under the MIT license. See ``LICENSE`` for more information.

Contributing
------------

Fork and submit a pull request.


