{"id":21809,"name":"fyp","description":"Final year project","url":"https://github.com/baharalidurrani/fyp","last_synced_at":"2025-09-05T01:08:04.478Z","repository":{"id":33716775,"uuid":"144005147","full_name":"baharalidurrani/fyp","owner":"baharalidurrani","description":"Final year project","archived":false,"fork":false,"pushed_at":"2023-03-04T02:46:42.000Z","size":3346,"stargazers_count":1,"open_issues_count":6,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-13T03:12:36.583Z","etag":null,"topics":["ejs","express","materializecss","mongodb","mongoose","node"],"latest_commit_sha":null,"homepage":"https://fyp.durrani.dev","language":"EJS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/baharalidurrani.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-08-08T11:38:08.000Z","updated_at":"2022-03-07T18:08:09.000Z","dependencies_parsed_at":"2025-04-13T03:12:38.206Z","dependency_job_id":"1d5e035b-c69c-43c9-a076-c8f7ae90412f","html_url":"https://github.com/baharalidurrani/fyp","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/baharalidurrani/fyp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baharalidurrani%2Ffyp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baharalidurrani%2Ffyp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baharalidurrani%2Ffyp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baharalidurrani%2Ffyp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baharalidurrani","download_url":"https://codeload.github.com/baharalidurrani/fyp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baharalidurrani%2Ffyp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273695403,"owners_count":25151516,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-04T02:00:08.968Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"baharalidurrani","name":"Bahar A. Dürrani","uuid":"33373727","kind":"user","description":"A passionate Software Engineer whose dream is to work on a highly scaled application which is used by millions of users.","email":"","website":"https://durrani.dev","location":"Remote","twitter":null,"company":"@home-lending-pal","icon_url":"https://avatars.githubusercontent.com/u/33373727?u=04fbe3551c7aae78014bd2a228b38a51cffa927b\u0026v=4","repositories_count":13,"last_synced_at":"2023-03-02T10:30:44.635Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/baharalidurrani","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-13T03:08:28.574Z","updated_at":"2023-03-02T10:30:44.644Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baharalidurrani","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baharalidurrani/repositories"},"packages":[],"commits":{"message":"Repository syncing started."},"issues_stats":{"full_name":"baharalidurrani/fyp","html_url":"https://github.com/baharalidurrani/fyp","last_synced_at":null,"status":null,"issues_count":null,"pull_requests_count":null,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":null,"issues_closed_count":null,"pull_requests_closed_count":null,"pull_request_authors_count":null,"issue_authors_count":null,"avg_comments_per_issue":null,"avg_comments_per_pull_request":null,"merged_pull_requests_count":null,"bot_issues_count":null,"bot_pull_requests_count":null,"past_year_issues_count":null,"past_year_pull_requests_count":null,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":null,"past_year_pull_requests_closed_count":null,"past_year_pull_request_authors_count":null,"past_year_issue_authors_count":null,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":null,"past_year_bot_pull_requests_count":null,"past_year_merged_pull_requests_count":null,"created_at":"2025-09-05T01:06:46.972Z","updated_at":"2025-09-05T01:06:46.972Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/baharalidurrani%2Ffyp","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/baharalidurrani%2Ffyp/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{},"pull_request_author_associations_count":{},"issue_authors":{},"pull_request_authors":{},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.444Z","repositories_count":10082304,"issues_count":31220387,"pull_requests_count":96069062,"authors_count":10694175,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[],"active_maintainers":[]},"events":{"total":{},"last_year":{}},"keywords":["ejs","express","materializecss","mongodb","mongoose","node"],"dependencies":[{"ecosystem":"npm","filepath":"package-lock.json","sha":null,"kind":"lockfile","created_at":"2022-08-07T23:00:32.818Z","updated_at":"2022-08-07T23:00:32.818Z","repository_link":"https://github.com/baharalidurrani/fyp/blob/master/package-lock.json","dependencies":[{"id":610317774,"package_name":"@types/bson","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"runtime","optional":false},{"id":610317775,"package_name":"@types/mongodb","ecosystem":"npm","requirements":"3.6.3","direct":false,"kind":"runtime","optional":false},{"id":610317776,"package_name":"@types/node","ecosystem":"npm","requirements":"14.14.16","direct":false,"kind":"runtime","optional":false},{"id":610317777,"package_name":"accepts","ecosystem":"npm","requirements":"1.3.7","direct":false,"kind":"runtime","optional":false},{"id":610317778,"package_name":"append-field","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317779,"package_name":"array-flatten","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":610317780,"package_name":"bcryptjs","ecosystem":"npm","requirements":"2.4.3","direct":false,"kind":"runtime","optional":false},{"id":610317781,"package_name":"bl","ecosystem":"npm","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":610317782,"package_name":"process-nextick-args","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317783,"package_name":"readable-stream","ecosystem":"npm","requirements":"2.3.7","direct":false,"kind":"runtime","optional":false},{"id":610317784,"package_name":"string_decoder","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":610317785,"package_name":"bluebird","ecosystem":"npm","requirements":"3.5.1","direct":false,"kind":"runtime","optional":false},{"id":610317786,"package_name":"body-parser","ecosystem":"npm","requirements":"1.19.0","direct":false,"kind":"runtime","optional":false},{"id":610317787,"package_name":"bson","ecosystem":"npm","requirements":"1.1.5","direct":false,"kind":"runtime","optional":false},{"id":610317788,"package_name":"buffer-from","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":610317789,"package_name":"busboy","ecosystem":"npm","requirements":"0.2.14","direct":false,"kind":"runtime","optional":false},{"id":610317790,"package_name":"bytes","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"runtime","optional":false},{"id":610317791,"package_name":"concat-stream","ecosystem":"npm","requirements":"1.6.2","direct":false,"kind":"runtime","optional":false},{"id":610317792,"package_name":"connect-mongo","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"runtime","optional":false},{"id":610317793,"package_name":"content-disposition","ecosystem":"npm","requirements":"0.5.3","direct":false,"kind":"runtime","optional":false},{"id":610317794,"package_name":"content-type","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"runtime","optional":false},{"id":610317795,"package_name":"cookie","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"runtime","optional":false},{"id":610317796,"package_name":"cookie-signature","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"runtime","optional":false},{"id":610317797,"package_name":"core-util-is","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":610317798,"package_name":"debug","ecosystem":"npm","requirements":"2.6.9","direct":false,"kind":"runtime","optional":false},{"id":610317799,"package_name":"denque","ecosystem":"npm","requirements":"1.4.1","direct":false,"kind":"runtime","optional":false},{"id":610317800,"package_name":"depd","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317801,"package_name":"destroy","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"runtime","optional":false},{"id":610317802,"package_name":"dicer","ecosystem":"npm","requirements":"0.2.5","direct":false,"kind":"runtime","optional":false},{"id":610317803,"package_name":"ee-first","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":610317804,"package_name":"ejs","ecosystem":"npm","requirements":"2.7.4","direct":false,"kind":"runtime","optional":false},{"id":610317805,"package_name":"encodeurl","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":610317806,"package_name":"escape-html","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"runtime","optional":false},{"id":610317807,"package_name":"etag","ecosystem":"npm","requirements":"1.8.1","direct":false,"kind":"runtime","optional":false},{"id":610317808,"package_name":"express","ecosystem":"npm","requirements":"4.17.1","direct":false,"kind":"runtime","optional":false},{"id":610317809,"package_name":"express-session","ecosystem":"npm","requirements":"1.17.1","direct":false,"kind":"runtime","optional":false},{"id":610317810,"package_name":"depd","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317811,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"runtime","optional":false},{"id":610317812,"package_name":"finalhandler","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317813,"package_name":"forwarded","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317814,"package_name":"fresh","ecosystem":"npm","requirements":"0.5.2","direct":false,"kind":"runtime","optional":false},{"id":610317815,"package_name":"http-errors","ecosystem":"npm","requirements":"1.7.2","direct":false,"kind":"runtime","optional":false},{"id":610317816,"package_name":"iconv-lite","ecosystem":"npm","requirements":"0.4.24","direct":false,"kind":"runtime","optional":false},{"id":610317817,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"runtime","optional":false},{"id":610317818,"package_name":"ipaddr.js","ecosystem":"npm","requirements":"1.9.1","direct":false,"kind":"runtime","optional":false},{"id":610317819,"package_name":"isarray","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317820,"package_name":"kareem","ecosystem":"npm","requirements":"2.3.2","direct":false,"kind":"runtime","optional":false},{"id":610317821,"package_name":"media-typer","ecosystem":"npm","requirements":"0.3.0","direct":false,"kind":"runtime","optional":false},{"id":610317822,"package_name":"memory-pager","ecosystem":"npm","requirements":"1.5.0","direct":false,"kind":"runtime","optional":false},{"id":610317823,"package_name":"merge-descriptors","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317824,"package_name":"methods","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317825,"package_name":"mime","ecosystem":"npm","requirements":"1.6.0","direct":false,"kind":"runtime","optional":false},{"id":610317826,"package_name":"mime-db","ecosystem":"npm","requirements":"1.44.0","direct":false,"kind":"runtime","optional":false},{"id":610317827,"package_name":"mime-types","ecosystem":"npm","requirements":"2.1.27","direct":false,"kind":"runtime","optional":false},{"id":610317828,"package_name":"minimist","ecosystem":"npm","requirements":"1.2.5","direct":false,"kind":"runtime","optional":false},{"id":610317829,"package_name":"mkdirp","ecosystem":"npm","requirements":"0.5.5","direct":false,"kind":"runtime","optional":false},{"id":610317830,"package_name":"mongodb","ecosystem":"npm","requirements":"3.6.3","direct":false,"kind":"runtime","optional":false},{"id":610317831,"package_name":"mongoose","ecosystem":"npm","requirements":"5.11.8","direct":false,"kind":"runtime","optional":false},{"id":610317832,"package_name":"ms","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317833,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.2.1","direct":false,"kind":"runtime","optional":false},{"id":610317834,"package_name":"mongoose-legacy-pluralize","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":610317835,"package_name":"mpath","ecosystem":"npm","requirements":"0.8.1","direct":false,"kind":"runtime","optional":false},{"id":610317836,"package_name":"mquery","ecosystem":"npm","requirements":"3.2.3","direct":false,"kind":"runtime","optional":false},{"id":610317837,"package_name":"debug","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"runtime","optional":false},{"id":610317838,"package_name":"ms","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317839,"package_name":"multer","ecosystem":"npm","requirements":"1.4.2","direct":false,"kind":"runtime","optional":false},{"id":610317840,"package_name":"negotiator","ecosystem":"npm","requirements":"0.6.2","direct":false,"kind":"runtime","optional":false},{"id":610317841,"package_name":"nodemailer","ecosystem":"npm","requirements":"4.7.0","direct":false,"kind":"runtime","optional":false},{"id":610317842,"package_name":"object-assign","ecosystem":"npm","requirements":"4.1.1","direct":false,"kind":"runtime","optional":false},{"id":610317843,"package_name":"on-finished","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"runtime","optional":false},{"id":610317844,"package_name":"on-headers","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":610317845,"package_name":"parseurl","ecosystem":"npm","requirements":"1.3.3","direct":false,"kind":"runtime","optional":false},{"id":610317846,"package_name":"passport","ecosystem":"npm","requirements":"0.4.1","direct":false,"kind":"runtime","optional":false},{"id":610317847,"package_name":"passport-local","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317848,"package_name":"passport-strategy","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317849,"package_name":"path-to-regexp","ecosystem":"npm","requirements":"0.1.7","direct":false,"kind":"runtime","optional":false},{"id":610317850,"package_name":"pause","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317851,"package_name":"proxy-addr","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"runtime","optional":false},{"id":610317852,"package_name":"qs","ecosystem":"npm","requirements":"6.7.0","direct":false,"kind":"runtime","optional":false},{"id":610317853,"package_name":"random-bytes","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317854,"package_name":"range-parser","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"runtime","optional":false},{"id":610317855,"package_name":"raw-body","ecosystem":"npm","requirements":"2.4.0","direct":false,"kind":"runtime","optional":false},{"id":610317856,"package_name":"readable-stream","ecosystem":"npm","requirements":"1.1.14","direct":false,"kind":"runtime","optional":false},{"id":610317857,"package_name":"isarray","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317858,"package_name":"regexp-clone","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317859,"package_name":"require_optional","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317860,"package_name":"resolve-from","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317861,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317862,"package_name":"safer-buffer","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317863,"package_name":"saslprep","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":610317864,"package_name":"semver","ecosystem":"npm","requirements":"5.6.0","direct":false,"kind":"runtime","optional":false},{"id":610317865,"package_name":"send","ecosystem":"npm","requirements":"0.17.1","direct":false,"kind":"runtime","optional":false},{"id":610317866,"package_name":"ms","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"runtime","optional":false},{"id":610317867,"package_name":"serve-static","ecosystem":"npm","requirements":"1.14.1","direct":false,"kind":"runtime","optional":false},{"id":610317868,"package_name":"setprototypeof","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":610317869,"package_name":"sift","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317870,"package_name":"sliced","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317871,"package_name":"sparse-bitfield","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"runtime","optional":false},{"id":610317872,"package_name":"statuses","ecosystem":"npm","requirements":"1.5.0","direct":false,"kind":"runtime","optional":false},{"id":610317873,"package_name":"streamsearch","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317874,"package_name":"string_decoder","ecosystem":"npm","requirements":"0.10.31","direct":false,"kind":"runtime","optional":false},{"id":610317875,"package_name":"toidentifier","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317876,"package_name":"type-is","ecosystem":"npm","requirements":"1.6.18","direct":false,"kind":"runtime","optional":false},{"id":610317877,"package_name":"typedarray","ecosystem":"npm","requirements":"0.0.6","direct":false,"kind":"runtime","optional":false},{"id":610317878,"package_name":"uid-safe","ecosystem":"npm","requirements":"2.1.5","direct":false,"kind":"runtime","optional":false},{"id":610317879,"package_name":"unpipe","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":610317880,"package_name":"util-deprecate","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":610317881,"package_name":"utils-merge","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":610317882,"package_name":"vary","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"runtime","optional":false},{"id":610317883,"package_name":"xtend","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"npm","filepath":"package.json","sha":null,"kind":"manifest","created_at":"2022-08-07T23:00:32.991Z","updated_at":"2022-08-07T23:00:32.991Z","repository_link":"https://github.com/baharalidurrani/fyp/blob/master/package.json","dependencies":[{"id":610318705,"package_name":"bcryptjs","ecosystem":"npm","requirements":"^2.4.3","direct":true,"kind":"runtime","optional":false},{"id":610318706,"package_name":"body-parser","ecosystem":"npm","requirements":"^1.19.0","direct":true,"kind":"runtime","optional":false},{"id":610318707,"package_name":"connect-mongo","ecosystem":"npm","requirements":"^3.2.0","direct":true,"kind":"runtime","optional":false},{"id":610318708,"package_name":"ejs","ecosystem":"npm","requirements":"^2.7.4","direct":true,"kind":"runtime","optional":false},{"id":610318709,"package_name":"express","ecosystem":"npm","requirements":"^4.17.1","direct":true,"kind":"runtime","optional":false},{"id":610318710,"package_name":"express-session","ecosystem":"npm","requirements":"^1.17.1","direct":true,"kind":"runtime","optional":false},{"id":610318711,"package_name":"mongoose","ecosystem":"npm","requirements":"^5.11.8","direct":true,"kind":"runtime","optional":false},{"id":610318712,"package_name":"multer","ecosystem":"npm","requirements":"^1.4.2","direct":true,"kind":"runtime","optional":false},{"id":610318713,"package_name":"nodemailer","ecosystem":"npm","requirements":"^4.7.0","direct":true,"kind":"runtime","optional":false},{"id":610318714,"package_name":"passport","ecosystem":"npm","requirements":"^0.4.1","direct":true,"kind":"runtime","optional":false},{"id":610318715,"package_name":"passport-local","ecosystem":"npm","requirements":"^1.0.0","direct":true,"kind":"runtime","optional":false}]}],"score":null,"created_at":"2025-09-04T15:50:53.331Z","updated_at":"2025-10-07T08:10:28.117Z","avatar_url":"https://github.com/baharalidurrani.png","language":"EJS","category":null,"sub_category":null,"monthly_downloads":0,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/21809","html_url":"https://science.ecosyste.ms/projects/21809","bibtex_url":"https://science.ecosyste.ms/projects/21809/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/21809/export.apalike"}