{"id":22819961,"url":"https://github.com/devdhera/bsp-employee-portal","last_synced_at":"2025-03-30T23:15:38.854Z","repository":{"id":42361766,"uuid":"130073305","full_name":"DevDHera/BSP-Employee-Portal","owner":"DevDHera","description":"Suite of BSP Applications","archived":false,"fork":false,"pushed_at":"2023-02-01T15:59:55.000Z","size":470,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-06T04:43:56.206Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DevDHera.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-18T14:16:29.000Z","updated_at":"2022-07-07T17:52:55.000Z","dependencies_parsed_at":"2025-02-06T04:41:42.359Z","dependency_job_id":"757f9506-c1c8-4753-8062-84394a455200","html_url":"https://github.com/DevDHera/BSP-Employee-Portal","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevDHera%2FBSP-Employee-Portal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevDHera%2FBSP-Employee-Portal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevDHera%2FBSP-Employee-Portal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevDHera%2FBSP-Employee-Portal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DevDHera","download_url":"https://codeload.github.com/DevDHera/BSP-Employee-Portal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246390859,"owners_count":20769478,"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","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"}},"keywords":[],"created_at":"2024-12-12T15:15:20.262Z","updated_at":"2025-03-30T23:15:38.815Z","avatar_url":"https://github.com/DevDHera.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BSP - Employee Portal\n\n\u003eBanking System Prototype aka BSP is a initiative to make a change in Sri Lankas current banking facilities.\n\n### System Overview\n\nEmployee Portal is a Feature Rich Alternative for existing Banking Portals. A good UI is hard to find in the current Bank System and this promises to change it.\n\n### Technologies Used\n\n* Node.js      \n* Express.js\n* Passport.js\n* Pusher\n* CanvasJS\n* Nodemailer\n* Bcrypt\n\n### Steps To Run\n\n1. Install the modules.\n```bash\nnpm install\n```\n2. Simply Run the App.\n```bash\nnpm start\n```\n\n### Sample Codings\n\nWhen creating a project in MEAN lot of us get lost not knowing how to achive a task.\n\nThis is my good will of show casing places we can all improve.\n\n#### Mail Sending Through Node Apps\n\n```javascript\nconst output = `\n                                                    \u003cp\u003eThank You for Opening a account in \u003cb\u003eBSP\u003c/b\u003e\u003c/p\u003e\n                                                    \u003ch3\u003eYour Online Presence is as follows\u003c/h3\u003e\n                                                    \u003cul\u003e\n                                                        \u003cli\u003eName: ${req.body.firstName} ${req.body.lastName}\u003c/li\u003e\n                                                        \u003cli\u003eHandle: ${handle}\u003c/li\u003e\n                                                        \u003cli\u003eEmail: ${password}\u003c/li\u003e\n                                                    \u003c/ul\u003e\n                                                    \u003ch3\u003eImportant\u003c/h3\u003e\n                                                    \u003cp\u003ePlease make sure to use \u003cb\u003eHandle\u003c/b\u003e when you log in...\u003c/p\u003e`;\n\n                                    // create reusable transporter object using the default SMTP transport\n                                    let transporter = nodemailer.createTransport({\n                                        host: keys.smtpHost,\n                                        port: keys.smtpPort,\n                                        secure: false, // true for 465, false for other ports\n                                        auth: {\n                                            user: keys.smtpUser, // generated ethereal user\n                                            pass: keys.smtpPass // generated ethereal password\n                                        },\n                                        tls: {\n                                            //ciphers: 'SSLv3',\n                                            rejectUnauthorized: false\n                                        }\n                                    });\n\n                                    // setup email data with unicode symbols\n                                    let mailOptions = {\n                                        from: `\"BSP\" \u003c${keys.smtpUser}\u003e`, // sender address\n                                        to: `${req.body.email}`, // list of receivers\n                                        subject: 'BSP BANKING', // Subject line\n                                        text: 'Welcome to BSP', // plain text body\n                                        html: output // html body\n                                    };\n\n                                    // send mail with defined transport object\n                                    transporter.sendMail(mailOptions, (error, info) =\u003e {\n                                        if (error) {\n                                            return console.log(error);\n                                        }\n                                        console.log('Message sent: %s', info.messageId);\n                                        // Preview only available when sending through an Ethereal account\n                                        console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));\n``` \n\n### Tasks To Achive\n\n* [x] Protect Routes\n* [x] Optimized Local Strategy\n* [x] Pusher Intergration\n* [ ] Pusher problem solve\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevdhera%2Fbsp-employee-portal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevdhera%2Fbsp-employee-portal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevdhera%2Fbsp-employee-portal/lists"}