From e1257b95fc8e1a94f43103e9caa953348224fcdd Mon Sep 17 00:00:00 2001 From: Enno Gelhaus Date: Thu, 17 Jul 2025 17:07:56 +0200 Subject: [PATCH 1/5] Feat/coderabbit --- .coderabbit.yaml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .coderabbit.yaml diff --git a/.coderabbit.yaml b/.coderabbit.yaml new file mode 100644 index 00000000..56fd6629 --- /dev/null +++ b/.coderabbit.yaml @@ -0,0 +1,2 @@ +autopilot: + enabled: false From 13a0d1dad467342069f6d87bb8f92f00ea4c53a1 Mon Sep 17 00:00:00 2001 From: Enno Gelhaus Date: Thu, 17 Jul 2025 17:41:31 +0200 Subject: [PATCH 2/5] feat/copilot instructions --- .github/.github/copilot-instructions.md | 59 +++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/.github/copilot-instructions.md diff --git a/.github/.github/copilot-instructions.md b/.github/.github/copilot-instructions.md new file mode 100644 index 00000000..13cdf09e --- /dev/null +++ b/.github/.github/copilot-instructions.md @@ -0,0 +1,59 @@ +Postiz is an all-in-one Social Media Scheduler. + +# Instructions + +## Comments +Write meaningful comments where necessary, especially for complex logic. + +## Testing +If you try to code something for "Postiz", make sure to check your code with these instructions: +1. Install NodeJS 20.17.0 +2. Install pNPM 8 +3. Install Dependencies: "pnpm install" +4. Build it: "pnpm run build" + +## "Commit"'s +Use conventional commits (feat:, fix:, chore: etc.) for commit messages. + +--- + +# Overview +Make sure to use any information that you need here: + +## Documentation +The Documentation is available under https://docs.postiz.com/ +Developer Documentation is available under https://docs.postiz.com/developer-guide + +## Tech Stack +- NX (Monorepo) +- NextJS (React) +- NestJS +- Prisma (Default to PostgreSQL) +- Redis (BullMQ) +- Resend (email notifications) + +## License +This repository's source code is available under the [AGPL-3.0 license](LICENSE). + +## Features +- Schedule all your social media posts (many AI features) +- Measure your work with analytics. +- Collaborate with other team members to exchange or buy posts. +- Invite your team members to collaborate, comment, and schedule posts. +- At the moment there is no difference between the hosted version to the self-hosted version + +--- + +# PR and Code Review Etiquette + +Expand on the PR expectations section: + +```markdown +## Pull Request Expectations + +When submitting a PR: +- Write a clear description of what the PR does and *why* the change was made. +- Link any related issues using `Closes #` syntax. +- Include screenshots/GIFs if the PR affects the UI. +- Add tests if new functionality is introduced. +- Make sure the PR passes CI and all tests before requesting review. From 0df669a39ff0e09693e0d1225f380a2f74df2ab4 Mon Sep 17 00:00:00 2001 From: Enno Gelhaus Date: Thu, 17 Jul 2025 17:45:57 +0200 Subject: [PATCH 3/5] accidentaly created .github in .github --- .github/.github/copilot-instructions.md | 59 ------------------------- 1 file changed, 59 deletions(-) delete mode 100644 .github/.github/copilot-instructions.md diff --git a/.github/.github/copilot-instructions.md b/.github/.github/copilot-instructions.md deleted file mode 100644 index 13cdf09e..00000000 --- a/.github/.github/copilot-instructions.md +++ /dev/null @@ -1,59 +0,0 @@ -Postiz is an all-in-one Social Media Scheduler. - -# Instructions - -## Comments -Write meaningful comments where necessary, especially for complex logic. - -## Testing -If you try to code something for "Postiz", make sure to check your code with these instructions: -1. Install NodeJS 20.17.0 -2. Install pNPM 8 -3. Install Dependencies: "pnpm install" -4. Build it: "pnpm run build" - -## "Commit"'s -Use conventional commits (feat:, fix:, chore: etc.) for commit messages. - ---- - -# Overview -Make sure to use any information that you need here: - -## Documentation -The Documentation is available under https://docs.postiz.com/ -Developer Documentation is available under https://docs.postiz.com/developer-guide - -## Tech Stack -- NX (Monorepo) -- NextJS (React) -- NestJS -- Prisma (Default to PostgreSQL) -- Redis (BullMQ) -- Resend (email notifications) - -## License -This repository's source code is available under the [AGPL-3.0 license](LICENSE). - -## Features -- Schedule all your social media posts (many AI features) -- Measure your work with analytics. -- Collaborate with other team members to exchange or buy posts. -- Invite your team members to collaborate, comment, and schedule posts. -- At the moment there is no difference between the hosted version to the self-hosted version - ---- - -# PR and Code Review Etiquette - -Expand on the PR expectations section: - -```markdown -## Pull Request Expectations - -When submitting a PR: -- Write a clear description of what the PR does and *why* the change was made. -- Link any related issues using `Closes #` syntax. -- Include screenshots/GIFs if the PR affects the UI. -- Add tests if new functionality is introduced. -- Make sure the PR passes CI and all tests before requesting review. From ad876a67d037e3d33c1d7f75ac79c070addcddde Mon Sep 17 00:00:00 2001 From: Enno Gelhaus Date: Thu, 17 Jul 2025 17:46:26 +0200 Subject: [PATCH 4/5] Recreate copilot-instructions.md --- .github/copilot-instructions.md | 59 +++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/copilot-instructions.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 100644 index 00000000..13cdf09e --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1,59 @@ +Postiz is an all-in-one Social Media Scheduler. + +# Instructions + +## Comments +Write meaningful comments where necessary, especially for complex logic. + +## Testing +If you try to code something for "Postiz", make sure to check your code with these instructions: +1. Install NodeJS 20.17.0 +2. Install pNPM 8 +3. Install Dependencies: "pnpm install" +4. Build it: "pnpm run build" + +## "Commit"'s +Use conventional commits (feat:, fix:, chore: etc.) for commit messages. + +--- + +# Overview +Make sure to use any information that you need here: + +## Documentation +The Documentation is available under https://docs.postiz.com/ +Developer Documentation is available under https://docs.postiz.com/developer-guide + +## Tech Stack +- NX (Monorepo) +- NextJS (React) +- NestJS +- Prisma (Default to PostgreSQL) +- Redis (BullMQ) +- Resend (email notifications) + +## License +This repository's source code is available under the [AGPL-3.0 license](LICENSE). + +## Features +- Schedule all your social media posts (many AI features) +- Measure your work with analytics. +- Collaborate with other team members to exchange or buy posts. +- Invite your team members to collaborate, comment, and schedule posts. +- At the moment there is no difference between the hosted version to the self-hosted version + +--- + +# PR and Code Review Etiquette + +Expand on the PR expectations section: + +```markdown +## Pull Request Expectations + +When submitting a PR: +- Write a clear description of what the PR does and *why* the change was made. +- Link any related issues using `Closes #` syntax. +- Include screenshots/GIFs if the PR affects the UI. +- Add tests if new functionality is introduced. +- Make sure the PR passes CI and all tests before requesting review. From f72bf89c4bcb3dde241ba8169244764236d31429 Mon Sep 17 00:00:00 2001 From: Enno Gelhaus Date: Fri, 18 Jul 2025 02:44:40 +0200 Subject: [PATCH 5/5] Update copilot-instructions.md --- .github/copilot-instructions.md | 88 +++++++++++++++------------------ 1 file changed, 41 insertions(+), 47 deletions(-) diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 13cdf09e..220e7bd7 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -1,59 +1,53 @@ -Postiz is an all-in-one Social Media Scheduler. -# Instructions +# Copilot Coding Agent Instructions for Postiz -## Comments -Write meaningful comments where necessary, especially for complex logic. +## Project Architecture +- Monorepo managed by NX, with apps in `apps/` and shared code in `libraries/`. +- Main services: `frontend` (Next.js), `backend` (NestJS), `cron`, `commands`, `extension`, `sdk`, and `workers`. +- Data layer uses Prisma ORM (`libraries/nestjs-libraries/src/database/prisma/schema.prisma`) with PostgreSQL as the default database. +- Redis (BullMQ) is used for queues and caching. +- Email notifications via Resend. +- Social login integrations (Instagram, Facebook) and Make.com/N8N integrations. -## Testing -If you try to code something for "Postiz", make sure to check your code with these instructions: -1. Install NodeJS 20.17.0 -2. Install pNPM 8 -3. Install Dependencies: "pnpm install" -4. Build it: "pnpm run build" +## Developer Workflows +- Use Node.js 20.17.0 and pnpm 8+. +- Install dependencies: `pnpm install` +- Build all apps: `pnpm run build` +- Run all apps in dev mode: `pnpm run dev` +- Test: `pnpm test` (Jest, coverage enabled) +- Individual app scripts are in each app's `package.json` (e.g., `pnpm --filter ./apps/backend run dev`). +- Prisma DB commands: `pnpm run prisma-generate`, `pnpm run prisma-db-push`, `pnpm run prisma-reset`. +- Docker: `docker compose -f ./docker-compose.dev.yaml up -d` -## "Commit"'s -Use conventional commits (feat:, fix:, chore: etc.) for commit messages. +## Conventions & Patterns +- Use conventional commits (`feat:`, `fix:`, `chore:`). +- PRs should include clear descriptions, related issue links, and UI screenshots/GIFs if relevant. +- Comments are required for complex logic. +- Shared code lives in `libraries/` (e.g., helpers, React shared libraries, NestJS modules). +- Environment variables are managed via `.env` and referenced in Docker and scripts. +- Make sure to keep the `.env.example` file updated with new environment variables. ---- +## Integration Points +- External APIs: Social media (Instagram, Facebook), Make.com, N8N, Resend, Stripe, etc. +- SDK (`apps/sdk`) provides programmatic access to Postiz features. +- Extension (`apps/extension`) is built with Vite, React, TypeScript, and Tailwind CSS. -# Overview -Make sure to use any information that you need here: +## Key Files & Directories +- `apps/` — Main services and applications +- `libraries/` — Shared code and modules +- `docker-compose.dev.yaml` — Local development Docker setup +- `.env` — Environment configuration +- `jest.config.ts` — Test configuration +- `pnpm-workspace.yaml` — Workspace package management +- `README.md` — General project overview +- `libraries/nestjs-libraries/src/database/prisma/schema.prisma` — Database schema ## Documentation -The Documentation is available under https://docs.postiz.com/ -Developer Documentation is available under https://docs.postiz.com/developer-guide - -## Tech Stack -- NX (Monorepo) -- NextJS (React) -- NestJS -- Prisma (Default to PostgreSQL) -- Redis (BullMQ) -- Resend (email notifications) - -## License -This repository's source code is available under the [AGPL-3.0 license](LICENSE). - -## Features -- Schedule all your social media posts (many AI features) -- Measure your work with analytics. -- Collaborate with other team members to exchange or buy posts. -- Invite your team members to collaborate, comment, and schedule posts. -- At the moment there is no difference between the hosted version to the self-hosted version +- Main docs: https://docs.postiz.com/ +- Developer guide: https://docs.postiz.com/developer-guide +- Public API: https://docs.postiz.com/public-api --- -# PR and Code Review Etiquette +For questions or unclear conventions, check the main README or ask for clarification in your PR description. -Expand on the PR expectations section: - -```markdown -## Pull Request Expectations - -When submitting a PR: -- Write a clear description of what the PR does and *why* the change was made. -- Link any related issues using `Closes #` syntax. -- Include screenshots/GIFs if the PR affects the UI. -- Add tests if new functionality is introduced. -- Make sure the PR passes CI and all tests before requesting review.