{"id":18258369,"url":"https://github.com/rafalkornel/santa2020","last_synced_at":"2026-04-20T09:02:32.504Z","repository":{"id":143537564,"uuid":"314406327","full_name":"RafalKornel/santa2020","owner":"RafalKornel","description":"Small application that allows to draw person for christmas gifting.","archived":false,"fork":false,"pushed_at":"2025-11-30T18:35:10.000Z","size":1092,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-12-03T02:53:21.548Z","etag":null,"topics":["christmas","flask","javascript","python"],"latest_commit_sha":null,"homepage":"https://santa2020.herokuapp.com/","language":"Python","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/RafalKornel.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-11-20T00:43:58.000Z","updated_at":"2025-11-30T18:35:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"8c5e9484-23b6-4f2b-b0f5-1e0cc2c4b978","html_url":"https://github.com/RafalKornel/santa2020","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RafalKornel/santa2020","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RafalKornel%2Fsanta2020","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RafalKornel%2Fsanta2020/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RafalKornel%2Fsanta2020/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RafalKornel%2Fsanta2020/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RafalKornel","download_url":"https://codeload.github.com/RafalKornel/santa2020/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RafalKornel%2Fsanta2020/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32040353,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"online","status_checked_at":"2026-04-20T02:00:06.527Z","response_time":94,"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":["christmas","flask","javascript","python"],"created_at":"2024-11-05T10:30:34.374Z","updated_at":"2026-04-20T09:02:32.487Z","avatar_url":"https://github.com/RafalKornel.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Santa2020\n\nThis application allows you to create group, and then let each member draw other member. Why? For christmas \ngifting. Hence the name.\n\nYou can try it here: [santa2020](https://santa2020.herokuapp.com/) (it's hosted on heroku so first visit might take a while to load).\n\nIt's very minimalistic, there are 3 screens. \nWhen you enter the applictaion, you see screen responsible for creating group. \nThere, you specify usernames, and optionally provide keys (increasing security).\n\n\u003cimg align=\"center\" width=\"400\" src=\"gifs/create.gif\"\u003e\n\n\n\nAfter that, you are redirected to the overview screen, where you see all member,\nand they keys (if you enabled secure mode). You will also get there a link, that you\nshould send to group members. \n\n\u003cimg align=\"center\" src=\"gifs/overview.png\"\u003e\n\nUpon this link you will see prompt, asking your name \n(and optionally your key), after providing those you will be able to click \"draw\" button,\nand see who you drafted.\n\n\u003cimg align=\"center\" width=\"400\" src=\"gifs/draw.gif\"\u003e\n\n### Installing \nIf you are using linux (bash), you can clone repository, and\n```\n./create_env.sh\n```\nor \n```\nbash create_env.sh\n```\nThis will create python virtual environment, and install dependencies from *requirements.txt* file.\n\nYou can do this manually, by creating environment in *app/venv* folder:\n```\npython3 -m venv app/venv\n```\nthen activating venv:\n```\nsource app/venv/bin/activate\n```\nthen installing pip modules:\n```\npip install -r requirements.txt\n```\nNow you are ready to launch app:\n```\nexport FLASK_APP=santa.py\nflask run\n```\n\n### Docker\nTo run application in docker, just use\n```\ndocker compose up\n```\n\nEverything should work out of the box.\n\n### Database\nTo initalize database run following scripts:\n\n``` terminal\npython manage.py db init\npython manage.py db migrate\npython manage.py db upgrade\n```\n\nIn docker: \n``` terminal\ndocker exec -it python_app_web python manage.py db init\ndocker exec -it python_app_web python manage.py db migrate\ndocker exec -it python_app_web python manage.py db upgrade\n```\n\n### Tech stack\nIn process of development of this app (which was very short btw), I used following technologies:\n- python3 with Flask\n- SQLAlchemy with PostgreSQL (and Sqlite3 in development)\n- HTML (jinja2 was used to handle SSR)\n- CSS (with Bootstrap)\n- Javascript (vanilla)\n\n### Got any ideas? Submit new issue.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frafalkornel%2Fsanta2020","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frafalkornel%2Fsanta2020","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frafalkornel%2Fsanta2020/lists"}