Skip to content

Latest commit

 

History

History
80 lines (59 loc) · 2.88 KB

File metadata and controls

80 lines (59 loc) · 2.88 KB

daily.dev App Suite

The web app and browser extension for daily.dev. Both live in one pnpm monorepo so they share components and stay in sync.

Build Status License StackShare E2E Tests

Tech stack

TypeScript, React 18, Next.js 15 (Pages Router), Tailwind CSS, TanStack Query v5, GraphQL with graphql-request, Jest.

Packages

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

Getting started

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 install

Full local environment (Docker)

If you want a working API and database behind the frontend:

docker compose up
docker compose exec daily-api node ./bin/import   # seed sample data

Development commands

pnpm --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       # Storybook

Running the extension locally

Chrome example:

  1. Run pnpm --filter extension dev from the repo root.
  2. Go to chrome://extensions/ and turn on Developer mode.
  3. Click Load unpacked and pick packages/extension/dist/chrome.
  4. The extension appears in your toolbar. Disable the production extension if you have it installed -- they can conflict.

Contributing

Contributions are welcome. Please read CONTRIBUTING.md before opening a PR.

License

AGPL-3.0. See LICENSE.