arnaucube
arnaucube/commonroutesServerPublic Self-hosted repository
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-signup unique username                               		          --> done
 19-loggin user	                                                  		--> done
 20-update user profile                                              	--> done
 21-create new travel	                                               	--> done
 22-update travel		                                                 	--> done
 23-delete travel		                                                 	--> done
 24-create offeringCar                                                	--> done
 25-update offeringCar
 26-delete offeringCar                                                 --> done
 27-create askingForTravel (needtravel)                                --> done
 28-update askingForTravel
 29-delete askgingForTravel                                            --> done
 30-create askingPackage (need transport package)                      --> done
 31-update askingPackage
 32-delete askgingPackage                                              --> done
 33-user joins a car                                                   --> done
 34-user offer car to a travel                                         --> done
 35-user offer car to a askingpackage                                  --> done
 36-user unjoins a car                                                 --> done
 37-user unoffer car to a travel                                       --> done
 38-user unoffer car to a askingpackage                                --> done
 39-comment publication(car, travel, package)                          --> done
 40-valorating users system                                            --> done
 41
 42-passed dates not shown from server                                 --> done
 43-don't allow to add travels with passed date (on frontend and backend)
 44
 45-acabar de fer robust quan esborres un travel
 46
 47-GUI admin page
 48
 49-UX design
 50-interface graphic design
 51-icons
 52-api more secure and robust (comprovations, hash passwords, ...)
 53
 54-web page (webapp) --> (de moment es pot penjar la app en versió web tal qual,
 55  que es podrà fer servir des d'un navegador com si fós la app)
 56
 57-es veu el telèfon dels users?
 58-com evitem q algú xungu es registri a la app i vegi els viatges i info dels users?
 59
 60
 61-falta acabar notification system
 62  quan mires les notificacions, que avisi al server q ja les has vist, i que el server les marqui com a llegides
 63  link a les notificacions
 64  acabar de mirar q a la app, quan agafa els users del server, tingui actualitzades les notificacions del user al menu
 65```
 66
 67
 68--------------------
 69####**PARA LA BASE DE DATOS** [para definir como queremos q esté estructurado, pensando en las funcionalidades que queremos tener]:
 70
 71
 72```
 73var userSchema = new Schema({
 74    username: { type: String },
 75    password: { type: String },
 76    description:   { type: String },
 77    avatar:   { type: String },
 78    mail:   { type: String },
 79    phone: { type: String },
 80    telegram: { type: String }
 81})
 82var travelSchema = new Schema({
 83    title: { type: String },
 84    description: { type: String },
 85    owner:   { type: String },
 86    from: { type: String },
 87    to: { type: String },
 88    date: { type: Date },
 89    periodic: { type: Boolean },
 90    generateddate: { type: Date },
 91    seats: { type: Number },
 92    package: { type: Boolean },
 93    icon: { type: String },
 94    phone: { type: Number },
 95    telegram: { type: String },
 96    collectivized: { type: Boolean },
 97    modality: { type: String } //if is an offering travel or asking for travel
 98})
 99var joinSchema = new Schema({
100    travelId: { type: String },
101    joinedUserId: { type: String },
102    joinedUsername: { type: String },
103    acceptedUserId: { type: String },
104    joinedAvatar: { type: String }
105
106});
107var commentSchema = new Schema({
108    travelId: { type: String },
109    commentUserId: { type: String },
110    commentUsername: { type: String },
111    comment: { type: String },
112    commentAvatar: { type: String }
113
114});
115```
116--------------------
117
118
119####**RESOURCES using**:
120
121car icons [http://www.flaticon.com/packs/transportation-7](http://www.flaticon.com/packs/transportation-7)
122
123css para la app: matterializeCSS [http://materializecss.com/](http://materializecss.com/)
124
125avatars users: [http://www.flaticon.com/packs/animal-icon-collection](http://www.flaticon.com/packs/animal-icon-collection)
126
127
128
129
130
131mirar per fer hash de passwords https://www.npmjs.com/package/bcrypt-nodejs