Iniciando um Projeto
Instalando
Baixe o repositório em uma pasta de sua preferência.
Arquivos
path/to/mira/
css/
fonts/
imgs/
js/
mira/ # modulos do framework
libs/ # bibliotecas externas utizalidas
config.js # o que da start na aplicação
index.js # módulo que iremos modificar
index.html # faz a referencia para a carga da aplicação
É importante que esta pasta path/to/mira/
possa ser servida e acessível por um servidor de arquivos estáticos como Apache, nginx e etc.
Agora basta ir no navegador e acessar a URL:
http://your.domain/path/to/mira/
Nesta URL ele irá acessar a aplicação que tem seus modelos definidos no módulo js\index.js
Caso queira utilizar outra aplicação, será necessário informar diretamente na URL acessada, como no exemplo:
http://your.domain/path/to/mira/?app=my_application
Neste caso, a aplicação que será acessada será do módulo js\my_application.js
Servidor
Caso não tenha nenhum destes servidores instalados em seu computador, você pode instalar o node.js e rodar o seguinte comando na pasta onde foi baixado:
npm install
E pode rodar o seguinte comando para rodar sua aplicação:
node js/mira/server.js
Agora basta ir no navegador e acessar a URL:
http://localhost:3000/
Se nenhuma URI de uma API REST for informada para a aplicação, será exibida a interface landing
para o usuário.
Arquivo HTML | index.html
O arquivo index.html é o arquivo que inicia o MIRA.
<!DOCTYPE html>
<html>
<head>
<script data-main="js/config" src="js/libs/require.js"></script>
</head>
<body>
<h1>Carregando...</h1>
</body>
</html>
Ele carrega o require.js e chama o modulo js/config.js
.
Este módulo tem as configurações de caminhos para outros módulos e também carrega o modulo da aplicação informada pelo
parâmetro app
, se nenhum valor for informado, ele carrega o módulo js/index.js
Módulo principal da aplicação | Main
No módulo que será definido os modelos da aplicação, como o js/index.js
, deverá possuir a chamada para a função principal
para que o MIRA saiba que modelos utilizar para montar sua interface:
if(typeof define === 'function') {
// Se o ambiente for em um navegador
define([
// Local para se carregar as bibliotecas JavaScript que deseja utilizar,
// além daquelas que são padrão do MIRA
"jquery",
"bootstrap",
"mira/init"
], function Main($, $bootstrap, Mira) {
return function MyApplication() {
this.mira = new Mira.Application(interface_abstracts, concrete_interface, rules, selection, conf);
};
});
} else {
// Utilizado no modo servidor de seleção de interface
exports.abstracts = interface_abstracts;
exports.mapping = concrete_interface;
exports.selection = selection;
exports.rules = rules;
}
Estrutura de Arquivos
Arquivos
index.html
O arquivo index.html é o arquivo que inicia o MIRA.
js/index.js
Neste módulo temos uma aplicação de exemplo para se usar como modelo para sua aplicação.
Você pode escrever sua aplicação neste módulo ou criar uma nova aplicação com o nome que desejar na mesma pasta. A URL para acessar sua aplicação será:
http://localhost:3000/?app=file_name
js/config.js
Caso queira alterar o path de alguma biblioteca para usar algum CDN ou outra versão, altere este módulo.
Pastas
Logo a seguir, será explicado o que contém cada pasta
css/
Nesta pasta temos o bootstrap.css
e seus arquivos para customizar o css da sua aplicação.
fonts/
Nesta pasta temos as fontes padrões do bootstrap e você poderá adicionar as suas fontes também.
imgs/
Nesta pasta temos as imagens estáticas para a sua aplicação.
js/
Nesta pasta temos toda a estrutura de módulos do framework, dependência de bibliotecas externas e dos modelos da sua aplicação.
js/mira/
Todos os módulos do framework, evite alterar arquivos nesta pasta.
js/libs/
Nesta pasta temos todas as bibliotecas que o framework precisa para funcionar, caso queira fazer uso de alguma biblioteca externa, você pode adicionar nesta pasta.
js/test/
Nesta pasta temos todos os arquivos de testes unitários do framework.