A Blog and RSS Reader website.
Backend built with Nest.
See frontend at https://github.com/lulu-cao/blog.
See the original backend at https://github.com/lulu-cao/blog-cms-django.
See DB design at Miro.
See API design at http://localhost:3001/api when running the app.
To install project dependencies:
$ npm installTo develop the file feature with S3, follow these steps on Mac:
brew install python
brew install pipx
# install AWS CLI and LocalStack AWS CLI
pipx install awscli-local# development
$ npm run start
# watch mode
$ npm run start:dev
# production mode
$ npm run start:prodThis project uses LocalStack to simulate S3 storage and retrieval. To run LocalStack in Docker:
docker compose upThis mocks S3 service on port 4566 for the NestJS app.
# unit tests
$ npm run test
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:covWhen you're ready to deploy your NestJS application to production, there are some key steps you can take to ensure it runs as efficiently as possible. Check out the deployment documentation for more information.
If you are looking for a cloud-based platform to deploy your NestJS application, check out Mau, our official platform for deploying NestJS applications on AWS. Mau makes deployment straightforward and fast, requiring just a few simple steps:
$ npm install -g mau
$ mau deployWith Mau, you can deploy your application in just a few clicks, allowing you to focus on building features rather than managing infrastructure.
NestJS:
- Visit the NestJS Documentation to learn more about the framework.
- For questions and support, please visit our Discord channel.
- To dive deeper and get more hands-on experience, check out our official video courses.
- Deploy your application to AWS with the help of NestJS Mau in just a few clicks.
- Visualize your application graph and interact with the NestJS application in real-time using NestJS Devtools.
LocalStack:
- LocalStack Doc on S3
- awscli-local
awslocal s3 mb s3://new-bucket-nameawslocal s3api list-bucketsawslocal s3 lsawslocal s3api list-objects --bucket blog-filesawslocal s3 rm s3://profile-photo --recursiveawslocal s3api delete-bucket --bucket profile-photo
- @aws-sdk/client-s3
- @aws-sdk/s3-request-presigner
- Tutorial 1 - Medium
- Tutorial 2 - DEV Community