Skip to content

Commit 46ef47a

Browse files
authored
Hotels (#304)
1 parent 2121ab8 commit 46ef47a

File tree

19 files changed

+1052
-319
lines changed

19 files changed

+1052
-319
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Hotel Image Generation Prompts
2+
3+
This document contains the prompts used to generate images for the fictional "Dart Inn" and "Grand Flutter Hotel" for the travel app.
4+
5+
## The Dart Inn
6+
7+
### Core Prompt
8+
9+
A beautiful, modern hotel named **'The Dart Inn'**. It features sleek, minimalist architecture with sharp, clean lines. The building has a subtle color palette of deep blues and teals, inspired by the Dart language logo, with glowing white accents. The scene is at dusk, with warm interior lights contrasting the cool exterior tones, creating a professional and inviting atmosphere.
10+
11+
### Style & Format
12+
13+
- **Style:** Photorealistic, high-resolution, architectural photography.
14+
- **Inspiration:** Use the Dart language logo for color and style inspiration.
15+
- **Application:** The image is for a mobile app. Details should be clear but not overly complex, with the hotel name and any logos being large and easily visible.
16+
17+
## The Grand Flutter Hotel
18+
19+
### Core Prompt
20+
21+
A stunning, vibrant hotel called **'The Grand Flutter Hotel'**. The architecture is expressive and fluid, with graceful curves and beautiful, layered balconies. The hotel is adorned with the bright, friendly blue of the Flutter logo, and its facade features a dynamic, colorful light display. The setting is a bright, sunny day, making the hotel look welcoming and full of creative energy.
22+
23+
### Style & Format
24+
25+
- **Style:** Photorealistic, high-resolution, capturing a feeling of beauty and innovation.
26+
- **Inspiration:** Use the Flutter logo for color and style inspiration.
27+
- **Application:** The image is for a mobile app. Details should be clear but not overly complex, with the hotel name and any logos being large and easily visible.
1.48 MB
Loading
2.18 MB
Loading

examples/travel_app/lib/main.dart

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class _TravelAppBody extends StatelessWidget {
7474
Widget build(BuildContext context) {
7575
final tabs = {
7676
'Travel': TravelPlannerPage(aiClient: aiClient),
77-
'Widget Catalog': CatalogView(catalog: travelAppCatalog),
77+
'Widget Catalog': const CatalogTab(),
7878
};
7979
return DefaultTabController(
8080
length: tabs.length,
@@ -105,3 +105,22 @@ class _TravelAppBody extends StatelessWidget {
105105
);
106106
}
107107
}
108+
109+
class CatalogTab extends StatefulWidget {
110+
const CatalogTab({super.key});
111+
112+
@override
113+
State<CatalogTab> createState() => _CatalogTabState();
114+
}
115+
116+
class _CatalogTabState extends State<CatalogTab>
117+
with AutomaticKeepAliveClientMixin {
118+
@override
119+
Widget build(BuildContext context) {
120+
super.build(context);
121+
return CatalogView(catalog: travelAppCatalog);
122+
}
123+
124+
@override
125+
bool get wantKeepAlive => true;
126+
}

examples/travel_app/lib/src/catalog.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import 'catalog/input_group.dart';
1010
import 'catalog/itinerary_day.dart';
1111
import 'catalog/itinerary_entry.dart';
1212
import 'catalog/itinerary_with_details.dart';
13+
import 'catalog/listings_booker.dart';
1314
import 'catalog/options_filter_chip_input.dart';
1415
import 'catalog/padded_body_text.dart';
1516
import 'catalog/section_header.dart';
@@ -30,6 +31,7 @@ final travelAppCatalog = CoreCatalogItems.asCatalog().copyWith([
3031
inputGroup,
3132
optionsFilterChipInput,
3233
checkboxFilterChipsInput,
34+
listingsBooker,
3335
travelCarousel,
3436
itineraryWithDetails,
3537
itineraryDay,

0 commit comments

Comments
 (0)