Spine.js é minha estrutura móvel CoffeeScript preferida – está documentado muito bem como fazê-lo funcionar com phonegap / cordova, mas desenvolver com pg é um processo doloroso.
O Forge do Trigger.io é um js api nativo de plataforma cruzada amigável para desenvolvedores.
Veja o que fiz para colocar um aplicativo básico em funcionamento.
Abra o código – fonte go.sh do forge-tools
Crie o aplicativo forge
(forge-environment) ➜ ~ FORGE_ROOT: cd ..
(forge-environment) ➜ mobile mkdir quotes
(forge-environment) ➜ mobile cd quotes
(forge-environment) ➜ quotes forge create
Instale as dependências mais recentes do spine
(forge-environment) ➜ aspas npm install -g spine spine.app hem
Crie o aplicativo spine.js
(forge-environment) ➜ citações spine mobile ./spineapp
(forge-environment) ➜ citações cd spineapp
(forge-environment) ➜ spineapp npm install.
Verifique se o aplicativo spine está funcionando
(ambiente forge) ➜ servidor spineapp hem
Em caso afirmativo:
Edite spineapp / public / index.html
remova o script start.js.
alterar ‘/application.js’ -> ‘application.js’
alterar ‘/application.css’ -> ‘application.css’
Faça algum desenvolvimento básico de aplicativo spine no spineapp até que você tenha algo que obviamente está fazendo algo – para que você possa verificar se funciona no forge.
Adicione algumas chamadas de API de forja, o mais básico é o registro. Por exemplo, meu arquivo index.coffee tem este construtor em:
class App extends Stage.Global
constructor: ->
super
forge.enableDebug()
#activate controller
@quotes = new Quotes
@quotes.active()
forge.logging.log('forge log example')
Assim que tiver algo que possa testar, o processo geral é o seguinte:
hem build spineapp
Copie o conteúdo de spineapp / public para o diretório src do projeto forge.
executar forjar construir
executar forjar executar
teste ios no simulador
fazer alterações
repetir
Isso não é tão indolor quanto eu gostaria, então criei um script de Thor para fazer isso por mim. Você precisará de um lançamento recente da gema Thor (estou no Thor 0.15.4):
crie spineapp / spineforge.thor: https://gist.github.com/3071647
class Spineforge < Thor
include Thor::Actions
# thor spineforge:fuse ios
desc "fuse ios/android","builds and runs app"
def fuse(platform)
#cd spineapp
@spineapp_dir = File.dirname(__FILE__)
@forge_dir = @spineapp_dir + '/../'
inside @spineapp_dir do
run('cd')
run('hem build')
end
#copy spineapp/public/* to src/
Thor::Sandbox::Spineforge.source_root(@spineapp_dir)
directory 'public', @forge_dir + 'src'
inside @forge_dir do
#forge build
run 'forge build'
#forge run platform
run "forge run #{platform}"
end
end
end
ele fica em spineapp / então eu posso alternar facilmente entre o uso do hem server e o thor spineforge: fuse ios
(ambiente de forja) ➜ spineapp thor spineforge: fusível ios
Agora posso construir meu aplicativo spine.js, executar o spineforge e ver o simulador de iphone iniciar a nova versão do meu projeto. Eu não gosto do ciclo de compilação, mas é melhor do que ter que iniciar eclipse ou xcode e lutar com a dor de pg / cordova.
Trigger.io Forge é uma ferramenta promissora – espero estar em posição de oferecer suporte ao desenvolvimento de mais recursos em breve.