InternSHare is a web system that serves the purpose of finding jobs or internships for NYUSH students and serves the companies, NYUSH students to find the candidates or successors for the jobs that they want to offer. Students can register or log in if they are already a member of the system. On the home page, customized job positions will be recommended to students. Students can also search for their desired jobs using hashtags, filters or direct search and then apply. Meanwhile, students can post a job post with job requirements, job title and job description included. They can view their posted job’s candidates and choose to accept or reject their applications. Students can also upload their CV or use the default template as their profile page. Furthermore, they can adjust the status of their profile page to determine if it can be viewed by others. Similarly, companies can register or log in if they are already a member of the system. They can post a job post and decide whether to accept a student’s job application. Both company user and NYUSH student user can start a general post, where users can discuss anything related to job hunting, internship experience, course evaluation e.t.c.
- Back-end: Yumeng Lu
- Front-end: Billy Yi
- Database and testing: Daisy Huynh
The following services are required to install on your machine:
Path | Method | Params | Frontend Page | Flask Blueprint |
---|---|---|---|---|
/api/login | post |
email, password | 2 | loginRegister |
/api/login/student/sendemail | post |
2 | loginRegister | |
/api/login/student/verify | get |
email, code | 2 | loginRegister |
/api/login/register/student | post |
email, password, confirPW | 2 | loginRegister |
/api/homepage/searchsuggestions | post |
content | 1.1, 1.2 | homepage |
/api/search/jobpost | post |
filter, pagenumber | 1.2 | search |
/api/homepage/recommendpost/jobs | get |
1.1, 1.3 | homepage | |
/api/homepage/applystatus | post |
1.1, 1.3.3 | homepage | |
/api/job/detailedinfo | post |
jobpost_id, method, publisher | 1.5 | jobpost |
/api/job/getpostcomment | post |
jobpostid | 1.5 | jobpost |
/api/job/create/comment | post |
content, jobpost_id, target_id | 1.5 | jobpost |
/api/job/update/comment | post |
comment_id, new_content | 1.5 | jobpost |
/api/job/delete/comment | post |
comment_id | 1.5 | jobpost |
/api/job/like/comment | post |
comment_id | 1.5 | jobpost |
/api/job/apply | post |
jobpost_id, method, publisher | 1.5 | jobpost |
/api/apply/cancel | post |
application_id | 1.3.3 | apply |
/api/profile/get | post |
1.3.1 | profile | |
/api/profile/update | post |
project_experience, … | 1.3.1 | profile |
/api/profile/download | post |
cv_id | 1.3.1 | profile |
/api/profile/getname | get |
1 | profile | |
/api/profile/changesvisibility | get |
status | 1.3.4 | profile |
/api/mypost/get | get |
1.3.2 | mypost | |
/api/mypost/create | post |
post_title, company_name,… | 1.3.2 | mypost |
/api/mypost/viewall | post |
1.3.2 | mypost | |
/api/mypost/delete | post |
job_id | 1.3.2 | mypost |
/api/mypost/update | post |
id, post_title, company_name | 1.3.2 | mypost |
/api/mypost/accept/application | post |
application_id | 1.3.2 | accept |
/api/mypost/reject/application | post |
application_id | 1.3.2 | reject |
- API documentation: detailed API desciption
- Project Documentation: The overall description of the project
- Determine project topic
- Preliminary analysis of needed functions
- Identify user cases
- Plan iteration
- Set up environment
- Design data classes
- Assign tasks
- Design basic page layout
- Front-end
- Register Page
- Database
- Set up databases
- Front-end
- Login page
- Homepage
- Back-end
- CRUD post information
- CRUD user information
- Front-end
- User setting page
- Back-end
- CRUD application information
- CURD homepage information
- Debugging and testing
- Finish documentation
- Prepare for presentation