Skip to content

Viniciuss-Moreira/TabNews-iOS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TabNews iOS

iOS 15.0+ Swift 5.5+ SwiftUI 3.0+ License: MIT

Um cliente iOS não oficial para o TabNews, desenvolvido com SwiftUI e consumindo a API pública da plataforma.

⚠️ Aviso: Este não é um projeto oficial do TabNews. Trata-se de um cliente iOS desenvolvido de forma independente, utilizando a API pública disponibilizada pela plataforma.

📱 Sobre o Projeto

O TabNews iOS surgiu do desejo de ter uma experiência nativa para iOS ao acessar o TabNews. Como a comunidade demonstrou interesse na ideia, o projeto foi iniciado e está sendo desenvolvido de forma aberta e colaborativa.

Status Atual

Atualmente o app conta com as seguintes funcionalidades:

  • ✅ Login de usuário
  • ✅ Logout
  • 🚧 Listagem de conteúdos (em desenvolvimento)
  • 🚧 Visualização de posts (em desenvolvimento)
  • 🚧 Comentários (planejado)
  • 🚧 Criação de posts (planejado)
  • 🚧 Perfil de usuário (planejado)

🚀 Tecnologias

  • Swift 5.5+
  • SwiftUI - Framework de interface
  • Async/Await - Para operações assíncronas
  • URLSession - Para comunicação com a API

📋 Requisitos

  • iOS 15.0 ou superior
  • Xcode 14.0 ou superior
  • macOS Monterey ou superior (para desenvolvimento)

🔧 Instalação

  1. Clone o repositório:
git clone https://github.com/rychillie/TabNews-iOS.git
cd TabNews-iOS
  1. Abra o projeto no Xcode:
open TabNews.xcodeproj
  1. Execute o projeto:
    • Selecione um simulador ou dispositivo físico
    • Pressione Cmd + R ou clique no botão de play

🏗️ Estrutura do Projeto

TabNews/
├── Models/           # Modelos de dados
├── Services/         # Serviços de API e autenticação
├── ViewModels/       # ViewModels (MVVM)
├── Views/           # Views do SwiftUI
└── Assets.xcassets/ # Recursos visuais

📡 API

O projeto utiliza a API pública do TabNews. A documentação completa da API pode ser encontrada na documentação da comunidade.

Base URL: https://www.tabnews.com.br/api/v1

Endpoints Principais

  • POST /sessions - Autenticação
  • GET /contents - Listagem de conteúdos
  • GET /contents/{user}/{slug} - Detalhes de um post
  • POST /contents - Criar conteúdo
  • GET /contents/{user}/{slug}/children - Comentários

🤝 Contribuindo

Contribuições são muito bem-vindas! Por favor, leia o Guia de Contribuição antes de enviar sua Pull Request.

Como Contribuir

  1. Faça um Fork do projeto
  2. Crie uma branch para sua feature (git checkout -b feature/MinhaFeature)
  3. Commit suas mudanças (git commit -m 'Adiciona MinhaFeature')
  4. Push para a branch (git push origin feature/MinhaFeature)
  5. Abra uma Pull Request

📝 Roadmap

  • Implementar listagem de posts da página inicial
  • Implementar visualização completa de posts
  • Adicionar suporte a comentários
  • Implementar criação de posts
  • Adicionar edição de posts
  • Implementar perfil de usuário
  • Adicionar sistema de notificações
  • Implementar busca
  • Modo escuro/claro
  • Suporte a iPad
  • Suporte a widgets

🐛 Reportando Bugs

Encontrou um bug? Por favor, abra uma issue descrevendo:

  • O comportamento esperado
  • O comportamento atual
  • Passos para reproduzir
  • Screenshots (se aplicável)
  • Versão do iOS e do app

📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

👤 Autor

Rychillie Umpierre de Oliveira

🙏 Agradecimentos

  • TabNews e Filipe Deschamps pela plataforma incrível e API pública
  • Toda a comunidade TabNews pelo apoio e interesse no projeto
  • Todos os contribuidores que ajudarem a tornar este projeto melhor

⚖️ Disclaimer

Este é um projeto independente e não possui afiliação oficial com o TabNews ou seus criadores. O app utiliza apenas APIs públicas disponibilizadas pela plataforma.


Feito com ❤️ para a comunidade TabNews

About

A versão nativa para ecossistamas Apple do TabNews

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 100.0%