Initial commit

This commit is contained in:
Luka Romih
2022-12-07 04:43:36 +01:00
commit 257f3c354f
496 changed files with 55373 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
# Initial values are default vaules.
# Change if needed.
EXPRESS_LISTEN_PORT=3000
EXPRESS_IS_BEHIND_PROXY=false
EXPRESS_SECRET="weak_secret"
POSTGRES_ADMIN_PASSWORD="weak_admin_password" # user: postgres
POSTGRES_EXPRESS_PASSWORD="weak_express_password" # user: express
POSTGRES_CONCORDANCER_PASSWORD="weak_concordancer_password" # user: concordancer
POSTGRES_LISTEN_PORT=5432
SMTP_HOST="maildev"
SMTP_PORT=1025
SMTP_TLS_REJECT_UNAUTHORIZED=true
SMTP_FROM="Sender name <sender@server.com>"
OS_DASHBOARDS_LISTEN_PORT=3002
CONCORDANCER_LISTEN_PORT=3003
# Development only settings
MAILDEV_WEB_GUI_PORT=3001
# Production only settings
URL_ORIGIN="https://mywebportal.com"
+25
View File
@@ -0,0 +1,25 @@
_Tale dokument se bo dopolnjeval in bo v končni obliki v angleščini_
# Navodila za zagon aplikacije v razvojnem okolju
**Na sistemu potrebuješ imeti naložen Docker.**
1. Z Git repozitorija https://git.amebis.si/TerminoloskiPortal.git preneseš (najnovejšo) kodo (git clone, git pull, ...).
2. `/dev/.env` skopiraš en nivo višje, v koren projekta, in po želji prilagodiš vrednosti.
3. Za zagon celotne aplikacije v terminalu v korenu projekta poženeš `docker-compose up`
4. Za ustavitev zgolj zapreš proces.
**Dodatno**
- Za vsak nadaljni zagon uporabljaš `docker-compose up`.
- Ob spremembi _node modulov_ je najprej treba pognati `docker-compose down`, nato pa `docker-compose up --build`.
- Če kadarkoli želiš sprostiti disk oz. ponastaviti aplikacijo, uporabiš `docker-compose down`. Podatki iz baze se ohranijo. Za izbris tudi njih, poženi raje `docker-compose down --volumes`.
- Ob razvoju upoštevaj razvojne konvencije, navedene v `dev/razvojne_konvencije.md`
- Odjemalec elektronske pošte je privzeto dosegljiv na portu 3001 (nastavljivo z variablo MAILDEV_WEB_GUI_PORT)
+51
View File
@@ -0,0 +1,51 @@
# Razvojne konvencije Terminološkega portala
_Tale dokument se bo dopolnjeval in ga v končnem repozitoriju ne bo ali pa bo v končni obliki v angleščini._
## Priporočen editor, nastavitve in razširitve
- Visual Studio Code ima za razvoj Node.js aplikacij ogromno uporabnih funkcionalnosti že vgrajenih
- Nastavitve in razširitve niso vključene v Git repozitorij, vendar jih Luka z veseljem priporoči/deli. Še posebej je uporabna launch konfiguracija za debugiranje kode v kontejnerju v realnem času.
- V VS Codu se da ta dokument brati v formatirani obliki z zagonom (_Ctrl + Shift + P_) ukaza `Markdown: Open Preview`
## Git workflow
- Commit messagi naj spoštujejo [to konvencijo](https://chris.beams.io/posts/git-commit/#seven-rules) in naj bodo v angleščini.
- Za začetek ne commitajmo direktno v _master_ vejo. Vsakršno delo naj bo opravljeno na ločeni veji, ki pa jo bo Luka po potrebi dopolnil/prilagodil in dodal v _master_. Tipičen tok naj torej sledi naslednjemu vzorcu:
- Posodobiš _master_ na najnovejšo verzijo: `git pull origin master`
- Narediš novo vejo za dopolnitve: `git checkout -b <ime veje>`
- Ime veje naj bo formata _\<ime>/\<dopolnitev>_
- Primer imena veje: _jure/admin-console_
- Narediš potrebne popravke v kodi in jih poljubnokrat, toda vsaj enkrat, commitaš: `git commit -m "<Commit message>"`
- Vejo porineš na remote repositorij: `git push origin <ime veje>`
- Luku sporočiš, da je veja končana in pripravljena za integracijo v _master_
- Ko Luka sporoči, da je bila veja integrirana, jo izbrišeš lokalno in na remote repozitoriju
- Greš na _master_: `git checkout master`
- Lokalni izbris: `git branch -D <ime veje>`
- Remote izbris: `git push origin --delete <ime veje>`
## Sintaksa
### Splošno
- Za večino znanih tipov datotek za enotno formatiranje skrbi kombinacija ESLint-a in Prettier-ja. Kljub temu je spodaj navedenih nekaj splošnih smernic, ki jih upoštevajmo na splošno, v vseh datotekah.
- Za integracijo zgoraj navedenih orodij v VS Code in poenastavitev workflowa vam lahko pomaga Luka
- Če ne uporabljate integracije teh orodij v text editor, pred vsakim git commitom poženite `npm run format`
- Če se bo v git repozitorij začela objavljati neformatirana koda, bomo morali uporabiti git hooke; najraje na klientovi strani, sicer na strežniški
#### Splošne smernice
- Zamik enega nivoja naj bo povsod 2 presledka (JS, CSS, Pug, ...)
- Datoteke naj se končajo z newlinom.
- Komentarji se povedi. Začnejo se z veliko začetnico in končajo z ločilom.
### JS
- smernice in oblikovanje temeljijo na [JavaScript Standard Stilu](https://standardjs.com) z dodatnimi dopolnitvami
- uporaba console metod (log, warn, error, ...) v _končni_ kodi ni dovoljena
- ker je končnemu uporabniku (na klientovi strani) neuporabna in lahko kvečjemu razkrije neželene detajle
- ker je sinhrona in zato neprimerna za strežniško stran (Node)
- za debugiranje lahko uporabljamo debug modul ali log pointe debuggerskega orodja. V skrajnem primeru lahko uporabite console metode, a jih pred git commitom odstranite