Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maulanasdqn/nx-boilerplate
NX, NextJS and NestJS Fullstack Boilerplate
https://github.com/maulanasdqn/nx-boilerplate
docker nestjs nextjs nx react storybook trpc
Last synced: about 1 month ago
JSON representation
NX, NextJS and NestJS Fullstack Boilerplate
- Host: GitHub
- URL: https://github.com/maulanasdqn/nx-boilerplate
- Owner: maulanasdqn
- Created: 2024-02-17T19:21:13.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-02-20T08:20:07.000Z (12 months ago)
- Last Synced: 2024-11-11T11:51:22.500Z (3 months ago)
- Topics: docker, nestjs, nextjs, nx, react, storybook, trpc
- Language: TypeScript
- Homepage:
- Size: 562 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NX Boilerplate
## Didalam Repo ini terdapat 4 Aplikasi:
- Backoffice
- Backoffice-API
- Landing
- CMS-API# WAJIB Setup Husky
Untuk bisa menggunakan husky agar berjalan baik dan benar maka perlu di inisialisasi dulu
- Jalankan perintah
> `npm run husky install`# Cara Menggunakan GIT dengan Baik dan Benar
### Jika Kamu baru di Project ini maka kamu bisa ke Section Installasi
# Cara Berkontribusi di Project Ini
# Di Mohon jangan PUSH Langsung ke Branch "develop"
## Aturan Branching ( Percabangan )
- Jika kamu bermaksud untuk meng-_improve_ atau memperbaharui
> `git checkout -b "improvement/apa-yang-di-improve`
- Jika kamu bermaksud untuk _Bug Fixing_
> `git checkout -b "bugfix/apa-yang-di-fix`
- Jika kamu bermaksud untuk menambah _Feature_
> `git checkout -b "feature/fitur-apa-yang-di-buat`
## Aturan Commit
- Jika kamu bermaksud untuk meng-_improve_ atau memperbaharui
> `git commit -m "improvement: apa yang di improve`
- Jika kamu bermaksud untuk _Bug Fixing_
> `git commit -m "bugfix: apa yang di fix`
- Jika kamu bermaksud untuk menambah _Feature_
> `git commit -m "feature: fitur apa yang di buat`
## Rekomendasi Kode Editor
Visual Studio Code
### Rekomendasi Extension
- Stylelint
- TailwindCSS Intelesense
- Prettier
- Error Lens
- ESLint## Menyiapkan Projek
- Clone Projek Dengan SSH ( Direkomendasikan menggunakan SSH )
> `git clone [email protected]:maulanasdqn/nx-boilerplate.git`
- Clone Projek Dengan HTTPS
> `git clone https://github.com/maulanasdqn/nx-boilerplate.git`
## Memasang _Dependency_
- Pasang _Dependency_
> `npm install`
## Menjalankan Aplikasi di Lokal
- Untuk menjalankan Projek _Backoffice_ dengan mode **Development** ketik perintah berikut
> `npm run web:backoffice:dev`
- Untuk menjalankan Projek _Backoffice_ dengan mode **Production** ( Perlu dilakukan Build terlebih dahulu ) ketik perintah berikut
> `npm run web:backoffice:start`
- Untuk menjalankan Projek _Landing Page_ dengan mode **Development** ketik perintah berikut
> `npm run web:landing:dev`
- Untuk menjalankan Projek _Landing Page_ dengan mode **Production** ( Perlu dilakukan Build terlebih dahulu ) ketik perintah berikut
> `npm run web:landing:start`
- Untuk menjalankan Projek _API Backoffice_ dengan mode **Development** ketik perintah berikut
> `npm run api:backoffice:dev`
- Untuk menjalankan Projek _API Backoffice_ dengan mode **Production** ( Perlu dilakukan Build terlebih dahulu ) ketik perintah berikut
> `npm run api:backoffice:start`
- Untuk menjalankan Projek _API CMS_ dengan mode **Development** ketik perintah berikut
> `npm run api:cms:dev`
- Untuk menjalankan Projek _API CMS_ dengan mode **Production** ( Perlu dilakukan Build terlebih dahulu ) ketik perintah berikut
> `npm run api:cms:start`
## Mem*Build* Aplikasi ke _Production_
- Untuk mem*build* Projek _Backoffice_ ketik perintah berikut
> `npm run web:backoffice:build`
- Untuk mem*build* Projek _Landing Page_ ketik perintah berikut
> `npm run web:landing:build`
- Untuk mem*build* Projek _API Backoffice_ ketik perintah berikut
> `npm run api:backoffice:build`
- Untuk mem*build* Projek _API CMS_ ketik perintah berikut
> `npm run api:cms:build`
## Mem*Build* Aplikasi ke _Production_ Menggunakan Docker
Anda perlu menginstall _Docker_ terlebih dahulu
- Untuk menginstall docker sesuai dengan Sistem Operasi anda, bisa mengunjungi link berikut https://docs.docker.com/install/
- Untuk mem*build* Projek _Backoffice_ Dengan _Docker_ ketik perintah berikut
> `npm run web:backoffice:container`
- Untuk mem*build* Projek _Landing Page_ Dengan _Docker_ ketik perintah berikut
> `npm run web:landing:container`
- Untuk mem*build* Projek _API Backoffice_ Dengan _Docker_ ketik perintah berikut
> `npm run api:backoffice:container`
- Untuk mem*build* Projek _API CMS_ Dengan _Docker_ ketik perintah berikut
> `npm run api:cms:container`
## _Development_ Dengan _NIX_
_Development_ dengan Nix membuat proses Develop menjadi lebih mudah dan ringkas, semua dependency akan terurus dengan sendirinya, juga independent artinya tidak akan menggangu environment yang lain
- Pasang Nixpkgs
> `sh <(curl -L https://nixos.org/nix/install) --no-daemon`
- Pasang nix-flakes
> `nix-env -iA nixpkgs.nixFlakes`
- Setup nix-flakes \
Edit file yang ada di `~/.config/nix/nix.conf` atau `/etc/nix/nix.conf` dan tambahkan:> `experimental-features = nix-command flakes`
- Pasang nix-direnv
> `nix-env -f '' -iA nix-direnv`
- Setup nix-direnv
> `source $HOME/.nix-profile/share/nix-direnv/direnvrc`
- Masuk ke folder yang sudah di clone kemudian jalankan perintah berikut
> `direnv allow`
- Dan enjoy tinggal tunggu dependency terinstall dengan sendirinya
## Setup Env
Masuk kedalam folder `apps/nama-apps/` Copy terlebih dahulu `.env.example` kemudian rename ke `.env`