Skip to content

Bookkeeping app for determining monthly cost between multiple parties.

License

Notifications You must be signed in to change notification settings

moviedo/bookkeeper

Repository files navigation

Bookkeeper

Bookkeeping app for determining monthly cost between multiple parties.

What's inside?

This turborepo uses npm as a package manager. It includes the following packages/apps:

Apps and Packages

Each package/app is 100% TypeScript.

Setup

Pre-requistes

Install nodejs, make and docker desktop.

Optional instructions to install make 3.82

  1. Install through brew
  2. Install make, brew install make

Make sure to use the correct node and npm versions as specified in the top-level package.json. You can also use nvm use if using NVM for node management.

Install dependencies and setup docker postgres container:

make setup

Develop

Run make start to start the docker containers for postgres and adminer.

Run make stop to stop the docker containers.

Run make help for all available command options.

To develop all apps and packages, run the following command:

npm run dev

To develop specific apps, run the following command:

npm run -w bookkeeper-ui dev

Build

To build all apps and packages, run the following command:

npm run build

Commit Convention Rules

Structure of commit messages

<type>[optional scope]: <description>

[optional body]

[optional footer(s)]

Example commit message:

git commit -m "feat(component): add ix-btn component"
git commit -m "fix(util): fix xhr logic issue with network.save"
git commit -m "style: add commit convention type/scope rules"

Example breaking change commit message:

git commit -m "feat(component): change api for ix-btn component

BREAKING CHANGE: `extends` key in config file is now used for extending other config files"

Major, Minor, Patch

The commit contains the following structural elements, to communicate intent to the consumers of your library:

  1. fix: a commit of the type fix patches a bug in your codebase (this correlates with PATCH in Semantic Versioning).
  2. feat: a commit of the type feat introduces a new feature to the codebase (this correlates with MINOR in Semantic Versioning).
  3. BREAKING CHANGE: a commit that has a footer BREAKING CHANGE:, or appends a ! after the type/scope, introduces a breaking API change (correlating with MAJOR in Semantic Versioning).

Types

Commit messages must be one of the following:

build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
chore: miscellaneous(setting up eslint, stylelint, etc)
ci: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
docs: Documentation only changes
feat: A new feature
fix: A bug fix
perf: A code change that improves performance
refactor: A code change that neither fixes a bug nor adds a feature
style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
test: Adding missing tests or correcting existing tests

Useful Links

Learn more about the power of Turborepo:

About

Bookkeeping app for determining monthly cost between multiple parties.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published