Skip to content

CodingFlow/rating-service-typescript

Repository files navigation

Introduction

The backend API of a full-stack TypeScript rating web application using modern tools.

  • Deno - Successor to Node.js with built-in support for TypeScript.
  • Danet - Nest inspired backend framework for Deno.
  • Devbox - Ergonomic tool over Nix to enable easily creating portable, isolated development environments.
  • Liquibase - Database versioning and migration tool.
  • Docker - Dockerfile setup to deploy to AWS Lambda.

Usage

Install Devbox. On Windows, install WSL2 as a prerequisite as mentioned in the installation instructions.

(Windows only) - Pull down the project's git repository into WSL file system instead of windows mounted file system (so do not place in directory prefixed with /mnt). This will ensure hot reload watch for file changes works and Deno/Danet commands have fast performance. Suggested to put in something like ~/github/rating-service/. To edit files, Visual Studio Code can be installed on Windows side and then open it in wsl in the current directory with:

code .

(first time only) - run devbox postgres setup script:

devbox run setup-postgresql

Start the Devbox environment (in WSL shell for Windows):

devbox shell

If postgres is not running, start it with:

devbox services start postgresql

Setup postgres database schema using liquibase:

liquibase update --url $RATING_SERVICE_DB_URL --changelog-file ./changelog/changelog-root.yaml

Then start the project:

deno task launch-server

This will run the local dev server for the API.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published