{"id":20717802,"url":"https://github.com/wojciechprusaczyk/events-app","last_synced_at":"2026-04-09T17:03:30.920Z","repository":{"id":257939146,"uuid":"816951772","full_name":"WojciechPrusaczyk/events-app","owner":"WojciechPrusaczyk","description":"Eventful🔥  Service for creating and managing events.  Key features:   Event schedule 📆    Reminders📲   Event map📌  Useful informations about event📃  Local events browser🔍","archived":false,"fork":false,"pushed_at":"2025-01-08T20:37:01.000Z","size":85813,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-17T22:21:42.338Z","etag":null,"topics":["django","javascript","nodejs","postgresql","python","reactjs","rest-api","sass","scss","web-app","web-application","web-development"],"latest_commit_sha":null,"homepage":"https://eventfull.pl","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WojciechPrusaczyk.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":"2024-06-18T18:01:00.000Z","updated_at":"2025-01-08T20:37:04.000Z","dependencies_parsed_at":"2024-11-04T20:29:01.506Z","dependency_job_id":"0f79724a-d0fe-47ec-96a4-234652e3728b","html_url":"https://github.com/WojciechPrusaczyk/events-app","commit_stats":null,"previous_names":["wojciechprusaczyk/events-app"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WojciechPrusaczyk%2Fevents-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WojciechPrusaczyk%2Fevents-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WojciechPrusaczyk%2Fevents-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WojciechPrusaczyk%2Fevents-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WojciechPrusaczyk","download_url":"https://codeload.github.com/WojciechPrusaczyk/events-app/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242990491,"owners_count":20217995,"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":["django","javascript","nodejs","postgresql","python","reactjs","rest-api","sass","scss","web-app","web-application","web-development"],"created_at":"2024-11-17T03:10:20.306Z","updated_at":"2025-12-30T19:04:21.746Z","avatar_url":"https://github.com/WojciechPrusaczyk.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Python](https://img.shields.io/badge/python%20%5E3.11.0-yellow?style=for-the-badge\u0026logo=python)](https://www.python.org/downloads/)\n[![NodeJS](https://img.shields.io/badge/nodejs%20%5E18.20.3-gray?style=for-the-badge\u0026logo=nodedotjs)](https://nodejs.org/en/download/prebuilt-installer)\n[![Git](https://img.shields.io/badge/git-lightgray?style=for-the-badge\u0026logo=git)](https://git-scm.com/downloads)\n[![Git](https://img.shields.io/badge/PostgreSQL%20%5E16.3-white?style=for-the-badge\u0026logo=postgresql)](https://www.postgresql.org/download/)\n[![ReactJS](https://img.shields.io/badge/React.js-gray?style=for-the-badge\u0026logo=react)](https://react.dev/)\n[![Django](https://img.shields.io/badge/Django-darkgreen?style=for-the-badge\u0026logo=django)](https://docs.djangoproject.com/en/5.0/)\n  \n# Eventful :fire:\nService for creating and managing events.\n### Key features:\n- Event schedule :calendar:\n- Reminders :calling:\n- Event map :pushpin:\n- Useful informations about event :page_with_curl:\n- Local events browser :mag:\n  \n### Roadmap\n\n1. [x] Name, logo, deciding about tech stack\n2. [x] Registration\n3. [x] Signing in\n4. [x] Creating event (mostly basic info)\n5. [x] Event edition\n6. [x] Creating segments\n7. [x] Segment edition\n8. [x] Joining and sharing events\n9. [x] Notification system, user acceptations.\n10. [x] Event page (schedule, important infos)\n11. [ ] Galleries (for events and segments)\n12. [ ] Event map\n13. [ ] Mobile app\n\n# Installation\n\n1. Zainstaluj całe potrzebne oprogramwoanie.\n2. Pobierz za pomocą IDE najświeższe repozytorium z githuba.\n3. Utwórz w PostgreSQL (za pomocą PgAdmin) pustą bazę danych o nazwie \"events-app\".\n4. Upewnij się, że masz odpowiedni connection string w backend/backend/settings.py (zmienna \"DATABASES\")\n5. Wymigruj całą bazę danych do PostgreSQL.\n6. Zainstaluj potrzebne biblioteki JS\n```commandline\ncd .\\frontend\\\nnpm install\n```\n7. Skompiluj pliki JS i CSS.\n8. Jeśli gdzieś wystąpią błędy, to możliwe że nie posiadasz zainstalowanych bibliotek. Sprawdź komunikat o błędzie i zainstaluj wymagane biblioteki.\n\n### Migracja bazy danych\nNależy ją wykonać przy każdej zmianie w strukturze bazy danych.\n```commandline\ncd .\\backend\\\npython manage.py makemigrations\npython manage.py migrate\n```\n### Kompilacja plików JS i CSS\nNależy wykonać przy każdej zmianie w plikach JS, czy CSS.\n```commandline\ncd .\\frontend\\\nnpm run build\n```\n\n### Uruchomienie lokalknego serwera deweloperskeigo\n```commandline\ncd .\\backend\\\npython manage.py runserver\n```\n\n### Wypychanie lokalnych zmian na GitHuba\nZalecam jednak wykonanie tych działań z pomocą wbudowanego w IDE narzędzia do zarządzania projektem w GIT.\n```commandline\ngit add .\ngit commit -m \"Komentarz odnośnie wykonanych prac\"\ngit push\n```\n\n### Otwieranie konsoli PostgreSQL\n```commandline\npython manage.py dbshell\n```\n\n### Usuwanie wszystkich tabel\n```commandline\nDO $$ DECLARE\n    r RECORD;\nBEGIN\n    FOR r IN (SELECT tablename FROM pg_tables WHERE schemaname = current_schema()) LOOP\n        EXECUTE 'DROP TABLE IF EXISTS ' || quote_ident(r.tablename) || ' CASCADE';\n    END LOOP;\nEND $$;\n```\n\n### Wstępne dane\nAby załadować wstępne dane należy użyć poniższej komendy\n```commandline\ncd .\\backend\\\npython manage.py loaddata initial_data\n```\nUtworzy to automatycznie użytkownika:\nUsername: john_doe\nEmail: john.doe@example.com\nPassword: 71WF@IP4\n\n\u003c!--\n# Mapa aplikacji\n- Strona główna (/):  \nPubliczne wydarzenia z twojej okolicy, z możliwością dołączenia.\n- Logowanie (/login)\n- Rejestracja (/register)\n- Ustawienia konta (/account)\n- Stwórz wydarzenie(/create-event):  \n    Pozwala na ustalenie: \n  - Segmenty: Część danego wydarzenia.\n    - Opiekun\n    - Prelegenci\n    - Ramy czasowe\n    - Opis\n    - Miejsce\n    - Opis\n    - Galeria\n  - Ramy czasowe\n  - Harmonogram\n  - Opis\n  - Galeria wydarzenia\n  - Mapa wydarzenia\n  - Zasoby organizatora\n  - Zadania\n- Dołącz do wydarzenia(/join-event?i={token}):  \nToken to unikalny krótki kod tworzony na podstawie aktualnych wydarzeń,  \numożliwiający dołączanie za pomocą kodu.  \nNa samej podstronie join-event, zawarty jest także skaner kodów QR(wersja mobilna)\n- Wydarzenie:  \nZawiera:\n  - Część organizatora(/event/organizer?i={token})\n    - Możliwość edycji parametrów wydarzenia  \n    (przy zmianach w harmonogramie, wysyłane są powiadomienia do uczestników)\n    - Zarządzanie uczestnikami, oraz ich rolami\n    - Zarządzanie zasobami\n    - Zarządzanie zadaniami\n    - Udostępnij wydarzenie:  \n    Tutaj jest możliwość wydrukowania kodu QR prowadzącego zarówno do aplikacji, jak i samego wydarzenia.\n    - Dodaj uczestników:\n    Gdy wydarzenie jest prywatne, to tutaj możemy ręcznie dodawać użytkowników, lub udostępniać prywatny link do dołączania do wydarzenia.\n  - Część uczestnika(/event?i={token})\n    - Plan wydarzenia\n    - Galeria\n    - Opis\n    - Mapa wydarzenia\n    - Uczestnicy\n--\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwojciechprusaczyk%2Fevents-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwojciechprusaczyk%2Fevents-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwojciechprusaczyk%2Fevents-app/lists"}