Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wojciechprusaczyk/events-app
https://github.com/wojciechprusaczyk/events-app
django javascript nodejs postgresql python reactjs rest-api sass scss web-app web-application web-development
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/wojciechprusaczyk/events-app
- Owner: WojciechPrusaczyk
- License: other
- Created: 2024-06-18T18:01:00.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-11-12T21:21:20.000Z (about 1 month ago)
- Last Synced: 2024-11-12T22:26:39.866Z (about 1 month ago)
- Topics: django, javascript, nodejs, postgresql, python, reactjs, rest-api, sass, scss, web-app, web-application, web-development
- Language: JavaScript
- Homepage: https://eventfull.pl
- Size: 80.6 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
[![Python](https://img.shields.io/badge/python%20%5E3.11.0-yellow?style=for-the-badge&logo=python)](https://www.python.org/downloads/)
[![NodeJS](https://img.shields.io/badge/nodejs%20%5E18.20.3-gray?style=for-the-badge&logo=nodedotjs)](https://nodejs.org/en/download/prebuilt-installer)
[![Git](https://img.shields.io/badge/git-lightgray?style=for-the-badge&logo=git)](https://git-scm.com/downloads)
[![Git](https://img.shields.io/badge/PostgreSQL%20%5E16.3-white?style=for-the-badge&logo=postgresql)](https://www.postgresql.org/download/)
[![ReactJS](https://img.shields.io/badge/React.js-gray?style=for-the-badge&logo=react)](https://react.dev/)
[![Django](https://img.shields.io/badge/Django-darkgreen?style=for-the-badge&logo=django)](https://docs.djangoproject.com/en/5.0/)
# Eventful :fire:
Service for creating and managing events.
### Key features:
- Event schedule :calendar:
- Reminders :calling:
- Event map :pushpin:
- Useful informations about event :page_with_curl:
- Local events browser :mag:
### Roadmap1. [x] Name, logo, deciding about tech stack
2. [x] Registration
3. [x] Signing in
4. [x] Creating event (mostly basic info)
5. [x] Event edition
6. [x] Creating segments
7. [x] Segment edition
8. [x] Joining and sharing events
9. [ ] Notification system, user acceptations.
10. [ ] Event page (schedule, important infos)
11. [ ] Galleries (for events and segments)
12. [ ] Event map
13. [ ] Mobile app# Installation
1. Zainstaluj całe potrzebne oprogramwoanie.
2. Pobierz za pomocą IDE najświeższe repozytorium z githuba.
3. Utwórz w PostgreSQL (za pomocą PgAdmin) pustą bazę danych o nazwie "events-app".
4. Upewnij się, że masz odpowiedni connection string w backend/backend/settings.py (zmienna "DATABASES")
5. Wymigruj całą bazę danych do PostgreSQL.
6. Zainstaluj potrzebne biblioteki JS
```commandline
cd .\frontend\
npm install
```
7. Skompiluj pliki JS i CSS.
8. Jeśli gdzieś wystąpią błędy, to możliwe że nie posiadasz zainstalowanych bibliotek. Sprawdź komunikat o błędzie i zainstaluj wymagane biblioteki.### Migracja bazy danych
Należy ją wykonać przy każdej zmianie w strukturze bazy danych.
```commandline
cd .\backend\
python manage.py makemigrations
python manage.py migrate
```
### Kompilacja plików JS i CSS
Należy wykonać przy każdej zmianie w plikach JS, czy CSS.
```commandline
cd .\frontend\
npm run build
```### Uruchomienie lokalknego serwera deweloperskeigo
```commandline
cd .\backend\
python manage.py runserver
```### Wypychanie lokalnych zmian na GitHuba
Zalecam jednak wykonanie tych działań z pomocą wbudowanego w IDE narzędzia do zarządzania projektem w GIT.
```commandline
git add .
git commit -m "Komentarz odnośnie wykonanych prac"
git push
```### Otwieranie konsoli PostgreSQL
```commandline
python manage.py dbshell
```### Usuwanie wszystkich tabel
```commandline
DO $$ DECLARE
r RECORD;
BEGIN
FOR r IN (SELECT tablename FROM pg_tables WHERE schemaname = current_schema()) LOOP
EXECUTE 'DROP TABLE IF EXISTS ' || quote_ident(r.tablename) || ' CASCADE';
END LOOP;
END $$;
```### Wstępne dane
Aby załadować wstępne dane należy użyć poniższej komendy
```commandline
cd .\backend\
python manage.py loaddata initial_data
```
Utworzy to automatycznie użytkownika:
Username: john_doe
Email: [email protected]
Password: 71WF@IP4