You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+167-43
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,10 @@
1
-
# Blockbuster Reborn - '*Because Netflix is so Last Season*' 🍿🎞 (Work in Progress)
1
+
# Blockbuster Reborn - '*Because Netflix is so Last Season*' 🍿🎞 (NOT COMPLETED)
2
2
3
3
Get ready to feast your eyes on a cinematic smorgasbord with Blockbuster Reborn, the go-to streaming site that brings the joy of movie nights back to life. Browse through our vibrant virtual shelves, packed with blockbuster hits, indie darlings, and everything in between. Interact with fellow film aficionados in our bustling online community, and join us for unforgettable themed movie nights. Blockbuster Reborn is your one-stop shop for pure movie magic. 🪄🎬
4
4
5
5
##### ⚠️ It is important to note that our project: Blockbuster Reborn, is solely intended for educational purposes and does not involve any commercial use of the Blockbuster, Amazon, HBO, Hulu, Netflix, or YouTube brand or material. We do not hold any rights to use their content or images. Our aim is to showcase our skills and knowledge in Full Stack Software Development.
This project is a Bookkeeper API containing movies and TV shows within a 'movielist.' Each movie and TV show contains the title, cast, genre, language, rating and review.
51
+
This project is a Blockbuster Reborn API containing movies and TV shows within a 'movielist.' Each movie and TV show contains the title, cast, genre, language, rating and review.
53
52
54
53
The program allows the user to have a movie/TV show stored in their 'watchlist' as well as add their own rating and review for added personalisation.
Each model - Movie, Cast and MovieCastMember - have REST controllers that provide basic CRUD functionality, specifically Index, Show, Create, Update and Delete routes. The Movie and Cast models also have additional functionality, described below:
121
120
122
-
- INDEX:
123
-
-`GET http://localhost:8080/movies` returns all books in JSON format and can be accessed via web browser
124
-
- This method is available for all other models
121
+
### 1. GET (SHOW)
122
+
123
+
**1.1 GET All Movies** <br>
124
+
``````
125
+
Method: GET
126
+
Endpoint : /movies
127
+
URL: http://localhost:8080/movies
128
+
```````
129
+
This GET request retrieves all the movies available in the API.
130
+
131
+
**1.2 GET All Casts** <br>
132
+
``````
133
+
Method: GET
134
+
Endpoint : /casts
135
+
URL: http://localhost:8080/casts
136
+
```````
137
+
This GET request retrieves all the casts available in the API.
138
+
139
+
**1.3 GET Movie By Id** <br>
140
+
``````
141
+
Method: GET
142
+
Endpoint : /movies/1
143
+
URL: http://localhost:8080/movies/1
144
+
```````
145
+
146
+
This GET method retrieves a single Movie resource by its unique identifier (Id) specified in the URL path parameter. In this case, the Id is 1. The method returns the Movie object with all its associated properties such as the title,duration,watchList,review,rating,trailer,language and genre.
147
+
148
+
**1.4 GET Cast By Id** <br>
149
+
``````
150
+
Method: GET
151
+
Endpoint : /casts/1
152
+
URL: http://localhost:8080/casts/1
153
+
```````
154
+
155
+
This GET method retrieves a single Cast resource by its unique identifier (Id) specified in the URL path parameter. In this case, the Id is 1. The method returns the Cast object with all its associated properties such as the name,age and bio.
156
+
157
+
**1.5 GET Movies By Genre** <br>
158
+
``````
159
+
Method: GET
160
+
Endpoint : /movies/genre/ACTION
161
+
URL: http://localhost:8080/movies/genre/ACTION
162
+
```````
163
+
164
+
This GET method retrieves a all the Action Movies available in the API. The following can also be done for Originals,Top-Rated,Comedy,Documentaries and Horror. Refer to Genre(Enum) in BackEnd Project Description.
165
+
166
+
**1.6 GET 5 Random Movies** <br>
167
+
``````
168
+
Method: GET
169
+
Endpoint : /movies/random
170
+
URL: http://localhost:8080/movies/random
171
+
```````
172
+
173
+
This GET method retrieves 5 random movies from the API everytime the URL link is refreshed.
174
+
175
+
<hr />
125
176
126
-
- SHOW:
127
-
-`GET http://localhost:8080/movies/{movieId}` returns movies with unique id = {id} and can be accessed via web browser
177
+
### 2. POST (CREATE)
178
+
179
+
**2.1 POST New Movies**:<br>
180
+
``````
181
+
Method: POST
182
+
Endpoint : /movies
183
+
URL: http://localhost:8080/movies
184
+
```````
185
+
186
+
The request body must be a JSON object containing the title,duration,watchList,review,rating,trailer,language and genre. The language and genre enum values are all listed in the API BackEnd Project Description section. If the request is successful, it will respond with a status code of 201 (Created) and the newly created Movie object in the response body.
187
+
188
+
In Postman, select Body -> JSON -> raw and enter the following for the request body:
In this example, the language enum value is "ENGLISH" and the genre enum is "ACTION" . If you want to use other examples, please refer to the listed language and genre enum values in the BackEnd Project description. Anything not on the list will NOT work.Please Note that language enum and genre enum must be all written in uppercase letters.
204
+
205
+
**2.2 POST New Cast:**:<br>
206
+
``````
207
+
Method: POST
208
+
Endpoint : /casts
209
+
URL: http://localhost:8080/casts
210
+
```````
211
+
212
+
The request body must be a JSON object containing the name,age and bio. If the request is successful, it will respond with a status code of 201 (Created) and the newly created Movie object in the response body.
213
+
214
+
In Postman, select Body -> JSON -> raw and enter the following for the request body:
215
+
```````
216
+
{
217
+
"id":59,
218
+
"name":"Tom Holland",
219
+
"age": 26,
220
+
"bio":"Thomas Stanley Holland is an English actor. His accolades include a British Academy Film Award and three Saturn Awards."
221
+
}
222
+
```````
223
+
224
+
In this example, a new Cast member named "Tom Holland has been added to the API.
225
+
226
+
<hr />
128
227
129
-
- CREATE:
130
-
-`POST http://localhost:8080/movies` creates a movie with a unique id, and returns the created movie.
131
-
- Attributes of this new movie must be sent within the request body in Postman.
228
+
### 3. PUT (UPDATE)
132
229
133
-
- UPDATE:
134
-
-`PUT http://localhost:8080/movies/{movieId}` updates movies with unique id = {id} and returns the updated book.
135
-
- All attributes, changed or not, must be included in the request body in Postman.
230
+
Finish this off later on
136
231
137
-
- DELETE:
138
-
-`DELETE http://localhost:8080/movies/{movieId}` deletes movie with unique id = {id}.
139
-
- This must be done in Postman. If delete request is successful, Http status 202 - no content - is returned.
232
+
**3.1 PUT Update Movie**:
233
+
234
+
235
+
236
+
237
+
140
238
141
239
### Filters and Sort
142
240
@@ -156,9 +254,12 @@ The movie model contains filters and a sort that allow the user to narrow their
### If you would like to keep up to date with **Blockbuster Reborn** 🍿, our **future developments** 🤔 and perhaps **collaborate** 🤝, **please STAR** this repository 🌟 and/or feel free to **reach out to us**.
0 commit comments