Skip to content

Hamed-Ajaj/bhvr-habit-tracker

Repository files navigation

bhvr - Habit Tracker

Project Overview

This is a full-stack TypeScript monorepo for a habit tracking application called "bhvr". It's built with a modern stack, including:

  • Monorepo: Turborepo for build orchestration.
  • Backend: Hono a lightweight web framework, running on Bun.
  • Frontend: React with Vite for bundling.
  • Database: The database is not explicitly defined in the project, but the server code has placeholders for a database connection. The project uses better-auth which suggests a SQL database.
  • Authentication: better-auth is used for authentication.
  • UI: The frontend uses shadcn/ui and Tailwind CSS.
  • Shared Code: There is a shared workspace for code that is used by both the client and the server.

The project is structured as a monorepo with three workspaces:

  • client/: The React frontend.
  • server/: The Hono backend.
  • shared/: Shared TypeScript definitions.

Building and Running

Installation

To install the dependencies for all workspaces, run the following command from the root of the project:

bun install

Development

To run all workspaces in development mode, run the following command from the root of the project:

bun run dev

You can also run individual workspaces:

  • Client: bun run dev:client
  • Server: bun run dev:server

Building

To build all workspaces, run the following command from the root of the project:

bun run build

You can also build individual workspaces:

  • Client: bun run build:client
  • Server: bun run build:server

Running in Production

To run the server in production, you first need to build the project. Then you can run the following command:

bun run start

Development Conventions

  • Code Style: The project uses ESLint for linting. The configuration can be found in client/eslint.config.js.
  • Type Checking: The project uses TypeScript for static type checking. You can run the type checker with bun run type-check.
  • Testing: The project is set up for testing, but there are no tests yet. You can run the tests with bun run test.
  • Commits: There is no specific commit message format enforced, but the project uses git for version control.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages