pclubiitk / student-search Goto Github PK
View Code? Open in Web Editor NEWA universal cross-platform and modern student search.
License: MIT License
A universal cross-platform and modern student search.
License: MIT License
Pop offers some very good features which might be nice for this project. It also abstracts the database connection so we can switch databases easily.
As requested in a mail to the PClub ID.
Thoughts?
It'll be helpful I think to provide an option to share a student card that can be directly opened by a url. A simple url like https://search.pclub.in?rollno=160027
can be shareable, opening which should directly open the dialog card of the student with the given roll no (160027
here).
StudentName = 'First' + 'Middle' + 'Last'
If we search for any combination of these three strings, other than the one given in the original data, we don't get the desired results.
Example:
StudentName = 'Bhuvan Singla'
Search = 'Singla Bhuvan'
This would require investigating the Creeper library and consider it for replacing the manually written scraper used.
The cross button on the search bar doesn't work. I have made a PR for the same. #20
Some timing results against the old student search, and how we compare. Used Chrome Profiler on my PC.
Test:
This is what the profiles show:
Our search:
net time: ~1420ms (from mouseup to a useable thing with list of students clearly visible)
call to filter(): ~15ms (noting this because initially I thought filtering entries would be the cause of jank but apparently no)
it should be noted that this one big event handler for onclick is run for a ~830ms. The point here is that the handler is run on the main thread of the browser, so it causes a visible slowness (jank) in the UI.
This I think is the cause of the whole UI freezing up a bit when mouseup is triggerd on "Y15".
Old Student Search:
Net time: ~520ms
The mouseup event handler used causes a delay of ~50ms only on the main thread (which leads to the UI looking much "snappier")
I don't have any idea how to fix this, would appreciate any views.
PS: Attached profiles! [load in chrome profiler]
profiles.zip
It should specify how to change the Profile Pic displayed and some other stuff about the student search.
As discussed with @yashsriv
This is an easy issue.
Instead of Iris for http routing, try and find an alternative which works better.
Currently the comments are not up to the mark in the source code.
Currently the backend serves all the data in a json. Make it fully featured by adding filtering on backend too via query parameters.
The search field as a regex would be nice while still supporting the normal search.
The Android App would require an Image Cache so that it knows which photo to save for a particular student. For more info contact @yashsriv
The angular version used here (5.x) is now too old and not even supported by the Angular team. It's advisable, I believe, to upgrade it to one of the latest versions (8, 9 or 10).
You can follow the steps at https://update.angular.io/ to upgrade angular. Make sure to upgrade one version at a time, and test everything after each upgrade.
Lemme know if any help is required.
Progress:
Anyone can get the whole database of students [You don't have to be connected to IITK network] . This is a major security issue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.