commonroutesServer/README.md
README.mdRaw
1#CollectiveCar app
2
3frontend app code: https://github.com/idoctnef/collectivecarApp
4
5**Backend:**
6 Nodejs + Express + MongoDB
7
8**Frontend:**
9 Angularjs + Ionic + MaterialDesign
10
11
12
13
14##To Do List:
15**Backend and Frontend:**
16```
17-signup user --> done
18-loggin user --> done
19-update user profile --> done
20-create new travel --> done
21-update travel --> done
22-delete travel --> done
23-create offeringCar --> done
24-update offeringCar
25-delete offeringCar --> done
26-create askingForTravel (needtravel) --> done
27-update askingForTravel
28-delete askgingForTravel --> done
29-create askingPackage (need transport package) --> done
30-update askingPackage
31-delete askgingPackage --> done
32-user joins a car --> done
33-user offer car to a travel --> done
34-user offer car to a askingpackage --> done
35-user unjoins a car --> done
36-user unoffer car to a travel --> done
37-user unoffer car to a askingpackage --> done
38-comment publication(car, travel, package) --> done
39-valorating users system
40
41-GUI admin page
42
43-UX design
44-interface graphic design
45-icons
46-api more secure and robust (comprovations, hash passwords, ...)
47
48-web page (webapp) --> (de moment es pot penjar la app en versió web tal qual,
49 que es podrà fer servir des d'un navegador com si fós la app)
50```
51
52
53--------------------
54####**PARA LA BASE DE DATOS** [para definir como queremos q esté estructurado, pensando en las funcionalidades que queremos tener]:
55
56
57```
58var userSchema = new Schema({
59 username: { type: String },
60 password: { type: String },
61 description: { type: String },
62 avatar: { type: String },
63 mail: { type: String },
64 phone: { type: String },
65 telegram: { type: String }
66})
67var travelSchema = new Schema({
68 title: { type: String },
69 description: { type: String },
70 owner: { type: String },
71 from: { type: String },
72 to: { type: String },
73 date: { type: Date },
74 periodic: { type: Boolean },
75 generateddate: { type: Date },
76 seats: { type: Number },
77 package: { type: Boolean },
78 icon: { type: String },
79 phone: { type: Number },
80 telegram: { type: String },
81 collectivized: { type: Boolean },
82 modality: { type: String } //if is an offering travel or asking for travel
83})
84var joinSchema = new Schema({
85 travelId: { type: String },
86 joinedUserId: { type: String },
87 joinedUsername: { type: String },
88 acceptedUserId: { type: String },
89 joinedAvatar: { type: String }
90
91});
92var commentSchema = new Schema({
93 travelId: { type: String },
94 commentUserId: { type: String },
95 commentUsername: { type: String },
96 comment: { type: String },
97 commentAvatar: { type: String }
98
99});
100```
101--------------------
102
103
104####**RESOURCES using**:
105
106car icons [http://www.flaticon.com/packs/transportation-7](http://www.flaticon.com/packs/transportation-7)
107
108css para la app: matterializeCSS [http://materializecss.com/](http://materializecss.com/)
109
110avatars users: [http://www.flaticon.com/packs/animal-icon-collection](http://www.flaticon.com/packs/animal-icon-collection)
111
112
113
114
115
116mirar per fer hash de passwords https://www.npmjs.com/package/bcrypt-nodejs