Skip to content

msrovani/JARVIS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JARVIS - Assistente Virtual Inteligente

JARVIS Logo

Visão Geral

JARVIS é um assistente virtual inteligente multiplataforma desenvolvido em .NET MAUI, projetado para adaptar-se ao estilo de comunicação do usuário e oferecer uma experiência personalizada. O aplicativo utiliza técnicas avançadas de processamento de linguagem natural e análise de personalidade para criar uma interação mais natural e eficiente.

Características Principais

  • Multiplataforma: Funciona em Windows, Android, iOS e MacOS
  • Multilíngue: Suporte completo para múltiplos idiomas (português, inglês, espanhol e outros)
  • Análise de Personalidade: Adapta-se ao estilo de comunicação do usuário
  • Armazenamento Local: Utiliza SQLite para armazenar dados do usuário com segurança
  • Interface Intuitiva: Design moderno e responsivo para uma experiência de usuário agradável
  • Suporte a Voz: Entrada e saída de voz para interação mãos-livres
  • Processamento Contextual: Utiliza Microsoft Semantic Kernel para manter o contexto das conversas
  • Análise Emocional: Detecta emoções no texto para respostas mais apropriadas

Tecnologias Utilizadas

  • .NET MAUI: Framework para desenvolvimento multiplataforma
  • C#: Linguagem de programação principal
  • SQLite: Banco de dados local para armazenamento de dados
  • Google Gemini API: Para processamento de linguagem natural avançado
  • Microsoft Semantic Kernel: Para criação de cadeias de processamento de linguagem natural
  • TensorFlow: Para análise de texto e processamento de linguagem natural
  • SkiaSharp: Para renderização gráfica avançada

Arquitetura do Sistema

O JARVIS implementa uma arquitetura avançada de processamento de dados que inclui:

  1. Pré-processamento de Texto: Limpa e normaliza o texto de entrada, detecta padrões emocionais

  2. Geração de Embeddings: Converte texto em representações vetoriais para comparações semânticas

  3. Análise Emocional: Detecta emoções e nuances como sarcasmo para melhor compreensão

  4. Armazenamento Vetorial: Permite buscas semânticas eficientes por similaridade

  5. Orquestração com Microsoft Semantic Kernel: Integra todos os componentes em um fluxo coeso

  6. Serviço de Voz: Processamento de entrada/saída vocal com suporte a múltiplos idiomas e otimização de cache de áudio

Requisitos de Sistema

Windows

  • Windows 10 versão 1809 ou superior
  • 4GB de RAM (8GB recomendado)
  • 100MB de espaço em disco
  • .NET 8.0 SDK com workloads MAUI instalados

Android

  • Android 5.0 (API 21) ou superior
  • 2GB de RAM
  • 50MB de espaço em disco
  • Android SDK e Java JDK instalados
  • Variável de ambiente ANDROID_HOME configurada

iOS

  • iOS 11 ou superior
  • 50MB de espaço em disco
  • Mac com Xcode 13 ou superior para compilação

MacOS

  • macOS 11 (Big Sur) ou superior
  • 50MB de espaço em disco
  • Xcode 13 ou superior instalado

Instalação

Instalação a partir das Lojas de Aplicativos

  • Windows: Disponível na Microsoft Store
  • Android: Disponível no Google Play Store
  • iOS/MacOS: Disponível na App Store

Instalação Manual

Você pode baixar os executáveis pré-compilados da página de releases e instalar manualmente.

Configuração do Ambiente de Desenvolvimento

  1. Instale o Visual Studio 2022 com suporte a .NET MAUI
  2. Instale o .NET 8.0 SDK
  3. Instale os workloads do MAUI usando o comando: dotnet workload install maui
  4. Para desenvolvimento Android:
    • Instale o Android SDK
    • Configure a variável de ambiente ANDROID_HOME
    • Instale o Java JDK
  5. Para desenvolvimento iOS/MacCatalyst (requer macOS):
    • Instale o Xcode 13 ou superior
    • Configure os certificados de desenvolvedor
  6. Clone este repositório
  7. Crie um arquivo secrets.json na raiz do projeto baseado no modelo secrets.template.json
  8. Adicione sua chave de API do Gemini
  9. Abra o projeto no Visual Studio e compile

Compilando o Projeto

O projeto inclui um script PowerShell que automatiza o processo de build para todas as plataformas suportadas.

Exemplos de Uso do Script de Build

# Compilar para todas as plataformas
.\build.ps1 -Platform all -Configuration Release

# Compilar apenas para Android
.\build.ps1 -Platform android -Configuration Release

# Compilar para Windows com limpeza prévia
.\build.ps1 -Platform windows -Configuration Release -Clean

# Compilar e publicar para Android
.\build.ps1 -Platform android -Configuration Release -Publish

# Compilar, publicar e assinar o APK para Android
.\build.ps1 -Platform android -Configuration Release -Publish -SignAndroid -KeystorePath "caminho\para\keystore.keystore" -KeystorePassword "senha" -KeyAlias "alias"

Solução de Problemas Comuns

Erro: Workloads do .NET MAUI não instalados

Se você receber um erro indicando que os workloads do MAUI não estão instalados, execute:

dotnet workload install maui

Erro: Variável ANDROID_HOME não configurada

Para compilação Android, configure a variável de ambiente ANDROID_HOME apontando para o diretório do Android SDK:

# PowerShell (temporário)
$env:ANDROID_HOME = "C:\caminho\para\android-sdk"

# Ou configure permanentemente nas variáveis de ambiente do Windows

Localização dos Arquivos Gerados

Após a compilação, os arquivos executáveis estarão disponíveis nos seguintes diretórios:

  • Android: bin\Release\net8.0-android\android-arm64\publish\
  • iOS: bin\Release\net8.0-ios\ios-arm64\publish\
  • Windows: bin\Release\net8.0-windows10.0.19041.0\win-x64\publish\
  • MacCatalyst: bin\Release\net8.0-maccatalyst\osx-x64\publish\

Contribuindo

Contribuições são bem-vindas! Por favor, leia as diretrizes de contribuição antes de enviar um pull request.

Licença

Este projeto está licenciado sob a licença MIT - veja o arquivo LICENSE para detalhes.

Contato

Para dúvidas ou sugestões, abra uma issue ou entre em contato com a equipe de desenvolvimento.


Desenvolvido com ❤️ pela Equipe JARVIS

About

Assistente pessoal

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published