Project

cocoanova

0.0
No commit activity in last 3 years
No release in over 3 years
CocoaNova is a iOS project management toolkit, providing code generator and assets checking.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

CocoaNova

CocoaNova is a rake like tool for code generating and management, original designed for xcode projects.

Usage

.novarc

.novarc is a YAML configuration file for overring default configurations

src_root: ./
nova_root: ./nova
plugins:
  - cocoanova-ios

src_root, the root of all source files, default to ./'

local_root, the root of local nova folder, default to ./nova

plugins, array of plugins to require

./nova/data

This folder is for storage data files for templating, yaml, json, txt is supported by default.

For example, files like this

./nova/data/models.yml
./nova/data/what.json
./nova/data/symbols.txt

will be loaded to Nova.data like

{
  "modles": {
      ...
  },
  "what": {
      ...
  },
  "symbols":[ // by default txt is loaded by lines
      ...
  ]
}

You can create your custom loader.

See lib/cocoanova/loaders/yaml.rb for example.

Name your custom loader file as will, just put it into ./nova/loaders/ and it will work.

Engine

Engine is for porting any kind of template system into CocoaNova, erb is supported by default.

See lib/cocoanova/engines/erb.rb for example.

Helper

Helper is automatically loaded into template system.

The main module is Nova::Helper, extend this module in your custom helper.

See cocoanova-ios for example.

Task

Taks is like rake task.

Defaul task is compile, compile task will find all supported templates from src_root and then compile them with data provided by loaders.