Update README.md
This commit is contained in:
@@ -1,16 +1,132 @@
|
||||
# tm_app
|
||||
# Tender Management App
|
||||
|
||||
A new Flutter project.
|
||||
A Flutter-based mobile application for managing and tracking tenders, providing users with an intuitive interface to browse, track, and manage tender opportunities.
|
||||
|
||||
## Features
|
||||
|
||||
- **User Authentication**: Secure login system with user authentication
|
||||
- **Home Dashboard**: Overview of tender statistics and quick access to recent tenders
|
||||
- **Tender Management**: Browse and manage tenders with filtering and sorting capabilities
|
||||
- **User Profile**: Personalized user profile management
|
||||
- **Bottom Navigation**: Easy navigation between main sections of the app
|
||||
|
||||
## Getting Started
|
||||
|
||||
This project is a starting point for a Flutter application.
|
||||
### Prerequisites
|
||||
|
||||
A few resources to get you started if this is your first Flutter project:
|
||||
- Flutter SDK (3.0.0 or higher)
|
||||
- Dart SDK (3.0.0 or higher)
|
||||
- Android Studio / VS Code with Flutter plugins
|
||||
- An Android or iOS device/emulator for testing
|
||||
|
||||
- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab)
|
||||
- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook)
|
||||
### Installation
|
||||
|
||||
For help getting started with Flutter development, view the
|
||||
[online documentation](https://docs.flutter.dev/), which offers tutorials,
|
||||
samples, guidance on mobile development, and a full API reference.
|
||||
1. Clone the repository:
|
||||
```bash
|
||||
git clone [repository-url]
|
||||
cd tm_app
|
||||
```
|
||||
|
||||
2. Install dependencies:
|
||||
```bash
|
||||
flutter pub get
|
||||
```
|
||||
|
||||
3. Run the app:
|
||||
```bash
|
||||
flutter run
|
||||
```
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
tm_app/
|
||||
├── lib/
|
||||
│ ├── common/ # Shared components and widgets
|
||||
│ │ └── widgets/ # Common UI components
|
||||
│ ├── core/ # Core functionality
|
||||
│ │ ├── config/ # App configuration
|
||||
│ │ ├── constants/ # App constants (colors, strings, assets)
|
||||
│ │ ├── routes/ # Navigation and routing
|
||||
│ │ └── utils/ # Utility functions and helpers
|
||||
│ ├── data/ # Data layer
|
||||
│ │ ├── models/ # Data models
|
||||
│ │ ├── repositories/ # Data repositories
|
||||
│ │ └── services/ # API services
|
||||
│ ├── view_models/ # Business logic and state management
|
||||
│ ├── views/ # UI screens and pages
|
||||
│ │ ├── home/ # Home screen components
|
||||
│ │ ├── login/ # Login screen and widgets
|
||||
│ │ ├── profile/ # User profile screen
|
||||
│ │ └── tenders/ # Tender management screens
|
||||
│ └── main.dart # App entry point
|
||||
├── assets/ # Images, icons, and other assets
|
||||
├── android/ # Android-specific configuration
|
||||
├── ios/ # iOS-specific configuration
|
||||
└── test/ # Unit and widget tests
|
||||
```
|
||||
|
||||
## Key Components
|
||||
|
||||
### Authentication
|
||||
- Login screen with custom UI components
|
||||
- Authentication service and repository for user management
|
||||
- Secure credential handling
|
||||
|
||||
### Home Screen
|
||||
- Statistics dashboard showing tender metrics
|
||||
- Progress bars for visual data representation
|
||||
- Quick access to recent tenders list
|
||||
|
||||
### Tender Management
|
||||
- Main tender screen with tabbed interface
|
||||
- Tender cards with detailed information
|
||||
- Action buttons for tender interactions (like/dislike)
|
||||
- Slider for featured tenders
|
||||
|
||||
### Navigation
|
||||
- Bottom navigation bar for main sections
|
||||
- Go Router for navigation management
|
||||
- Shell route for persistent navigation
|
||||
|
||||
## Technologies Used
|
||||
|
||||
- **Flutter**: Cross-platform mobile framework
|
||||
- **Dart**: Programming language
|
||||
- **Go Router**: Navigation and routing
|
||||
- **Provider/Riverpod**: State management (based on view models structure)
|
||||
|
||||
## Assets
|
||||
|
||||
The app uses custom SVG icons and PNG images located in:
|
||||
- `/assets/icons/` - SVG icons for UI elements
|
||||
- `/assets/pngs/` - PNG images including logo
|
||||
- `/assets/svgs/` - Additional SVG assets
|
||||
|
||||
## Building for Production
|
||||
|
||||
### Android
|
||||
```bash
|
||||
flutter build apk --release
|
||||
```
|
||||
|
||||
### iOS
|
||||
```bash
|
||||
flutter build ios --release
|
||||
```
|
||||
|
||||
## Contributing
|
||||
|
||||
1. Fork the project
|
||||
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
|
||||
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
|
||||
4. Push to the branch (`git push origin feature/AmazingFeature`)
|
||||
5. Open a Pull Request
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the MIT License - see the LICENSE file for details.
|
||||
|
||||
## Support
|
||||
|
||||
For support and questions, please open an issue in the project repository.
|
||||
Reference in New Issue
Block a user