63 lines
1.8 KiB
Markdown
63 lines
1.8 KiB
Markdown
# Contributing to Pulse
|
|
|
|
Thank you for your interest in contributing to Pulse! We welcome contributions from the community to help make privacy-first analytics better for everyone.
|
|
|
|
## Getting Started
|
|
|
|
1. **Fork the repository** on GitHub.
|
|
2. **Clone your fork** locally:
|
|
```bash
|
|
git clone https://github.com/YOUR_USERNAME/pulse.git
|
|
cd pulse
|
|
```
|
|
3. **Install dependencies**:
|
|
```bash
|
|
npm install
|
|
```
|
|
4. **Set up environment variables**:
|
|
Copy `.env.example` (if available) or create `.env.local` with the following:
|
|
```env
|
|
NEXT_PUBLIC_API_URL=http://localhost:8082
|
|
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
|
|
NEXT_PUBLIC_AUTH_API_URL=http://localhost:8081
|
|
NEXT_PUBLIC_APP_URL=http://localhost:3003
|
|
```
|
|
5. **Run the development server**:
|
|
```bash
|
|
npm run dev
|
|
```
|
|
|
|
## Development Workflow
|
|
|
|
1. Create a new branch for your feature or fix:
|
|
```bash
|
|
git checkout -b feature/my-new-feature
|
|
```
|
|
2. Make your changes.
|
|
3. **Lint and Type Check**:
|
|
Before committing, ensure your code passes our quality checks:
|
|
```bash
|
|
npm run lint
|
|
npm run type-check
|
|
```
|
|
4. Commit your changes with a descriptive message.
|
|
5. Push to your fork and submit a **Pull Request**.
|
|
|
|
## Code Style
|
|
|
|
- We use **Next.js** with **TypeScript**.
|
|
- Styling is done with **Tailwind CSS**.
|
|
- Please follow the existing code style and conventions found in the project.
|
|
- Ensure all new components are responsive and support dark mode.
|
|
|
|
## Pull Request Guidelines
|
|
|
|
- Provide a clear description of what your PR does.
|
|
- Link to any relevant issues.
|
|
- Ensure all checks pass (linting, type checking).
|
|
- If you are adding a new feature, please include screenshots or a video if applicable.
|
|
|
|
## License
|
|
|
|
By contributing to Pulse, you agree that your contributions will be licensed under the [AGPL-3.0 License](LICENSE).
|