The web app and browser extension for daily.dev. Both live in one pnpm monorepo so they share components and stay in sync.
TypeScript, React 18, Next.js 15 (Pages Router), Tailwind CSS, TanStack Query v5, GraphQL with graphql-request, Jest.
| Package | What it does |
|---|---|
| webapp | Next.js web application -- the main daily.dev site |
| extension | Browser extension (Chrome, Opera) built with Webpack |
| shared | Shared React components, hooks, design system, and utilities |
| storybook | Component development and documentation |
| eslint-config | Shared ESLint configuration |
| eslint-rules | Custom ESLint rules (e.g. color consistency) |
| prettier-config | Shared Prettier configuration |
Prerequisites: Node 22.22 (nvm users can run nvm use) and pnpm 9.14.4.
npm i -g pnpm@9.14.4
git clone https://github.com/dailydotdev/apps.git
cd apps
pnpm installIf you want a working API and database behind the frontend:
docker compose up
docker compose exec daily-api node ./bin/import # seed sample datapnpm --filter webapp dev # web app with HTTPS
pnpm --filter webapp dev:notls # web app without HTTPS (http://localhost:5002)
pnpm --filter extension dev # Chrome extension
pnpm --filter storybook dev # StorybookChrome example:
- Run
pnpm --filter extension devfrom the repo root. - Go to
chrome://extensions/and turn on Developer mode. - Click Load unpacked and pick
packages/extension/dist/chrome. - The extension appears in your toolbar. Disable the production extension if you have it installed -- they can conflict.
Contributions are welcome. Please read CONTRIBUTING.md before opening a PR.
AGPL-3.0. See LICENSE.