{"id":20453216,"url":"https://github.com/danekf/signum-app","last_synced_at":"2026-04-21T19:02:27.770Z","repository":{"id":50935786,"uuid":"519322790","full_name":"danekf/Signum-App","owner":"danekf","description":"A small password management website. Inspired by Last Pass. Proof of concept. Made with EJS, express and nodeJs.","archived":false,"fork":false,"pushed_at":"2022-08-05T14:26:34.000Z","size":969,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-05T09:49:41.286Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"EJS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/danekf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-07-29T19:05:26.000Z","updated_at":"2022-09-16T16:23:40.000Z","dependencies_parsed_at":"2022-08-25T12:52:14.046Z","dependency_job_id":null,"html_url":"https://github.com/danekf/Signum-App","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"lighthouse-labs/node-skeleton","purl":"pkg:github/danekf/Signum-App","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danekf%2FSignum-App","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danekf%2FSignum-App/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danekf%2FSignum-App/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danekf%2FSignum-App/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danekf","download_url":"https://codeload.github.com/danekf/Signum-App/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danekf%2FSignum-App/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32105868,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-21T11:25:29.218Z","status":"ssl_error","status_checked_at":"2026-04-21T11:25:28.499Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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"}},"keywords":[],"created_at":"2024-11-15T11:12:08.545Z","updated_at":"2026-04-21T19:02:27.753Z","avatar_url":"https://github.com/danekf.png","language":"EJS","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n[![Contributors][contributors-shield]][contributors-url]\n[![Forks][forks-shield]][forks-url]\n[![Issues][issues-shield]][issues-url]\n\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/danekf/Signum-App/blob/feature/readme/images/Signum%20S.png\"\u003e\n    \u003cimg src=\"images/Signum S.png\" alt=\"Logo\" width=\"80\" height=\"80\"\u003e\n  \u003c/a\u003e\n\n  \u003ch3 align=\"center\"\u003eSIGNUM\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    A password saver built by LHL students for their midterm Project\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/danekf/Signum-App\"\u003e\u003cstrong\u003eExplore the project »\u003c/strong\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/danekf/https://github.com/danekf/Signum-App/issues\"\u003eReport Bug\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/danekf/https://github.com/danekf/Signum-App/issues\"\u003eRequest Feature\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\u003ca name =\"readme-top\"\u003e\u003c/a\u003e\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n   \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-project\"\u003eAbout The Project\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#built-with\"\u003eBuilt With\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#database-setup\"\u003eDatabase Setup\u003c/a\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#database-setup\"\u003eDatabase Setup\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#repo-setup\"\u003eRepo Setup\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#warnings-tips\"\u003eWarnings \u0026 Tips\u003c/a\u003e\u003c/li\u003e\n    \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#roadmap\"\u003eRoadmap\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#app-images\"\u003eApp Images\u003c/a\u003e\u003c/li\u003e\n\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\u003c!-- ABOUT --\u003e\n## About The Project\n\n[![SignumScreenshot][product-screenshot]](https://github.com/danekf/Sigun-App)\n\nSignum is a web app that serves as a password manager for its end users.\n\n### Built With\n\u003cul\u003e\n  \u003cli\u003eexpress, for server setup\u003c/li\u003e\n  \u003cli\u003ebcrypt, for encryption\u003c/li\u003e\n  \u003cli\u003echalk, for a user pleasing server console\u003c/li\u003e\n  \u003cli\u003ecookie session, for storing session cookies\u003c/li\u003e\n  \u003cli\u003eejs, as a view engine\u003c/li\u003e\n  \u003cli\u003ebootstrap, for styling\u003c/li\u003e\n  \u003cli\u003ejquery, for dynamic events \u003c/li\u003e\n  \u003cli\u003epostgres, for database \u003c/li\u003e\n  \u003cli\u003enodemon, for automatic server resets on save\u003c/li\u003e\n  \u003cli\u003emorgan, for logging of server requests\u003cli\u003e\nand many more...\n\u003c/ul\u003e\n\u003cbr\u003e\n\nThis project aims to have its developpers hone their frontend, and backend skills, including PSQL to build a cohesive end product.\n\nA user is able to register, create new saved logins and set them as favourites for easy access. It has dynamic viewport elements, so that mobile and desktop have optimized views of data.\n\nThe app also uses a modal drop down menu to automatically generate passwords for its users, and gives them different criteria with which to do so.\n\nThe app uses jquery event targetting to show/hide passwords for individual logins, as well as copying that data to clipboard.\n\nPasswords are hidden by default but the login area can be clicked to view it.\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\n\n## Getting Started\n\n## Database Setup\nTo setup your database for the project, follow these instructions prior to forking and cloning the repo.\n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## Repo Setup\n\n1. Fork this repo\n2. Clone your forked repo\n```sh\n   git clone https://github.com/your_username_/Signum-App\n   ```\n3. Create a new `.env` in the root folder by using `.env.example` as a reference.\n\n4. Update the .env file with your correct local information (You can change this if youd like but ensure all references are updated)\n  ```sh\n    - username: `labber` \n    - password: `labber` \n    - database: `midterm`\n```\n5. Install dependencies\n```sh\n  npm i\n  ```\n6. Fix binaries for sass\n```sh\n  npm rebuild node-sass\n```\n\n7. Build/reset the database with value from seeds \u003cbr\u003e\n    -This step can be performed at any point to reset the database to its original seeded value.\n```sh\n  npm run db:reset\n```\n\n8. Run the server!\n```sh\n  npm run local\n```\n\n9. Checkout your server by visiting :\n```sh\nhttp://localhost:8080/\n```\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## Warnings \u0026 Tips\n\n```\nThe app does not currently encrypt user passwords for saved logins. \n\nThey are stored as plain text which is absolutely not ideal for real world scenarios.\n\nThis app is meant for learning database management and to develop skills.\n\nReal usernames and passwords should not be stored or used commercially at this point.\n\n```\n- Do not edit the `layout.css` file directly, it is auto-generated by `layout.scss`\n- Split routes into their own resource-based file names, as demonstrated with `users.js` and `widgets.js`\n- Split database schema (table definitions) and seeds (inserts) into separate files, one per table. See `db` folder for pre-populated examples. \n- Use the `npm run db:reset` command each time there is a change to the database schema or seeds. \n  - It runs through each of the files, in order, and executes them against the database. \n  - Note: you will lose all newly created (test) data each time this is run, since the schema files will tend to `DROP` the tables and recreate them.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## Roadmap\n\n- [ ] Add \"Prettier\" for cleaner linting.\n- [ ] Add instructions for setting up Postgres database to README File.\n- [ ] Encrypt saved login info. This is the next MAJOR step for the app.\n- [ ] Add organisations logic (Org can manage saved logins, and grant/revoke access to specific users/groups)\n- [ ] Add 2FA \n- [ ] Add Dynamic elements when selecting a login\n\n\n\nSee the [open issues](https://github.com/danekf/Signum-App/issues) for a full list of proposed features (and known issues).\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## App images\n\n### Registration\n  \u003ca\u003e\n    \u003cimg src=\"images/Register.png\" alt=\"Logo\"\u003e\n  \u003c/a\u003e\n\u003cbr\u003e\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n### Password Generator\n  \u003ca\u003e\n    \u003cimg src=\"images/Password.png\" alt=\"Logo\"\u003e\n  \u003c/a\u003e\n\u003cbr\u003e\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n### Add New Login\n  \u003ca\u003e\n    \u003cimg src=\"images/addNew.png\" alt=\"Logo\"\u003e\n  \u003c/a\u003e\n\u003cbr\u003e\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n### Basic Search\n  \u003ca\u003e\n    \u003cimg src=\"images/Search.png\" alt=\"Logo\"\u003e\n  \u003c/a\u003e\n\u003cbr\u003e\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n### Copy to Clipboard \n\n  \u003ca\u003e\n    \u003cimg src=\"images/CopyToC.png\" alt=\"Logo\"\u003e\n  \u003c/a\u003e\n\u003cbr\u003e\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\n\n\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n[contributors-shield]: https://img.shields.io/badge/Contributors-3-sucess\n[contributors-url]: https://github.com/danekf/LHL-MidtermProject/graphs/contributors\n\n[forks-shield]: https://img.shields.io/badge/All-Forks-yellow\n[forks-url]: https://github.com/danekf/LHL-MidtermProject/network/members\n\n[issues-shield]:https://img.shields.io/badge/All-Issues-red\n[issues-url]: https://github.com/othneildrew/Best-README-Template/issues\n\n[product-screenshot]: images/Favourites.png\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanekf%2Fsignum-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanekf%2Fsignum-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanekf%2Fsignum-app/lists"}