{"id":18258461,"url":"https://github.com/bartolomej/scng-api","last_synced_at":"2025-04-08T23:20:14.875Z","repository":{"id":40741691,"uuid":"197660913","full_name":"bartolomej/scng-api","owner":"bartolomej","description":"Solski Center Nova Gorica API services","archived":false,"fork":false,"pushed_at":"2023-01-04T05:30:12.000Z","size":9059,"stargazers_count":0,"open_issues_count":29,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-14T18:18:26.015Z","etag":null,"topics":["school-app","school-project"],"latest_commit_sha":null,"homepage":"https://bartolomej.github.io/scng-api","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bartolomej.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":"2019-07-18T21:44:19.000Z","updated_at":"2020-07-30T09:09:17.000Z","dependencies_parsed_at":"2023-02-01T23:16:51.360Z","dependency_job_id":null,"html_url":"https://github.com/bartolomej/scng-api","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/bartolomej%2Fscng-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bartolomej%2Fscng-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bartolomej%2Fscng-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bartolomej%2Fscng-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bartolomej","download_url":"https://codeload.github.com/bartolomej/scng-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247942184,"owners_count":21022116,"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":["school-app","school-project"],"created_at":"2024-11-05T10:31:17.399Z","updated_at":"2025-04-08T23:20:14.854Z","avatar_url":"https://github.com/bartolomej.png","language":"CSS","readme":"\u003cp align=\"center\"\u003e\n    \u003cimg width=\"200\" src=\"./assets/images/logo/scng.png\" /\u003e\n\u003c/p\u003e\n\n# SCNG API\n\n[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)\n\n\nThis is a backend api service for SCNG APP. \u003cbr\u003e\nYou can find frontend mobile app [here](https://github.com/bartolomej/scng-mobile).\u003cbr\u003e\n\nLive version of the app is deployed to heroku and is available [here](https://scng-api.herokuapp.com/). You may have to wait for the app to start, bacause heroku puts the app to sleep after 30min of inactivity.\n\n\n### ⚙️ Project setup\n1. Clone repo locally `git clone https://github.com/bartolomej/scng-api.git`\n2. Install external node modules `npm i`\n3. Configure environmental variables\n4. Run all tests with `jest test`\n5. Run application with `npm start`\n\n### ⚒️ App configuration\n\nInstead of hard-coding config into some file that is committed to git, it is a good practise to provide app configuration values is via \"environmental variables\".\n\nThat way you achieve a healthy separation of configuration (the inputs that the app receives) and the application itself.\nRead more about \"good practises\" [here](https://12factor.net/config).\n\nAn example configuration file can be found under `./env.examples`.\n\n### 📧 How to configure email service\n\n1. Create a new dummy google account\n2. [Disable 2FA auth](https://support.google.com/accounts/answer/1064203?co=GENIE.Platform%3DDesktop\u0026hl=en) so that app can login autonomously without your confirmation\n3. Allow access for less secure apps [here](https://myaccount.google.com/lesssecureapps)\n3. Provide google account credentials to environmental variables\n\n### 🚀 Deploy to Heroku\n\nThe easiest way to deploy this app is using Heroku platform:\n1. click deploy to heroku button (located at the top of readme)\n2. set environment variables under `settings -\u003e config vars`\n\n### 💜 Some tech used\n- [TypeORM](https://typeorm.io/) - Object Relational Mapper for Node.js\n- [Nodemailer](https://nodemailer.com/about/) - simple email module for Node.js\n- [Cheerio](https://cheerio.js.org/) - HTML parsing\n- [Winston](https://github.com/winstonjs/winston) - universal logging library\n- [Heroku](https://heroku.com/) - cloud deployment platform\n- [Handlebars](https://handlebarsjs.com/) - templating engine\n\n### 🔴 Common issues\n\n- [You get `ER_NOT_SUPPORTED_AUTH_MODE` on startup](https://github.com/typeorm/typeorm/issues/2093#issuecomment-574613981)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbartolomej%2Fscng-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbartolomej%2Fscng-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbartolomej%2Fscng-api/lists"}