Update README.md

This commit is contained in:
Yashar Panahi
2025-08-05 08:40:49 +03:30
parent e58e3a4bbb
commit c363e104a7
2 changed files with 170 additions and 17 deletions
+125 -9
View File
@@ -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.
+45 -8
View File
@@ -29,10 +29,10 @@ packages:
dependency: transitive
description:
name: async
sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
url: "https://pub.dev"
source: hosted
version: "2.13.0"
version: "2.12.0"
boolean_selector:
dependency: transitive
description:
@@ -181,10 +181,10 @@ packages:
dependency: transitive
description:
name: fake_async
sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc"
url: "https://pub.dev"
source: hosted
version: "1.3.3"
version: "1.3.2"
file:
dependency: transitive
description:
@@ -227,6 +227,11 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
flutter_web_plugins:
dependency: transitive
description: flutter
source: sdk
version: "0.0.0"
freezed:
dependency: "direct main"
description:
@@ -259,6 +264,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.3"
go_router:
dependency: "direct main"
description:
name: go_router
sha256: "8b1f37dfaf6e958c6b872322db06f946509433bec3de753c3491a42ae9ec2b48"
url: "https://pub.dev"
source: hosted
version: "16.1.0"
go_router_builder:
dependency: "direct dev"
description:
name: go_router_builder
sha256: e436f0c69e717bd215639fbe27381b7e6605a255852b45cb244e28f01ab2e93a
url: "https://pub.dev"
source: hosted
version: "3.0.0"
graphs:
dependency: transitive
description:
@@ -319,10 +340,10 @@ packages:
dependency: transitive
description:
name: leak_tracker
sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0"
sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec
url: "https://pub.dev"
source: hosted
version: "10.0.9"
version: "10.0.8"
leak_tracker_flutter_testing:
dependency: transitive
description:
@@ -347,6 +368,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "5.1.1"
logger:
dependency: "direct main"
description:
name: logger
sha256: "55d6c23a6c15db14920e037fe7e0dc32e7cdaf3b64b4b25df2d541b5b6b81c0c"
url: "https://pub.dev"
source: hosted
version: "2.6.1"
logging:
dependency: transitive
description:
@@ -488,6 +517,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.0.0"
source_helper:
dependency: transitive
description:
name: source_helper
sha256: "4f81479fe5194a622cdd1713fe1ecb683a6e6c85cd8cec8e2e35ee5ab3fdf2a1"
url: "https://pub.dev"
source: hosted
version: "1.3.6"
source_span:
dependency: transitive
description:
@@ -596,10 +633,10 @@ packages:
dependency: transitive
description:
name: vm_service
sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02
sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14"
url: "https://pub.dev"
source: hosted
version: "15.0.0"
version: "14.3.1"
watcher:
dependency: transitive
description: