opus-totalis: A template generated by software-toolchain-automation which generates a pnpm workspace that contains all of our packages, projects, and utilities with a focus on node, sql and nextjs.
Quick Start
Using a terminal, clone and install the project:
# clone the project
git clone https://github.com/erichosick/opus-totalis.git
# install all dependencies
cd opus-totalis && pnpm install
Build all projects:
# build all packages
pnpm build
# continuous development
pnpm build:watch
NOTE: to assure any changes to code are applied during development, be sure to run pnpm build:watch
.
Features
- single repository for all of our packages, projects, and utilities written in node
- uses pnpm workspaces to manage dependencies
Dependencies
- git: version control system
- github: git repository hosting service
- commit-and-tag-version: semantic versioning, changelogs
- conventional commits: a specification for adding human and machine readable meaning to commit messages
- pnpm: effecient package manager for node.js
- pnpm workspace: support workspaces and mono-repos
- typescript: typescript programming language
- nx: fast, maintainable CI for monorepos
- eslint: find and fix problems in your JavaScript code
- prettier: opinionated code formatter
- jest: javascript testing framework with a focus on simplicity
- commitlint: lint conventional commits
- husky: jusky improves your commits and more
FAQ
Why aren't changes to the code base being applied?
Did you run pnpm build:watch
?
Software License
This software is licensed under GPL-3.0-or-later. For more details, see LICENSE.
Since this is a workspace, other packages within it may be licensed under different terms. In such cases, the package will contain its own licensing terms.
Workspaces
- utilities: highly reusable packages, that provide utility, libraries, components and modules.
- packages: libraries, toolchainthat provide higher order functionality.
- projects: command line tools, documentation and services.
- products: complete applications, services and websites
- sqlpm-packages: contains sqlpm installable packages