Skip to content

Commit 8ac6c22

Browse files
committed
chore: added contribute, license and security files
1 parent 3b0b902 commit 8ac6c22

3 files changed

Lines changed: 127 additions & 0 deletions

File tree

CONTRIBUTING.md

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Contributing to Helix
2+
3+
Thanks for your interest in contributing to Helix! This guide will help you get started.
4+
5+
## Getting Started
6+
7+
1. **Fork** the repository and clone your fork
8+
2. **Install dependencies:**
9+
```bash
10+
bun install
11+
```
12+
3. **Set up environment variables:** Copy `.env.example` to `.env` and fill in the required values (see `lib/env.ts` for the full list)
13+
4. **Set up the database:**
14+
```bash
15+
npm run db:generate
16+
npm run db:migrate
17+
```
18+
5. **Start the dev server:**
19+
```bash
20+
npm run dev
21+
```
22+
23+
## Development Workflow
24+
25+
1. Create a new branch from `main`:
26+
```bash
27+
git checkout -b feat/your-feature
28+
```
29+
2. Make your changes
30+
3. Run linting and formatting:
31+
```bash
32+
npm run lint
33+
npm run format
34+
```
35+
4. Ensure the project builds:
36+
```bash
37+
npm run build
38+
```
39+
5. Commit your changes and open a pull request
40+
41+
## Code Style
42+
43+
- **Formatting/Linting:** Biome handles all formatting and linting. Run `npm run lint` before committing.
44+
- **Imports:** Use the `@/` path alias. Use `import type` for type-only imports.
45+
- **TypeScript:** Strict mode is enabled. Avoid `any`; prefer `unknown` with type guards.
46+
- **Components:** Use named exports, PascalCase for component names, and `"use client"` only when needed.
47+
- **CSS:** Use Tailwind utility classes. Merge classNames with `cn()` from `@/lib/utils`.
48+
49+
See `CLAUDE.md` for the full code style guidelines and architecture overview.
50+
51+
## Pull Requests
52+
53+
- Keep PRs focused — one feature or fix per PR
54+
- Write a clear title and description explaining what changed and why
55+
- Ensure `npm run build` passes before submitting
56+
- Link any related issues
57+
58+
## Reporting Bugs
59+
60+
Open an issue with:
61+
- A clear description of the bug
62+
- Steps to reproduce
63+
- Expected vs actual behavior
64+
- Browser/OS/Node version if relevant
65+
66+
## Suggesting Features
67+
68+
Open an issue describing:
69+
- The problem you're trying to solve
70+
- Your proposed solution
71+
- Any alternatives you've considered
72+
73+
## License
74+
75+
By contributing, you agree that your contributions will be licensed under the [MIT License](LICENSE).

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026 Helix
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

SECURITY.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Security Policy
2+
3+
4+
## Reporting a Vulnerability
5+
6+
If you discover a security vulnerability in Helix, please report it responsibly.
7+
8+
**Do not open a public issue.** Instead, please email the maintainers directly with:
9+
10+
- A description of the vulnerability
11+
- Steps to reproduce
12+
- Potential impact
13+
- Any suggested fixes (optional)
14+
15+
We will acknowledge your report within 48 hours and aim to provide a fix or mitigation within 7 days for critical issues.
16+
17+
## Security Considerations
18+
19+
Helix handles the following sensitive data:
20+
21+
- **Authentication:** Managed by Clerk. User sessions and credentials are never stored directly.
22+
- **API Keys:** Google AI API keys and other secrets are stored as environment variables, never committed to the repository.
23+
- **Database:** PostgreSQL via Prisma. All API routes authenticate requests through Clerk before accessing data.
24+
- **Webhooks:** Clerk webhooks are verified using Svix signatures.
25+
26+
## Best Practices for Contributors
27+
28+
- Never commit `.env` files, API keys, or credentials
29+
- Use parameterized queries (Prisma handles this by default)
30+
- Validate and sanitize all user input at API boundaries
31+
- Keep dependencies up to date

0 commit comments

Comments
 (0)