npm install commitizen -g
npm i
cp .env.local.example .env.local
npm run gen:type
npm run dev
, then go to http://localhost:3000/
npm run build && npm run start
cp .env.local.example .env
source bin/dc-alias
dc build
dc up
or dc run --service-ports web npm run dev
http://localhost:3000/
NOTE: If new packages are added to package.json,
dc up
will usenpm i
to install those packages. But if you are usingdc run --service-ports web npm run dev
, you need to rundc run web npm i
manually to make sure that new packages are installed.
source bin/dc-alias
dc run web npm run build
source bin/dc-alias
dc build
$(aws ecr get-login --no-include-email --region ap-southeast-1)
docker push 903380195283.dkr.ecr.ap-southeast-1.amazonaws.com/matters-web:latest
docker tag matters-web:latest 903380195283.dkr.ecr.ap-southeast-1.amazonaws.com/matters-web:latest
docker pull 903380195283.dkr.ecr.ap-southeast-1.amazonaws.com/matters-web:latest
docker tag 903380195283.dkr.ecr.ap-southeast-1.amazonaws.com/matters-web:latest matters-web:latest
See Conventions.
./public/static/
├── apple-touch-icon.png # favicons
├── favicon-16x16.png
├── icon-96x96.png
├── icons # icons in different sizes
│ ├── 12px
│ │ ├── ...
│ │ └── draft-edit.svg
│ ├── 72px
│ │ ├── ...
│ │ └── empty-warning.svg
│ └── stripe.svg
├── images # illustrations
│ ├── ...
│ └── publish-4.svg
├── manifest.json # configurations
└── opensearch.xml
We use SVGR to transform SVGs into React components. For reusability and bundle optimization:
fill
and stroke
attributes with currentColor
, andfill="none"
to <svg>
.See .vscode/settings.json
See .vscode/extensions.json
For vim users, you might want to see .vim/.vimrc
(using vim-plug).