GithubHelp home page GithubHelp logo

nus-lighthouse's People

Watchers

 avatar

nus-lighthouse's Issues

Build the search bar component

Build the search bar under the section heading. (This will be the same for all three sections).
Currently, just build the shape, no need to implement the function of the search button.

  • implement the auto-complete function based on data stored in a variable
  • currently the data can just be any random data stored within the component
  • reference: https://www.w3schools.com/howto/howto_js_autocomplete.asp
  • the data should be stored as a list of dictionaries (e.g. [{ name: name, image_url: image_url }])
  • a list of images should be displayed below when image_url is present

Determine Data Storage Formats Required for Each Chart

Summary of Charts

  • Overall TA charts
  • Overall RA charts
  • Overall major charts
  • Overall industry charts
  • Overall company charts
  • Specific industry charts
  • Specific company charts
  • Internship position charts (background + future)
  • RA position charts (background + future)
  • TA position charts (background + future)

Tables

Refer to Google Doc

Set up Travis CI and Deployment Flow on GitHub

  • Set up Travis CI for continuous deployment
  • Set up dummy test cases to pass before deployment is allowed
  • Set up production (master), staging and development branches
  • Set up a JS Lint library to enforce JavaScript standards (as a test to pass)

Consolidate Student Personal Data

  • Extract data from the student personal data table
  • Output format: { student_id: { country_of_citizenship: country, job_title: job_title, race: race, gender: gender} }
  • Investigate employment-related features

Build the Current Projects Component at each Prof's Page

This is a new component containing all current projects.
Each smaller project posting is a smaller component.

It should support clicking and popping out feature (like the prototype). Make sure it works well with some random data.

Build 'Explore by' Components in Internship Section

Build the "Explore by" component in the internship section for Industry and Major.
Implement the drop-down list. Note: the drop-down list should be a separate component, so need to create the drop-down list component first.
Create real charts with some data.
The same component should be reusable for major.

Build the 'Explore by' component for 'company'.
Implement the drop-down list, create real charts with some data.

Clean data from data lake files

Acceptance Criteria (AC):

All data required in the issues should be generated.
All data should be uploaded onto Google Drive by the end of the first milestone.

Mock Internship Companies, Positions and Related Data

  • Take company names from GES (check Company Name_Recoded). If Company Name_Recoded is not what we want, need to mock company names as well
  • Generate unique identifiers for each company (otherwise, we need to take the auto-generated IDs from Firebase). Use the identifiers to insert as keys on Firebase
  • Mock company descriptions
  • Mock company number of openings for 12 months as a list
  • Generate unique position ID
  • Mock position names
  • Mock position descriptions
  • Mock position application open month
  • Mock Year
  • Mock acceptance rate

Set up Backend on Firebase

  • Create basic Vue web app skeleton
  • Set up the web app to deploy on Firebase
  • Configure the web app to use Firebase Realtime Database

Build Future Trajectory Component of a Position

Important: This component should be reusable for all three sections.

Put in the charts, with some random data.
Make sure it works when real data comes in.

Make sure it works across all three sections.

Consolidate Student Program Enrolment Data

  • Fields: Academic Group, Academic Plan, Academic Program, Course Code, Degree, Department, Exchange Level, Faculty
  • output format: { student_id: { (various fields) } }
  • Rmk: use underscores in the variable names

Build 'Recommended for You' Component

It should be slidable.
It should be reusable for all three sections (Internship, TA, Professor)
Pictures: From external links as for now.
Text and Description: Randomly put anything (use variable).

Make sure to separate the data from the template.

Mock TA Modules

  • Mock TA modules
  • Use the module list consolidated from data lake as the basis
  • Mock major, year, semester and module description

Build the Header Bar component & Section Header

Build the topmost Header component:
NUS LightHouse
(currently without the login icon)

Build the section header: Internship or Research Opportunities or Teaching Assistant.
No need to use tab to separate. Just a section name with some background color.

Build the Search Bar Component at the Search Page

One search bar and the two filters should form one component.
Need to support autocomplete function based on variable storing all retrieved data (the data can just be statically encoded into the component for now)
Need to support filtering of primary search bar based on the other two filters

Build Basic Information of a Position

This should apply to all three sections:
Build the component containing basic information of a position.
Set the correct format of a picture and text.

Map Graduate Paths

  • map the graduate paths from GES table to students' information
  • output format: { student_id: { starting_salary: salary, future_path: "PhD",future_industry: 'IT', graduate_course: "Aerospace Engineering", research_area: "Fluid Mechanics", PhD_university: "UCLA" } }
  • Rmk: some data may need to be mocked. Data I/C may need to create a new issues to reflect this and assign to team members

Mock RA Professor and Project Information

  • Create professor unique identifiers

  • Names

  • Status (e.g. Associate Professor)

  • Title: Head, Department of Information Systems and Analytics

  • Office location and phone number

  • Research Focus

  • Mock projects and various information found in the prototype (refer to prototype slide 15)[Store them in a nested structures]

  • Mock recent publications

  • Rmk: create a few actual professors and random generate data for the remaining

  • Rmk: when generating random data, try to generate from a set of names that make sense. For example, status is from { Associate Professor, Full Professor, Lecturer, ... }

  • Rmk: use random text generator for research focus

Consolidate GES Data

  • Fields: Employment Status, Organisation Type_Recoded, Organisation Type_Others_Recoded, Company Name_Recoded, Gross Salary, Industry, Industry (Others), Occupation, Occupations (Others), Other Occupations (Description), Status of Higher Education, Higher Education Type, MBA (University), Master's by Coursework (University), Master's by Research (University), PhD (University), Higher Education Type (Others), Subject Area

  • data format: { student_id: { (various fields) } }

Industry Page Components

  • Slide 13:

Companies & Positions (Jobs): Share one component.
By default show popular ones. Positions displayed should be updated according to input.

  • Slide 14:
    Insights: One component.

Consolidate Module Enrolment Data

  • map the data from modules table to the students

  • calculate CAP based on modules taken

  • consolidate a JSON file of the format { student_id: { modules_taken: [module_code], CAP: cap } }

  • consolidate a dictionary of modules of the format: { module_code: { module_name: module_name, modular_credits: modular_credits , module_description: module_description, major: major} }

  • Rmk: the consolidated list of modules serves as the basis for mocking later

Build 'Statistics about Past Interns' in Company page

Note: this issue is different from the other component of Statistics about Past Interns' in the Position Page.

Total number of past Interns: random number

Statistics about past interns (put charts with some random data).

Build Reusable Components in Research Assistant Section

  • Slide 8: Recommended for You & Search bar, use the one designed in the Internship Section. The other charts form a component.
  • Slide 9: Research Positions: Basic Info: Reuse the company component.
    Reuse the background statistics and future trajectory section from the Internship Section.
    Current Projects: New component. Each project posting is a component.
    Recent Publications: One component

Build Reusable Components in Internship Section

Slide 1: Header Bar (Without login), No Tab (Internship), Search Bar (Without real function), Recommended for You (random pictures, random text),
Explore by: Industry (drop-down list, put in chart), same for Major.
'Company' is another component.

Slide 5: Company Random Picture, Random text, Random name. Need to set proper variables.
Total number of past Interns: random number
Statistics about past interns (put random pictures).
Opening positions (a component).

Slide 6:
Components:
• (Position Description, Name, Internship Period, company name, logo ).
• Position Details (put in chart)
• Background Statistics (put in chart)
• Future Trajectory (put in chart)
Remarks : randomly put data in the chart

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.