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: contributing/proposals/mid-specialism-course-project.md
+27-4Lines changed: 27 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
In the old bootcamp, we had an individual project in the second half that practiced the "whole process" of creating a full stack app and deploying it. It was called "meal sharing".
6
6
7
-
The project was split over multiple modules: [React](https://github.com/HackYourFuture-CPH/react), [Node](https://github.com/HackYourFuture-CPH/node.js) and [Database](https://github.com/HackYourFuture-CPH/databases). That makes it a little hard to see exactly the scope of the project, but all the old tasks are explained in those archived repos.
7
+
The project was split over multiple modules. This makes it a little hard to get a quick overview. [See the table](#old-meal-sharing-content) at the bottom of this proposal if you wish to read more about the old project.
8
8
9
9
The new Program does not currently include this meal sharing project. We are now planning on including a similar project, and this proposal outlines some intentions/assumptions.
10
10
@@ -16,9 +16,11 @@ Some starting points:
16
16
1. It should be the same "theme" across all specialisms, but the implementation requirements differ.
17
17
2. Each specialism has it's own scope based specifically on the course's content. See examples below.
18
18
3. It should be organised similarly as the mealsharing project, in that it should:
19
-
1. Run across 4-5 weeks in the specialism course
20
-
2. Be built alongside assignments in existing modules (React, Node, Databases)
21
-
3. Be an individual project
19
+
1. Be built alongside assignments in existing modules (React, Node, Databases etc.)
20
+
2. Be an individual project
21
+
4. The content should be separate, and not combined inside other modules content. This makes it easier to maintain and reason about.
22
+
5. The innitial tasks should be clear, but the design and bigger scope should be open, so trainees can practice coming up with their own solutions, and have some scope to "make it their own".
23
+
6. Run with a reduced scope/time (compared to meal sharing) at 3 weeks (up for discussion).
22
24
23
25
24
26
## Main learning goal ideas
@@ -69,3 +71,24 @@ Build _only_ backend related parts of the app. There would be no end to end app
69
71
2. Work with a couple of mentors to brainstorm themes and build out a couple of potential project tasks that fit well in the current specialisms
70
72
3. Build and test any boilerplate/starting code for the projects
71
73
4. Integrate into the existing specialisms, either alongside existing assignments, or replacing them (or reducing them, so it doesn't become too much work)
74
+
75
+
## References
76
+
77
+
### Thanks
78
+
79
+
This proposal was based off the ideas that Bjørn outlied in [this original](https://github.com/HackYourFuture-CPH/program/pull/139) proposal, so mega thanks to him for starting the conversation. Since he's on a little break from this project, I am taking it over and putting some more words around it :-)
80
+
81
+
### Old meal sharing content
82
+
83
+
The old meal sharing project spanned 6 weeks and was a project involving both frontend and backend development.
84
+
85
+
| Area | Module | Topic | Description |
86
+
| ---| ---| ---| --- |
87
+
| Backend |[Databases week 3](https://github.com/HackYourFuture-CPH/databases/blob/main/lesson3/README.md#homework)| DB schema & queries | Create the database schema and queries needed for the meal sharing app. Entities include **Meals**, **Reservations**, and **Reviews**|
88
+
| Backend |[Node.js week 1](https://github.com/HackYourFuture-CPH/node.js/blob/main/week1/homework/readme.md#meal-sharing-endpoints)| Simple GET endpoints | Use the project template to connect to the database. Create a few GET endpoints without any arguments which returns **Meals**. Also validate requests and return correct error codes. |
89
+
| Backend |[Node.js week 2](https://github.com/HackYourFuture-CPH/node.js/blob/main/week2/homework/readme.md#meal-sharing-endpoints)| CRUD endpoints with body | Extend the API to contain standard CRUD endpoints for **Meals** and **Reservations**. |
90
+
| Backend |[Node.js week 3](https://github.com/HackYourFuture-CPH/node.js/blob/main/week3/homework/readme.md#meal-sharing-endpoints)| Advanced endpoints with query parameters | Extend the API to contain standard CRUD endpoints for **Reviews**. Extend **Meal** endpoint to allow for filtering and sorting |
91
+
| Frontend |[React 1 week 3](https://github.com/HackYourFuture-CPH/React/blob/main/react1/week3/homework.md#meal-sharing)| Simple overview of meals | Create a simple page with a list of all meals. Fetch the data from the backend. |
92
+
| Frontend |[React 2 week 1](https://github.com/HackYourFuture-CPH/React/blob/main/react2/week1/homework.md#meal-sharing)| Card based overview of meals | Design the overview page to use a responsive grid of cards. Start using multiple components. |
93
+
| Frontend |[React 2 week 2](https://github.com/HackYourFuture-CPH/React/blob/main/react1/week3/homework.md#meal-sharing)| Add sub pages | Add routing and add a landing page, a meal overview page, and a meal detail page. The meal details page should contain forms to reserve a meal or review it. |
94
+
| Frontend |[Meal sharing session](https://github.com/HackYourFuture-CPH/React/blob/main/react2/Meal-sharing/homework.md#meal-sharing-session)| Add searching, filtering, and sorting | Add searching, filtering, and sorting functionality to the meal overview page, a meal overview page. Show available spots for a meal. Add additional polishing. |
0 commit comments