Skip to content

Lokaverkefni gert af nemendum í tölvunarfræði við Háskólann í Reykjavík fyrir Edico ehf.

Notifications You must be signed in to change notification settings

edicoehf/beidnakerfi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Beiðnakerfi - Edico ehf

Lokaverkefni gert af nemendum í Tölvunafræði við Háskólann í Reykjavík.

Status

Backend:

Heroku

Frontend:

Heroku

Uppsetning

Til þess að sækja forritið skal hlaða niður Github gagnahirslunni með efitrfarandi skipun:

➜ git clone git@github.com:edicoehf/beidnakerfi.git
➜ cd beidnakerfi

Bakendi

Bakendinn keyrir á Python 3.7 með PostgreSQL gagnagrunni. Til þess að vera viss um að notandi sé með réttar útgáfur skal nota eftirfarandi skipanir:

➜  beidnakerfi git:(master) ✗ python3.7 --version
Python 3.7.2
➜  beidnakerfi git:(master) ✗ pip --version
pip 19.3.1 from /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pip (python 3.7)
➜  beidnakerfi git:(master) ✗ psql --version
psql (PostgreSQL) 12.1

Til þess að keyra upp bakendann þarf fyrst að setja upp nauðsynlega pakka sem bakendinn notar:

➜  beidnakerfi git:(master) ✗ cd backend
➜  backend git:(master) ✗ pip install -r requirements.txt
Requirement already satisfied: asgiref==3.2.3 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from -r requirements.txt (line 1)) (3.2.3)
Requirement already satisfied: astroid==2.3.3 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from -r requirements.txt (line 2)) (2.3.3)
...
Installing collected packages: django-environ, djangorestframework, drf-nested-routers, python-dotenv, certifi, idna, chardet, requests
Successfully installed certifi-2020.4.5.1 chardet-3.0.4 django-environ-0.4.5 djangorestframework-3.11.0 drf-nested-routers-0.91 idna-2.9 python-dotenv-0.12.0 requests-2.23.0

Sem og búa til .env skjal í config/ möppunni sem þarf að innihalda eftirfarandi:

DJANGO_SECRET_KEY='YOUR_DJANGO_SECRET_KEY'
DEBUG=True/False
DATABASE_URL='URL_TO_POSTGRES_DATABASE'
MAIL_SECRET_KEY='YOUR_MAILGUN_API_KEY'
MAIL_URL='YOUR_MAILGUN_MAILBOX_URL'

Eftir að allir nauðsynlegu pakkarnir hafa verið settir upp getum við loksins keyrt upp bakendann:

➜  backend git:(master) ✗ py manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
April 30, 2020 - 17:25:20
Django version 3.0.3, using settings 'config.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Framendi

Framendinn okkar keyrir á Node.JS server sem notast m.a við React, Material-UI og Axios pakkana til þess að tala við bakendann og birta gögnin frá honum á snirtilegann máta.

Þar sem að við notuðumst við Node útgáfu >= 13.0.0 mælum við eindregið með því að nota slíka þar sem við tryggjum ekki að virkni virki eins á eldri útgáfum.

Til að sjá hvaða útgáfu af Node og NPM þú ert með:

➜  frontend git:(master) ✗ node -v
v13.7.0
➜  frontend git:(master) ✗ npm -v
6.14.1

Eins og með bakendann, þá notast framendinn einnig við .env skrár. Hinsvegar í þetta skiptið, þá er það bara ein lína sem þörf er á. Við setjum skrána í rótina af frontend/ möppunni og í henni á að vera:

REACT_APP_API_URL='URL_OF_BACKEND_SERVER'

Áður en node serverinn er keyrður upp þarf að setja upp nauðsynlega pakka sem er gert með því að:

➜  frontend git:(master) npm install

Þegar búið er að setja upp alla nauðsynlegu pakkana þá má keyra npm start:

➜  frontend git:(master) ✗ npm start

> frontend@0.1.0 start /Users/emilnewel/Documents/git/beidnakerfi/frontend
> react-scripts start

Compiled successfully!

You can now view frontend in the browser.

  Local:            http://localhost:3000
  On Your Network:  http://192.168.111.195:3000

Note that the development build is not optimized.
To create a production build, use npm run build.

Production útgáfa

Development útgáfan af forritinu er stór. Ef áætlunin er að hýsa framendann á netinu, þá mælum við með því að notast við production útgáfuna.

Til þess að fá hana er hægt að keyra skipunina npm build.

Eftir að skipunin er hætt að keyra, munt þú sjá build/ möppu í frontend/ möppunni.

App

Appið okkar keyrir í Expo umhverfi sem hjúpar virkni NPM fyrir öpp, keyrir og hýsir appið svo hægt sé að sýna það í símum. Appið er skrifað í Javascript með React-Native ramma (e. framework).

Útgáfan af Expo sem við notuðumst við er 3.13.1 mælum við eindregið með því að nota slíka þar sem við tryggjum ekki að virkni virki eins á öðrum útgáfum. Einnig mælum við með sömu útgáfum af npm og notast er við í framenda.

Til að sjá hvaða útgáfu af Expo þú ert með:

➜  beidnaApp git:(master) ✗ expo -V
v3.13.1

Áður en appið er keyrt upp þarf að setja upp nauðsynlega pakka sem er gert með:

➜  beidnaApp git:(master) expo install

Þegar búið er að setja upp alla nauðsynlegu pakkana þá má keyra expo start:

➜  beidnaApp git:(master) ✗ expo start

Starting project at /Users/emilnewel/Documents/git/beidnakerfi/beidnaApp
Expo DevTools is running at http://localhost:19002
Opening DevTools in the browser... (press shift-d to disable)
Starting Metro Bundler on port 19001.
Tunnel ready.

  exp://192.168.111.183:19000

  ...
  [Generated QR code]
  ...

  To run the app with live reloading, choose one of:
  • Scan the QR code above with the Expo app (Android) or the Camera app (iOS).
  • Press a for Android emulator, or w to run on web.
  • Press e to send a link to your phone with email.
  • Press s to sign in and enable more options.

 Expo  Press ? to show a list of all available commands.

About

Lokaverkefni gert af nemendum í tölvunarfræði við Háskólann í Reykjavík fyrir Edico ehf.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •