Skip to content

Latest commit

 

History

838 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alice

A cost-effective, feature-rich Jira alternative for planning and delivering software work.

Alice helps teams manage projects, sprints, boards, backlogs, and work items in one place — with auth, files, dashboards, and shared UI primitives built for a real product workflow.


Overview

This repository is the Alice monorepo. It is organized as:

Area Path Role
Web app apps/web Next.js frontend (dashboard, board, backlog, work items, projects, auth, profile)
API apps/api Express.js TypeScript backend (REST, auth-aware routes, file uploads)
UI kit packages/ui Shared shadcn/ui components and theme tokens
Database packages/db Prisma / Supabase migrations, seeds, and type generation
Types packages/types Shared TypeScript types (including generated DB types)
Tooling packages/eslint-config, packages/typescript-config Shared lint and TS configs

Build system: Turborepo + pnpm workspaces
Commits: Conventional Commits (Commitizen / Commitlint + Husky)

Product surfaces (web)

  • Dashboard — customizable overview widgets (drag / resize)
  • Board — kanban swimlanes backed by work-item status updates
  • Backlog — sprint planning and unassigned work
  • Work items — list, detail, rich description editor, inline title edit
  • Projects, sprints, users, files, profile — supporting product areas
  • Auth — sign in / sign up, password recovery, session handling

Documentation

Project docs live under ./docs. Start with docs/README.md.

  • Product & architecture: docs/product/ARD.md, docs/architecture/TRD.md
  • Database: docs/database/, docs/guides/DATABASE.md
  • Features & auth: docs/features/, docs/auth/
  • Guides (SEO, Sonar, infra, debugging): docs/guides/

Requirements

  • Node.js >= 18
  • pnpm 9.x (see packageManager in root package.json)

First-time setup

Install dependencies

pnpm install

Configure environment variables for apps/web, apps/api, and packages/db as needed (Supabase / API URLs, secrets). See docs/guides/INFRASTRUCTURE.md and docs/guides/DATABASE.md for deeper setup notes.


Development

Run everything

pnpm dev

Run apps individually

# API (Express)
pnpm api dev

# Web (Next.js)
pnpm web dev

Shared UI components

Scaffold shadcn components into @repo/ui:

pnpm ui:add <component_1> <component_2>

Example:

pnpm ui:add button dialog sonner

Quality & build

Format

pnpm format

Typecheck

pnpm checktypes

Lint

pnpm lint

Build

pnpm build

Or build a single package / app with filters:

pnpm web build
pnpm api build

Tests

pnpm test

Web e2e (Cypress):

pnpm test:e2e
pnpm cypress:open

Commits

Use the interactive Commitizen flow (Conventional Commits):

pnpm commit

Husky + lint-staged run on commit to keep apps and packages lint-clean.


Repository layout

alice/
├── apps/
│   ├── web/          # Next.js app
│   └── api/          # Express API
├── packages/
│   ├── ui/           # @repo/ui (shadcn)
│   ├── db/           # @repo/db (Prisma / Supabase)
│   ├── types/        # @repo/types
│   ├── eslint-config/
│   └── typescript-config/
├── docs/             # Product & engineering documentation
└── package.json      # Workspace scripts (turbo, pnpm filters)

Useful filters

pnpm web <script>     # e.g. pnpm web lint
pnpm api <script>
pnpm ui <script>
pnpm db <script>      # migrations, generate, seed
pnpm types <script>

About

Jira clone application

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages