{"id":19741652,"url":"https://github.com/hellomouse/hellomouse-quote-db","last_synced_at":"2026-05-01T20:32:47.234Z","repository":{"id":56184022,"uuid":"133251179","full_name":"hellomouse/hellomouse-quote-db","owner":"hellomouse","description":"IRC Quote Website for hellomouse organization","archived":false,"fork":false,"pushed_at":"2020-11-22T03:03:29.000Z","size":882,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-02-28T07:00:40.793Z","etag":null,"topics":["db","irc","quote","quotedb","react"],"latest_commit_sha":null,"homepage":null,"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/hellomouse.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}},"created_at":"2018-05-13T15:45:00.000Z","updated_at":"2020-11-22T03:03:50.000Z","dependencies_parsed_at":"2022-08-15T14:11:04.163Z","dependency_job_id":null,"html_url":"https://github.com/hellomouse/hellomouse-quote-db","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hellomouse/hellomouse-quote-db","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellomouse%2Fhellomouse-quote-db","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellomouse%2Fhellomouse-quote-db/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellomouse%2Fhellomouse-quote-db/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellomouse%2Fhellomouse-quote-db/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hellomouse","download_url":"https://codeload.github.com/hellomouse/hellomouse-quote-db/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellomouse%2Fhellomouse-quote-db/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32512665,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"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"}},"keywords":["db","irc","quote","quotedb","react"],"created_at":"2024-11-12T01:27:24.269Z","updated_at":"2026-05-01T20:32:47.187Z","avatar_url":"https://github.com/hellomouse.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hellomouse-quote-db\r\n\r\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/066360820bb843ab8cc97ccf47c5d2d4)](https://www.codacy.com/app/Bowserinator/hellomouse-quote-db?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=hellomouse/hellomouse-quote-db\u0026amp;utm_campaign=Badge_Grade)\r\n\r\n![Example quote](https://i.imgur.com/QjBlwEX.png \"Quote example\")\r\n\r\nA website for IRC quotes for hellomouse.\r\n\r\n\r\n## Features\r\n* Nice material design layout\r\n* Fancy pagination\r\n* You can add quotes\r\n\r\nThis app isn't meant to be fancy. There are currently no user accounts or auth required, so if you plan on using this beyond a private group, you should (at least) add a CAPTCHA or auth of some sort.\r\n\r\n## Setup Postgres\r\n\r\nThis app expects a postgres server to be running. DB Config can be set in config.js\r\n```javascript\r\ndb: {\r\n    user: 'quote-db',\r\n    host: 'localhost',\r\n    database: 'quote-db',\r\n    password: 'password',\r\n    port: 3211\r\n}\r\n```\r\n**Note:** You shouldn't store your password in plaintext if there is risk of it being leaked!\r\n\r\nHere is the table format we used\r\n```sql\r\nCREATE TABLE quotes (\r\n    id SERIAL,\r\n    channel TEXT(25) NOT NULL,\r\n    poster TEXT(16) NOT NULL,\r\n    content TEXT(10000) NOT NULL,\r\n    created_on TIMESTAMP NOT NULL\r\n);\r\n```\r\n\r\nBefore adding a new quote to the table, the server does the following checks:\r\n* Channel text must be ASCII and start with a '#'\r\n* Channel length must be 25 chars of less\r\n* Username must be ASCII\r\n* Username must be 16 chars or less\r\n* Quote cannot exceed 10000 chars in length\r\n\r\nThese checks are defined in `routes/quote.js`\r\n\r\n## Pages\r\n```\r\n\u003cyour server\u003e:\u003creact port\u003e/page_n    Access nth page\r\n\u003cyour server\u003e:\u003creact port\u003e/quote_n   Access a specific quote by id\r\n\u003cyour server\u003e:\u003creact port\u003e/add_quote Add a quote\r\n\r\n\u003cyour server\u003e:\u003cexpress port\u003e/get_quote/n       Get info for nth quote\r\n\u003cyour server\u003e:\u003cexpress port\u003e/get_quote_page/n  Get quotes in nth page\r\n\u003cyour server\u003e:\u003cexpress port\u003e/num_pages/        Get number of pages\r\n\r\n\u003cyour server\u003e:\u003cexpress port\u003e/add_quote    Send a POST with a json payload:\r\n     {\r\n          poster: \u003cwhoever posted it\u003e,\r\n          channel: \u003cchannel, ie #test\u003e,\r\n          content: \u003cquote content\u003e\r\n     }\r\n```\r\n\r\n## Install\r\n\r\n```git clone https://github.com/Bowserinator/https://github.com/hellomouse/hellomouse-quote-db\r\ncd hellomouse-quote-db\r\nnpm install\r\n```\r\nYou will need to run both\r\n```\r\nnode index.js\r\nnpm start\r\n```\r\nAlso Postgres needs to be setup. Edit `config.js` for db connection options.\r\n\r\n## Additional Config\r\nIn addition to the config you can change in `config.js`, you must also edit the following lines in package.json:\r\n```json\r\n\"start\": \"PORT=8201 react-scripts start\",\r\n\"proxy\": \"http://localhost:8200\"\r\n```\r\nThe port in the first line should be the port of the react app (Webpage), the port on the 2nd line should be the port of the express app (Same as the port defined in config.js)\r\n\r\n## Contributing\r\n\r\nGot something cool? Bug fixes? Open a PR!\r\n\r\n## License\r\nSee LICENSE\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhellomouse%2Fhellomouse-quote-db","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhellomouse%2Fhellomouse-quote-db","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhellomouse%2Fhellomouse-quote-db/lists"}