<commit_before># Shopifydev

Abstract out and port to ruby the functionality of the shopify textmate bundle for use in other editors.

## Installation

Add this line to your application's Gemfile:

    gem 'shopifydev'

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install shopifydev

Once Shopifydev is installed, you'll need to add a .shopifydev.yaml file to your project root. This config
file should contain the secrets specific to the shopify site you are working on. Here's a sample:

    api_key: youneedakey
    password: <PASSWORD>
    url: my_store_url.myshopify.com
    project_root: relative/path (this might just be '.' for a lot of you cats)
    project_root_variable: SOME_ENVIRONMENT_VARIABLE

Don't include 'http://' in the url, and don't commit this file to your repo (because secrets). The project
root should be the directory where the 'assets' directory lives. If you would rather use an environment
variable specific to your text editor of choice, like TM_PROJECT_DIRECTORY, you can supply that as well.
Shopifydev will always prefer the environment variable, though.

## TODO

Currently we haven't implemented uploading layouts or the files in the config directoyr, like the
settings data.

## Usage
<commit_msg>Documented the usage<commit_after># Shopifydev

Abstract out and port to ruby the functionality of the shopify textmate bundle for use in other editors.

## Installation

Add this line to your application's Gemfile:

    gem 'shopifydev'

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install shopifydev

Once Shopifydev is installed, you'll need to add a .shopifydev.yaml file to your project root. This config
file should contain the secrets specific to the shopify site you are working on. Here's a sample:

    api_key: youneedakey
    password: <PASSWORD>
    url: my_store_url.myshopify.com
    project_root: relative/path (this might just be '.' for a lot of you cats)
    project_root_variable: SOME_ENVIRONMENT_VARIABLE

Don't include 'http://' in the url, and don't commit this file to your repo (because secrets). The project
root should be the directory where the 'assets' directory lives. If you would rather use an environment
variable specific to your text editor of choice, like TM_PROJECT_DIRECTORY, you can supply that as well.
Shopifydev will always prefer the environment variable, though.

## Usage

WARNING: Files will always be uploaded from `project_root/`. This is great, because it means you can keep 
the shopify files separate from whatever sweet app you happen to be working on. Unfortunately, at the 
moment, this means autocompletion of file names really only works if `project_root` is `'.'`. But Imma fix 
that.

With shopifydev uploading a shopify file is a snap!

    $ shopifydev upload assets/some_pic.jpg

Uploading two files is also a snap!

    $ shopifydev upload assets/cart.png templates/cart.liquid 

More files? It's a UNIX system! You know this!

    $ shopifydev upload {snippets,templates}/*.liquid

But Mr Authors, what if I don't have any files to upload?

    $ shopify download

What could be better than that? How about uploading all your files:

    $ shopifydev upload --patchify patch_directory

I wouldn't recommend running that with '.' or any directory that contains subdirectories shopify wouldn't recognize. I'll fix that someday too! (^o ^)//

One final tip: `alias upify='shopifydev upload'`

{'fraction_non_alphanumeric': 0.055507120023249056, 'fraction_numerical': 0.0, 'mean_word_length': 4.114413075780089, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5669045', 'n_tokens_mistral': 972, 'n_tokens_neox': 918, 'n_words': 475}