Giter Club home page Giter Club logo

admission-portal's Introduction

Admission-Portal

WEB TECHNOLOGIES & STANDARDS Final Project: Admission Portal 15 th April 2018

Author: Prashant Wankhede

Date: 15th April 2018

Admission Portal is a 'MEAN STACK' application

#To run you need

  1. MongoDB
  2. NodeJS Then, On Windows:
  3. run mongod from mongo install directory and keep it in background
  4. cd to this project directory here in cmd prompt and run, node app.js
  5. Open Google Chrome to access front-end at http://localhost:3000/
  6. Create an account either by registering directly or through social websites. All Steps should be similar on MacOSX or Linux based environment features of the websites are functional. Delete node_modules directory in case of conflict and run again

#Technology and Process Description:

$ Admission Portal uses live textual data present on https://core.letsenrol.com/api/partner- colleges-universities. This link can be changed to fetch any other country’s data by transforming respective variables such as exam type, thus making it a portable application. The aim is to make a website that takes dynamic updates presented via a server as mentioned in final project description of this course

$ Login and register function on Admission Portal uses passport API’s that take respective ‘secret’ keys from Google, Facebook, and Twitter. The cookie calculator is simple jwt function that uses secret key ‘anamika’ to generate cookie value expiring in 24 hours. Note - Today's websites such as Microsoft employs a much better implementation of cookies/unique keys to deal with 100 Million requests each day and the same functionality can be extended to Admission Portal once the user base reaches that goal

$ The college data can be filtered at a real-time based on the variables on left of collage page extracted from the data received from the server. The data loading integrates Angular loading bar at the top as the get function fetches data from the server into local MongoDB

$ The collage comparator is able to compare up to 3 colleges simultaneously. Comparing depends upon the available data variables fetched by the server. If there are no courses listed on the respective college drop-down menu, the compared values do not populate but the same information can be eventually gathered by clicking more college information button from the collage page

$ The animation presented on homepage uses simple JavaScript that takes classes such as fade in left, fade in right or zoom in to show a bunch of information to the user but at the same time presenting website’s motive and how it can help to prospective students in a brief display

$ The register page and contact page use Nodemailer module of NodeJS which in turn uses Sendgrid API with username ‘prashaw’ (credentials owned by Prashant) to send emails from the local. The same functionality can be extended into various other functions such as subscribe to a newsletter or refer a friend or export history to emails or send/receive application reports to universities to pretty much anything a standard website does to control email-based requests

#Future work:

To make the application more scalable, database technology could be changed to DynamoDB which takes care of millions of requests. Additionally, Node provides the ability to create multiple v8 instances of node using node's child process ( childProcess.fork() ) each requiring 10mb memory as per docs) on the fly, thus not affecting the main process running the server. So, offloading a background job that requires huge server load becomes a child's play and we can easily kill them as and when needed. Nevertheless, Admission Portal is a ready to deploy node-based project on any web server with minimal effort or customization

======================================================

admission-portal's People

Contributors

prashaw avatar

Stargazers

 avatar  avatar

Watchers

 avatar

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.