forked from tuulaflynn/matata-traveller-app
-
Notifications
You must be signed in to change notification settings - Fork 0
/
project-notes
113 lines (98 loc) · 4.26 KB
/
project-notes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
Matata Traveller- Your Carefree Journey
By Aalifa designs (Sofia Bilal, Tuula Flynn, Gabriela Patrichi)
Tourist Guide Application
Overview
--------
Welcome to our Travel Guide – your gateway to an exciting world of cities, cultures, and flavors!
Discover cities anew through our curated blog posts, uncover hidden gems at renowned attractions,
and savor the essence of local cuisine. Stay informed with up-to-date currency exchange rates for each destination
and never be caught off guard by the weather, as we provide you with the latest forecasts.
Your journey begins here – explore the beauty of each city, one click at a time.
Goals / User Requirements:
--------------------------
User Stories:
1. The user can view a list of all cities available and choose a city he/she is interested in
2. The user can view detailed information about a city, including the name,
country, picture as well as specific threads (including categories) and attractions
3. The user can enter a thread post
4. [The user can update a thread post] - endpoint made but will not grant access as currently users are anonymous
5. [The user can delete a thread post] - endpoint made but will not grant access as currently users are anonymous
6. The user can view all thread post for a city
7. The user can view threads posts for city, filtered by thread post category
8. The user can view all categories of threads available
9. [The user can add a new category] - endpoint made but will not grant access as currently users are anonymous
10. [The user can update a category] - endpoint made but will not grant access as currently users are anonymous
11. [The user can delete a category] - endpoint made but will not grant access as currently users are anonymous
12. The user can view the main attractions of the city.
13. The user can view details of each attraction (front end)
14. The user will receive weather forecasts for their travel destination
15. The user will be able to access a currency converter (calculate local currency rates)
Stretch goal:
-------------
The user can download a file containing a packing checklist and travel tips.
The user can request to add future cities in a form
Create user credentials - admin can delete threads, users can update/delete threads written by them
The user can fetch all blogs written by a specific user
The user can view the local cuisine of the city
Implement a language translator. Basic sentences.
Technical Specifications
--------------------------
Database: MySql (using ORM in java to interact with the database)
Backend: Java using Spring Data JPA framework
Frontend: VSCode Live Server plugin (not suitable for production)
N.B.a future development would be to look into getting the site hosted using AWS free cloud services.
Entities
---------
cityDto
> cityId
> cityName
> cityCountry
> cityCurrency
city-to-thread is one-to-many
city-to-attraction is one-to-many
threadDto
> threadId
> threadContent
> threadDate
thread-to-city is many-to-one
thread-to-category is many-to-many
categoryDto
> categoryId
> categoryName
category-to-thread is many-to-many
attractionDto
> attractionId
> attractionName
> attractionDescription
> attractionImage
attraction-to-city is many-to-one
Third party APIs
—---------------
weather - OpenWeatherApi https://openweathermap.org/api
currency - https:/exchangerate-api.com
language - https://libretranslate.de/translate
Not using
---------
Cuisines
>cuisineId
>cuisineName
>cuisineUrl
>cuisineDish
Language
> languageId
> languageDescription
Milestones (Reverse Planning)
------------------------------
Final Presentation - Friday, 29th of September
Presentation Completion - Thursday, 28th of September
System Testing and Code Freeze - Wednesday, 27th of September
Front End Application Completion - Wednesday, 27th of September
Back End Application Completion - Tuesday, 26th of September
Design Completion - Friday, 22th of September
Design includes:
- DB: normalization, ERD diagrams, SQL script file (create and insert data),
- Identifying the Entities / DTOs,
- Identifying the User Stories,
- Project Skeleton (DAO, Service, Controller)
Approval Completion - Thursday, 21st of September (by noon)
Project Outline/ Proposal Completion - Wednesday, 20th of September