@@ -0,0 +1,215 @@
+import 'package:flutter/material.dart';
+
+class ReviewView extends StatelessWidget {
+  const ReviewView({super.key});
+
+  @override
+  Widget build(BuildContext context) {
+    return Scaffold(
+      appBar: _appBar(context),
+      floatingActionButton: _floating(),
+      floatingActionButtonLocation: FloatingActionButtonLocation.endFloat,
+      body: SingleChildScrollView(
+          child: Column(children: [
+        _button(),
+        ...List.generate(
+            30,
+            (index) => Padding(
+                  padding: const EdgeInsets.only(bottom: 20),
+                  child: _review(),
+                )),
+      ])),
+    );
+  }
+
+  AppBar _appBar(BuildContext context) => AppBar(
+        backgroundColor:
+            Theme.of(context).colorScheme.tertiary.withOpacity(0.0),
+        foregroundColor: Theme.of(context).colorScheme.onSecondary,
+        leading: GestureDetector(
+          onTap: () => Navigator.of(context).pop(),
+        ),
+        elevation: 0.0,
+        title: Text(
+          "레시피 등록",
+          style: Theme.of(context).textTheme.headlineLarge,
+        ),
+      );
+
+  Widget _button() => Builder(builder: (context) {
+        return Padding(
+          padding:
+              const EdgeInsets.only(top: 20, right: 10, left: 300, bottom: 20),
+          child: Container(
+            width: 75,
+            height: 34,
+            decoration: BoxDecoration(
+                borderRadius: BorderRadius.circular(12),
+                color: Theme.of(context).colorScheme.secondary),
+            child: Row(
+              mainAxisAlignment: MainAxisAlignment.center,
+              children: [
+                Padding(
+                  padding: const EdgeInsets.only(right: 8),
+                  child: Text(
+                    "최신순",
+                    style: Theme.of(context).textTheme.bodySmall,
+                  ),
+                ),
+                Icon(
+                  Icons.arrow_drop_down_sharp,
+                  color: Colors.white,
+                )
+              ],
+            ),
+          ),
+        );
+      });
+
+  Widget _review() => Builder(builder: (context) {
+        return Container(
+          width: 350,
+          decoration: BoxDecoration(
+            color: Theme.of(context).colorScheme.onPrimaryContainer,
+            borderRadius: BorderRadius.circular(12.0),
+          ),
+          child: Padding(
+            padding: const EdgeInsets.all(16.0),
+            child: Column(
+              crossAxisAlignment: CrossAxisAlignment.start,
+              children: [
+                Row(
+                  children: [
+                    Padding(
+                      padding: const EdgeInsets.only(left: 10),
+                      child: Container(
+                        width: 48,
+                        height: 48,
+                        decoration: BoxDecoration(
+                          color: Theme.of(context).colorScheme.tertiary,
+                          borderRadius: BorderRadius.circular(12),
+                        ),
+                      ),
+                    ),
+                    Padding(
+                      padding: const EdgeInsets.only(top: 10, left: 10),
+                      child: Text(
+                        "닉네임",
+                        style: Theme.of(context).textTheme.bodyMedium,
+                      ),
+                    )
+                  ],
+                ),
+                Padding(
+                  padding: const EdgeInsets.only(
+                      top: 15, bottom: 15, left: 10, right: 5),
+                  child: Row(
+                    children: [
+                      Container(
+                        decoration: BoxDecoration(
+                          color: Theme.of(context).colorScheme.tertiary,
+                          borderRadius: BorderRadius.circular(10.0),
+                        ),
+                        padding:
+                            EdgeInsets.symmetric(horizontal: 8, vertical: 4),
+                        child: Text(
+                          "혼자 먹기 좋아요",
+                          style: Theme.of(context).textTheme.labelMedium,
+                        ),
+                      ),
+                      Padding(
+                        padding: const EdgeInsets.symmetric(horizontal: 5),
+                        child: Container(
+                          decoration: BoxDecoration(
+                            color: Theme.of(context).colorScheme.tertiary,
+                            borderRadius: BorderRadius.circular(10.0),
+                          ),
+                          padding:
+                              EdgeInsets.symmetric(horizontal: 8, vertical: 4),
+                          child: Text(
+                            "든든해요",
+                            style: Theme.of(context).textTheme.labelMedium,
+                          ),
+                        ),
+                      ),
+                      Container(
+                        decoration: BoxDecoration(
+                          color: Theme.of(context).colorScheme.tertiary,
+                          borderRadius: BorderRadius.circular(10.0),
+                        ),
+                        padding:
+                            EdgeInsets.symmetric(horizontal: 8, vertical: 4),
+                        child: Text(
+                          "저렴해요",
+                          style: Theme.of(context).textTheme.labelMedium,
+                        ),
+                      ),
+                    ],
+                  ),
+                ),
+                Padding(
+                  padding:
+                      const EdgeInsets.symmetric(vertical: 10, horizontal: 10),
+                  child: SingleChildScrollView(
+                    scrollDirection: Axis.horizontal,
+                    child: Row(
+                      children: [
+                        Container(
+                          width: 160,
+                          height: 160,
+                          decoration: BoxDecoration(
+                            color: Theme.of(context).colorScheme.tertiary,
+                            borderRadius: BorderRadius.circular(12),
+                          ),
+                        ),
+                        Padding(
+                          padding: const EdgeInsets.symmetric(horizontal: 10),
+                          child: Container(
+                            width: 160,
+                            height: 160,
+                            decoration: BoxDecoration(
+                              color: Theme.of(context).colorScheme.tertiary,
+                              borderRadius: BorderRadius.circular(12),
+                            ),
+                          ),
+                        ),
+                        Padding(
+                          padding: const EdgeInsets.symmetric(horizontal: 10),
+                          child: Container(
+                            width: 160,
+                            height: 160,
+                            decoration: BoxDecoration(
+                              color: Theme.of(context).colorScheme.tertiary,
+                              borderRadius: BorderRadius.circular(12),
+                            ),
+                          ),
+                        ),
+                      ],
+                    ),
+                  ),
+                ),
+                Padding(
+                  padding: const EdgeInsets.only(top: 20),
+                  child: Text(
+                    "오늘은 생토마토가 없어서 홀토마토를 사용했어요.^^ 요거 한 통 다 들어갔네요. 전체 스프의 양은 8인분 정도??",
+                    style: Theme.of(context).textTheme.bodyMedium,
+                  ),
+                ),
+              ],
+            ),
+          ),
+        );
+      });
+
+  Widget _floating() => Builder(builder: (context) {
+        return FloatingActionButton(
+          onPressed: () {},
+          backgroundColor: Color(0xffFFB300),
+          child: Image.asset(
+            'assets/images/floating.png',
+            width: 33,
+            height: 28,
+          ),
+        );
+      });
+}

리뷰: 플로팅 버튼 제거하셔도 됩니다. 이전 PR 참고해주세요.