Siirry pääsisällölle

Verkkosovellukset

ChurchApps sisältää kolme verkkosovellusta, joista kukin palvelee eri käyttäjäryhmää ja tarkoitusta. Niillä on yhteinen teknologiapohja: React 19, TypeScript ja Material-UI 7. Ne eroavat toisistaan kuitenkin käännösworkflow'nsa ja julkaisukohteidensa osalta.

Sovellukset yhdellä silmäyksellä​

SovellusKäyttötarkoitusKehysKehityksen portti
B1AdminSeurakunnan hallintanäkymäReact 19 + Vite + MUI 75173
B1AppSeurakuntalaisten julkinen sovellusNext.js 16 + React 19 + MUI 73301
LessonsAppOppituntisisällön hallintaNext.js 16 + React 193501

Jaettu teknologiapino​

Kaikki kolme verkkosovellusta on rakennettu seuraavilla:

  • TypeScript -- Tyyppiturvallisuus päästä päähän
  • React 19 -- Käyttöliittymäkomponenttikirjasto
  • Material-UI 7 -- Suunnittelujärjestelmä ja komponenttityökalupakki
  • React Query 5 -- Palvelimen tilan hallinta

Jaetut komponentit​

Sovellukset jakavat käyttöliittymäkomponentit ja apuohjelmat @churchapps/apphelper*-pakettiperheen kautta:

PakettiKäyttötarkoitus
@churchapps/apphelperJaetut ydinkomponentit Reactille
@churchapps/apphelper-loginKirjautumisen käyttöliittymäkomponentit
@churchapps/apphelper-donationsLahjoitus- ja antolomakkeet
@churchapps/apphelper-formsLomakerakentajan komponentit
@churchapps/apphelper-markdownMarkdown-renderöinti
@churchapps/apphelper-websiteVerkkosivu- ja CMS-komponentit
vihje

Näiden jaettujen pakettien paikalliseen kehittämiseen liittyvät tiedot löydät AppHelper-dokumentaatiosta.

Postinstall-skripti​

Jokaisessa verkkosovelluksessa on postinstall-skripti, joka kopioi kieliasetustiedostot ja CSS-resurssit paketista @churchapps/apphelper projektiin. Skripti suoritetaan automaattisesti npm install -komennon jälkeen.

tieto

Jos komponentit näyttävät tyylittömiltä riippuvuuksien asentamisen jälkeen, postinstall-skripti ei ehkä suoriutunut oikein. Voit käynnistää sen manuaalisesti komennolla npm run postinstall.

Rakennustyökalut​

Sovelluksissa käytetään kahta eri rakennustyökalua:

  • B1Admin käyttää Vitea -- nopeaa ja nykyaikaista paketoijaa, joka sopii hyvin yksisivuisiin sovelluksiin
  • B1App ja LessonsApp käyttävät Next.js:ää -- tarjoaa palvelinpuolen renderöinnin, tiedostopohjaisen reitityksen ja optimoidut tuotantoversiot