Skip to content

MichaelKohler/savings-dashboard

Repository files navigation

savings-dashboard

Simple savings dashboard. This is loosely based on the Remix Indie Stack.

Screenshot - Charts

Screenshot - Balances

Development

  • Copy the environment file and adjust it:
cp .env.example .env
  • Optional / PlanetScale:
pscale connect savings dev --port 3309
  • Initial setup:

    npm run setup
  • Validate the app has been set up properly (optional):

    npm run validate
  • Start dev server:

    npm run dev

This starts your app in development mode, rebuilding assets on file changes.

The database seed script creates a new user with some data you can use to get started:

Testing

Vitest

For lower level tests of utilities and individual components, we use vitest. We have DOM-specific assertion helpers via @testing-library/jest-dom.

Type Checking

This project uses TypeScript. It's recommended to get TypeScript set up for your editor to get a really great in-editor experience with type checking and auto-complete. To run type checking across the whole project, run npm run typecheck.

Linting

This project uses ESLint for linting. That is configured in .eslintrc.js.

Formatting

We use Prettier for auto-formatting in this project. It's recommended to install an editor plugin (like the VSCode Prettier plugin) to get auto-formatting on save. There's also a npm run format script you can run to format all files in the project.