gitmyhub

hub_mobile

Dart ★ 30 updated 3d ago

This repository holds the Flutter mobile application for CixioHub, a chat service with AI responses, document management, and to-do list features. Flutter is a framework that compiles a single Dart codebase to both iOS and Android, so one set of source files produces apps for both platforms at the same time.

The project structure separates concerns into models, services, and screens. Models define the data shapes for users, messages, and documents. Services handle the network layer: an HTTP client with authentication headers, login and registration calls, and a placeholder for push notification registration via Firebase Cloud Messaging. Screens contain the user interface, split into authentication (login and register, both marked complete), chat, documents, to-do lists, and profile views.

Several screens are marked as stubs or partial implementations with TODO labels indicating what still needs building. The chat screen has the basic layout but is missing the streaming logic that receives AI responses token by token as they arrive from the server. The documents screen, to-do screen, and profile screen are also incomplete. The service layer still needs token refresh handling for when the server returns a 401 unauthorized response.

Setup requires installing Flutter, running flutter pub get to fetch dependencies, and setting the backend API URL in a .env file. The app defaults to connecting to localhost on port 8000. Firebase setup is optional until push notifications are needed: it involves creating a Firebase project, adding platform configuration files, and uncommenting initialization code in main.dart.

The README reads as a student or learner exercise context, with clear labels for what is complete and what remains to be built. Both iOS Simulator and Android Emulator are listed as supported run targets.