MeetHub is a platform for students to connect with students form different universities and share notes, network with them and attend events. All powered by JSP, Servlet, with data being kept on MySQL and MongoDB, with the code written in Java.
Another academic project by @adiiaditya

- User can register and login using .edu mail-id.
- User can upload a profile and cover picture and update their profile information.
- User can update their status on timeline.
- User can comment on the status on the timeline of other users.
- User can add other users as a friend, which will be displayed on their friends page along with their mutual friends.
- User can send messages to other users,reply to messages, view the sent messages and the conversation thread.
- User can create events and add friends to the event.
- User can see the list of events which he/she has created and has been added to.
- Groups of different universities.
- User can join/leave any university group.
- User can see the members of a particular university group.
- User can see the tweets based on the university groups.
- user can upload/download documents.
- The document can be uploaded as private/public. If shared as public, users from any university can access the document while if shared as private, users from only that particular university can access the document under which it is uploaded.
- User tries logging in with wrong password.

- User tries to register with an already existing email address.

- Prompt after user tries registering with invalid email address.

- Profile Page of a User.

- Update Profile screen.

- User Timeline where posts are mentioned.

- User adding a friend.

- After adding a friend, we get a pending approval message instead of Add as a Friend.

- After accepting a friend request, we can remove them.

- Friends Page displaying friends and common friends

- Events Page along with events created

- Create Events Form page

- Groups page

- Inside a group, display group users and tweets

- Empty Inbox

- Send New Message

- Inbox Message being displayed for the receiver user

- After replying to the message

- Notifications Page

- Search for users
- Start the MongoDB server with mongod.exe.
- Start the MySQL database
- database name is “MeetHubDatabase” so create that first
- The create table commands of each table that are necessary for the project to run are given in the queries.txt file
- Tables created are: a. AddTogroup. b. EventsTable. c. FriendList. d. MessageList. e. StatusList. f. UserEvent. g. UserProfile.
- The information to automatically populate the database is given in the .sql files present in the Data folder. These can be imported by going to Server, Data Import, Import from self contained file, browse to the particular file to be imported, select default target schema as MeetHubDatabase and select start import.
- Repeat this step for all the files present in the Data folder.
- Add the two jar files that are present in the "jar files" folder that is given into the lib folder of apache.
- Run the following command to compile all the files: javac -cp "/usr/local/Cellar/tomcat/8.5.5/libexec/lib/servlet-api.jar:/usr/local/Cellar/tomcat/8.5.5/libexec/lib/mysql-connector-java-5.1.40-bin.jar:/usr/local/Cellar/tomcat/8.5.5/libexec/lib/mongo-java-driver-3.2.2.jar:/usr/local/Cellar/tomcat/8.5.5/libexec/lib/commons-fileupload-1.3.2.jar:/usr/local/Cellar/tomcat/8.5.5/libexec/lib/commons-io-2.5.jar" *.java
- Copy "csj" folder on to the tomcat web app folder.
- Run the python script. a. credentials.txt which contains all the login and access permission info. b. The script searches for tweets with the different university names and generates four output files- Illinois Tech.txt, Harvard.txt, Stanford.txt, University Of Illinois.txt.
- Start tomcat server
- open the browser and type localhost:8080/Project/index.html
Copyright (c) 2016 Aditya Kumar
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.