-
Notifications
You must be signed in to change notification settings - Fork 1
docs: add repository guidelines and documentation #31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
kumawatkaran523
merged 6 commits into
AOSSIE-Org:main
from
Atharva0506:docs/add-maintainers
Aug 12, 2026
Merged
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
fad45e6
docs: add MAINTAINERS.md
Atharva0506 4038627
docs: add repository guidelines and documentation
Atharva0506 e7ce7c1
chore: update best practices score [skip ci]
github-actions[bot] 5312ebb
docs: address CodeRabbit review feedback
Atharva0506 82fa33c
chore: update best practices score [skip ci]
github-actions[bot] 236e363
fix: correct spelling of Karan's name in MAINTAINERS.md
Atharva0506 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,38 @@ | ||
| # AGENTS.md | ||
|
|
||
| Instructions for AI coding agents working in this repository. | ||
|
|
||
| ## Project Overview | ||
|
|
||
| ThruBox Client is a zero-runtime-dependency TypeScript SDK for the [ThruBox Server](https://github.com/AOSSIE-Org/ThruBox-Server), a self-hostable encrypted message relay. The SDK sends, receives, and manages encrypted messages over the relay's REST API. Works in Node.js 18+ and modern browsers. | ||
|
|
||
| ## Repository Layout | ||
|
|
||
| - `src/` — SDK source (TypeScript) | ||
| - `tests/` — Vitest test suite | ||
| - `public/` — logo assets referenced by README | ||
| - `brand/` — logo, favicons, and brand guidelines (see `brand/Brand.md`) | ||
|
|
||
| ## Build, Test & Lint | ||
|
|
||
| ```bash | ||
| npm install | ||
| npm run build # tsup — builds ESM + CJS with type declarations | ||
| npm test # vitest run | ||
| npm run test:watch # vitest watch mode | ||
| npm run coverage # vitest run --coverage | ||
| npm run lint # eslint src/ tests/ | ||
| npm run format # prettier --write | ||
| npm run format:check # prettier --check | ||
| ``` | ||
|
|
||
| ## Hard Constraints | ||
|
|
||
| - **Zero runtime dependencies.** Only `devDependencies` may be added for build/test tooling — never add a runtime dependency without discussing it in an issue first. This is enforced by `.coderabbit.yaml` review rules. | ||
| - The package must keep shipping both ESM and CJS builds with TypeScript declarations (via `tsup`) — don't introduce APIs that only work in one module format. | ||
| - Use the native `fetch` API rather than an HTTP client library, to stay dependency-free and work in both Node and browsers. | ||
|
|
||
| ## Conventions | ||
|
|
||
| - New functionality needs tests in `tests/` using Vitest. | ||
| - Errors are typed (specific error classes for rate limiting, payload size, not found, etc.) — follow this pattern for new failure modes rather than throwing generic `Error`. |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,25 @@ | ||
| # Maintainers, Mentors and Ideators | ||
|
|
||
| This document lists the individuals fulfilling the key roles of [Maintainer](https://github.com/AOSSIE-Org/Info/blob/main/Roles/Maintainer.md), [Mentor](https://github.com/AOSSIE-Org/Info/blob/main/Roles/Mentors.md) and [Ideator](https://github.com/AOSSIE-Org/Info/blob/main/Roles/Ideator.md) for this repository, in accordance with [AOSSIE's Role Definitions](https://github.com/AOSSIE-Org/Info/tree/main/Roles). | ||
|
Atharva0506 marked this conversation as resolved.
|
||
|
|
||
| --- | ||
|
|
||
| > **Note:** If multiple contributors are fulfilling a role in a single repository, please include and fill out the extra columns to clarify responsibilities (e.g., `Project / Feature Idea`, `Area / Focus`, and `Proposal / Discussion Link` for Ideators; `Area / Focus` for Mentors and Maintainers). If there is only one person for a role, do not add these columns. | ||
|
|
||
| ## Mentors | ||
|
|
||
| | Name | GitHub Username | Discord Username | | ||
| | ----- | ---------------- | ------------------ | | ||
| | Bruno | @Zahnentferner | @b.wp | | ||
|
|
||
| ## Maintainers | ||
|
|
||
| | Name | GitHub Username | Discord Username | Area / Focus | | ||
| | ------- | ------------------- | ------------------ | ----------------------------------- | | ||
| | Atharva | @Atharva0506 | @atharva0506 | Repository Maintenance & Merging | | ||
| | Karan | @kumawatkaran523 | @karankk9616 | Repository Maintenance & Merging | | ||
| | Aditya | @adityabhattad2021 | @adityabhattad | Repository Maintenance & Merging | | ||
|
Atharva0506 marked this conversation as resolved.
|
||
|
|
||
| ## Ideators | ||
|
|
||
| _No Ideators are currently assigned to this repository._ | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,43 @@ | ||
| # ThruBox Brand Kit | ||
|
|
||
| This folder is the canonical source for ThruBox's visual identity: logos, favicons/icons, and color palette. All assets referenced below live in this `brand/` folder. | ||
|
|
||
| ## Logo | ||
|
|
||
| | Asset | File | | ||
| | --- | --- | | ||
| | ThruBox logo (SVG, with wordmark) | [`thrubox-logo.svg`](./thrubox-logo.svg) | | ||
| | AOSSIE org logo (SVG) | [`aossie-logo.svg`](./aossie-logo.svg) | | ||
|
|
||
| The ThruBox mark is a Menger-sponge-style cube made of green tessellated tiles wrapped around a padlock, representing an encrypted "box" relaying data between clients. | ||
|
|
||
| ## Favicons & Icons | ||
|
|
||
| Generated from `thrubox-logo.svg` at the standard sizes used across browsers, bookmarks, and mobile home screens: | ||
|
|
||
| | File | Size | Use | | ||
| | --- | --- | --- | | ||
| | [`favicon.ico`](./favicon.ico) | 16/32/48 (multi-res) | Classic browser favicon | | ||
| | [`favicon-16x16.png`](./favicon-16x16.png) | 16×16 | Browser tab | | ||
| | [`favicon-32x32.png`](./favicon-32x32.png) | 32×32 | Browser tab (HiDPI) | | ||
| | [`favicon-48x48.png`](./favicon-48x48.png) | 48×48 | Windows taskbar | | ||
| | [`apple-touch-icon.png`](./apple-touch-icon.png) | 180×180 | iOS home screen | | ||
| | [`icon-512.png`](./icon-512.png) | 512×512 | PWA manifest / app icon | | ||
|
|
||
| This package has no bundled web app (it's a Node.js/browser SDK library), so these assets aren't wired into an `index.html` — they're provided as the canonical brand exports for use in demo apps, npm listing pages, or documentation sites that consume this SDK. | ||
|
|
||
| ## Color Palette | ||
|
|
||
| Sourced directly from `thrubox-logo.svg`: | ||
|
|
||
| | Swatch | Name | Hex | Usage in logo | | ||
| | --- | --- | --- | --- | | ||
| | 🟩 | ThruBox Green (light) | `#3eb03e` | Sponge tile — top face | | ||
| | 🟩 | ThruBox Green (mid) | `#228B22` | Sponge tile — front face, wordmark | | ||
| | 🟩 | ThruBox Green (dark) | `#145A14` | Sponge tile — side face | | ||
| | ⬛ | Outline | `#0f420f` | Tile stroke | | ||
| | 🟨 | Lock Gold | `#FFC517` | Padlock accent, sourced from `thrubox-logo.svg` | | ||
|
|
||
| ## Typography | ||
|
|
||
| This is a non-UI project (TypeScript SDK library) — there is no application typography to document. The wordmark in `thrubox-logo.svg` uses `'Arial Black', system-ui, sans-serif` at weight 900 as a logotype only. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.