ApiHelper
Iphakheji @churchapps/apihelper ihlinzeka ngetisebenti tase-server kuwo onkhe ema-Express.js API e-ChurchApps. Ihlanganisa i-base controller class, kutivela nge-JWT, tisebenti te-database, kanye nekuhlanganiswa ne-AWS lokusetjentiswa yiwo onkhe emaphrojekthi e-API.
Ngembi Kwekucala
- Faka Node.js ne-Git -- bona Tidzingo Tekucala
- Tijwayeze Kulungiselela kwe-Packages workspace kanye netindlela tekushicilela
- Lephakheji itsembela ku-
@churchapps/helpers(njenge-peer dependency) futsi iyayikhipha kabusha
Loku Lokufakiwe
- CustomBaseController -- i-base class yema-controller e-API, lakhiwe phezu kwe-
inversify-express-utils - Kutivela -- kutivela nge-JWT ngendlela ye-
CustomAuthProvider,AuthenticatedUser, kanye ne-Principal - Tisebenti te-database --
DB.query/DB.queryOnekanye ne-class ye-Poolyekulawula kuhlanganiswa kwe-MySQL, kanjalo ne-MySqlHelperne-DBCreatoryekulungiselela sakhiwo se-database - Kuhlanganiswa ne-AWS --
AwsHelperyekugcina emafayela ku-S3 kanye nekufundza kuSSM Parameter Store - Imeyili --
EmailHelperlesekela kutfunyelwa nge-SES nge-SMTP - Kulayisha kulungiselelwa --
EnvironmentBaseifundza tintsambo tekuhlangana netimfihlo kusuka kuma-environment variable nome ku-Parameter Store - Kunye nalokunye --
EncryptionHelper,FileStorageHelper,LoggingHelper,BasePermissions,SlugHelper
Kulungiselela Indzawo Yekusebenta
Lephakheji ihlala ku-workspace ye-Packages kanye naletinye tincwadzi letabelwanako:
-
Khoba i-workspace:
git clone https://github.com/ChurchApps/Packages.git -
Faka tintfo letidzingekako ekucaleni kwe-workspace:
cd Packages && yarn install -
Yakha (kuguqula i-TypeScript ibe yi-
dist/):yarn workspace @churchapps/apihelper buildNome sebentisa
yarn buildekucaleni kute wakhe wonkhe phakheji ngendlela yekutsembelana.
Kuhlola tishintjo ngekhatsi kwe-API leyitsembelako, sebentisa i-Yarn portal yesikhashana -- bona Kulungiselela Endzaweni Yakho Uchamana Ne-App Leyitsembelako.
Kushicilela
Kukhishwa kuhamba ngendlela ye-changesets: sebentisa yarn changeset ekucaleni kwe-workspace nganoma nguluphi lushintjo, bese usebentisa yarn publish-all nawusulungele kukhipha. Bona Sifingqo Setincwadzi Letabelwanako yendlela lephelele.
Lephakheji ingulokutsembelako kuwo onkhe ema-API e-ChurchApps -- i-core Api, AskApi, kanye ne-LessonsApi. Nawenta tishintjo, tihlole ku-API endzaweni yakho ngembi kwekushicilela.
Tincwadzi Letihambelanako
- Helpers -- Iphakheji yesisekelo yetisebenti letincwadzi itsembela kuyo
- Sakhiwo se-Module -- Indlela ema-controller kanye ne-auth middleware asetjentiswa ngayo kuma-module e-API
- Kulungiselela kwe-API Yendzawo -- Kulungiselela i-API yekusebenta endzaweni yakho