Code Monkey home page Code Monkey logo

verbum's Introduction

Latviešu valodas apguves sistēma - Verbum

Kvalifikācijas darba uzdevums ir izveidot pašmācības latviešu valodas apmācību cittautiešiem un diasporas latviešiem A1 līmenī. Ar tās palīdzību cittautieši un diasporas latvieši varēs apgūt latviešu valodas apmācību pašmācības ceļā. Šī sistēma palīdzēs caur latviešu valodas apguvi cittautiešu integrācijai Latvijā un diasporas latviešiem stiprināt saiti ar dzimteni. Lietotājiem būs iespēja apgūt dotās vārdu kartiņas un tad veikt testus lai pārbaudītu savas apgūtās zināšanas. Kā arī redzēt apguves progresu un testa nepareizās atbildes.

Izmantotās tehnoloģijas

Lai sistēmu realizētu kā modernu, efektīvu, kā arī ilgspējīgu, tās realizēšanā tika izmantot jaunākie tehniskie līdzekļi. Sistēmas pamatā ir MERN tehnoloģijas – MongoDB, Express, React, Node. Programmēšanas valodas tika izmantotas šo tehnoloģiju pamatā, kā arī attiecīgas palīgprogrammas, kas nodrošina efektīvu atkļūdošanu.

  • React ir atvērtā koda JavaScript bibliotēka, kas palīdz lietotāja saskarnes izveidē, kuru pamatā ir UI komponenti. Sistēmā tiek izmantota 18.2.0 versija.
  • Express.js, jeb Express ir aizmugures tīmekļa lietojumprogrammu ietvars RESTful API izveidei ar Node.js. Sistēmā tiek izmantota 4.18.2 versija.
  • MongoDB ir atvērtā koda starpplatformu dokumentiem orientēta datu bāzes programma. Tā izmanto JSON dokumentus ar izvēles shēmām. Sistēmā tiek izmantota 6.0 versija.
  • Node ir atvērtā koda servera vide, tā ļauj rakstīt JavaScript kodu, kas darbojas tieši pašā datora procesā, nevis pārlūkprogrammā. Sistēmā tiek izmantota 16.14.1. versija.
  • Postman ir API platforma izstrādātājiem, lai izstrādātu, izveidotu, pārbaudītu un atkārtotu savas API. Sistēmā tiek izmantota 9.4. versija.
  • Redux DevTools lietojumprogramma palīdz Redux stāvokļa izmaiņu atkļūdošanai. Šis paplašinājums nodrošina Redux izstrādes darbplūsmas jaudu. Paplašinājumam tiek izmantota 3.0.15 versija.

Aizgūtie modeļi

Izveidē tika arī pielietoti un aizgūti dažādi moduļi, kas vienozīmīgi paātrina izstrādes procesu, drošību un ātrumu. Sistēmai pilnveidojoties, aizgūto moduļu skaits visticamāk vēl pieaugs, taču šie pagaidām ir vieni no nozīmīgākajiem aizgūtajiem moduļiem:

  • Axios
  • React-Bootstrap
  • Filestack-react
  • Npm
  • ReactDOM
  • React Router DOM
  • React-select
  • React-circular-progressbar
  • Mui/material
  • Tss-react
  • Styled-components
  • React-toastify
  • React-Redux
  • Nodemon
  • Bcryptjs
  • CORS
  • Dotenv
  • Jsonwebtoken
  • Mongoose
  • Sass

Uzstādīšanas instrukcija

Sistēmu ir iespējas palaist kā parasts sistēmas lietotājs, tam nepieciešams būtu tikai ievadīt sistēmas saiti pārlūkprogrammā, otrs veids ir instālēt un palaist sistēmu no cita datora, rediģēt tās saturu un kodu. Lai sistēmu instalētu un palaistu no cita datora vai kā sistēmas administrators. Ir nepieciešams iegūt sistēmas kodu, instalēt nepieciešamos rīkus un iegūt nepieciešamās sistēmas atslēgas savienojumā ar datu bāzi un citiem rīkiem. Sistēmas kodu var iegūt un apskatīt GitHub repozitorijā. Kad kods tiek iegūts ar Git palīdzību, to var klonēt un atvērt projektu Visual Studio Code.

6.1.att.

Sistēmas palaišanai ir nepieciešams lejuplādē bibliotēkas. Tā kā projekts sastāv no frontend un backend daļas, katrai no šīm daļām ir savas bibliotēkas. Lai lejuplādētu attiecīgās bibliotēkas, ar termināles palīdzību ir jāpārvietojas uz backend un pēc tam uz frontend mapi un ar funkcijas npm palīdzību instalēt nepieciešamās bibliotēkas.

6.2.att.

Pēc bibliotēku instalēšanas, palaiž frontend daļu. Tā kā sistēma sastāv no divām daļām – frontend un backend, katra sistēma ir jāpalaiž atsevišķi. Sistēmām ir norādīti porti uz kādiem tā tiks palaista. Programmu palaiž, servera apakšmapē ierakstot “npm start”, tādas pašas darbības veicot ar ar klienta daļu (skatīt 6.3.att). Lai programma strādātu, ir vēl nepieciešami vides mainīgie jeb environmental variables. Šie mainīgie tiek saglabāt failā ar .env paplašinājumu un tie glabā dažādas API atslēgas un citas konfigurācijas vērtības. Lai strādātu servera daļa, ir nepieciešams norādīt JWT (jeb Jsonwebtoken slepenā atslēga), Mongo (jeb savienojuma atslēga ar datu bāzi), un Node vide, kas sniedz informāciju par vidi, kurā programma darbosies. Lai strādātu frontend daļā ir nepieciešams norādīt Filestack API atslēgu, lai būtu iespēja augšupielādēt attēlus, kā arī Node vide, kas sniedz informāciju par vidi, kurā programma darbosies. Tā kā šīs atslēgas ir slepenas un rada apdraudējumu programmas drošībai, tās netiek iekļautas kodā un repozitorijā. Kad bibliotēkas ir ielādētas un vides mainīgie tiek norādīti, var veiksmīgi palaist programmu.

6.3.att.

verbum's People

Contributors

reinismuiznieks avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.