Skip to content

Commit 192f86e

Browse files
committed
docs: refresh README and bump backend to v0.1.0
Update README with project overview, API usage, and security notes. Bump backend package version to 0.1.0 to mark the initial release.
1 parent 8c2ff5a commit 192f86e

File tree

3 files changed

+103
-14
lines changed

3 files changed

+103
-14
lines changed

README.md

Lines changed: 100 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,107 @@
11
# PermLens
22

3-
PermLens provides human-readable visibility into GitHub App permissions and data access using publicly available metadata.
3+
Permission transparency and privacy labeling for GitHub Apps.
44

5-
## What PermLens Does
6-
- Explains GitHub App permissions in plain language
7-
- Groups permissions into clear data access categories
8-
- Generates privacy-label-style summaries
95

10-
## What PermLens Does Not Do
11-
- Inspect application behavior or source code
12-
- Scan repositories or workflows
6+
## What is PermLens?
7+
8+
PermLens provides human-readable visibility into **GitHub App permissions** and the types of data an app may access, using **publicly available metadata**.
9+
10+
It generates a structured, privacy-label-style summary based on an app’s declared permissions, helping developers and reviewers better understand permission scope at a glance.
11+
12+
PermLens is an **informational transparency tool**, not a security scanner.
13+
14+
15+
## What PermLens does
16+
17+
- Fetches declared GitHub App permissions via the GitHub API
18+
- Explains permissions in clear, plain language
19+
- Groups permissions into predefined data access categories
20+
- Generates a structured privacy label with sensitivity levels
21+
22+
The output is designed to be predictable, auditable, and safe to consume programmatically.
23+
24+
25+
## What PermLens does NOT do
26+
27+
PermLens does **not**:
28+
29+
- Inspect application source code or runtime behavior
30+
- Scan repositories, workflows, or network activity
31+
- Access private repositories or user data
32+
- Act on behalf of users or organizations
1333
- Guarantee security, safety, or compliance
1434

15-
PermLens is an informational tool designed to improve transparency, not to audit or enforce policies.
35+
PermLens reflects **what an app declares**, not what it actually does at runtime.
36+
37+
38+
## How it works
39+
40+
1. Authenticates as a GitHub App using JWT
41+
2. Fetches the app’s declared permissions from the GitHub API
42+
3. Maps permissions to predefined data access categories
43+
4. Generates a privacy label with category details and sensitivity level
44+
45+
Only public GitHub App metadata is used.
46+
47+
48+
## API
49+
50+
### Get privacy label for a GitHub App
51+
52+
```http
53+
GET /api/app/:slug/label
54+
```
55+
56+
Example response:
57+
58+
```json
59+
{
60+
"data_categories": [
61+
{
62+
"key": "repository_metadata",
63+
"label": "Repository metadata",
64+
"sensitivity": "low",
65+
"description": "Basic information about repositories without access to file contents."
66+
}
67+
],
68+
"overall_sensitivity": "low",
69+
"permissions": [
70+
{
71+
"name": "metadata",
72+
"access": "read"
73+
}
74+
],
75+
"notes": [
76+
"Derived from declared GitHub App permissions.",
77+
"Based on public metadata only; no runtime inspection."
78+
]
79+
}
80+
```
81+
82+
83+
## Project status
84+
85+
PermLens is in **early development**.
86+
87+
Version **v0.1.0** provides:
88+
89+
- A stable backend API
90+
- GitHub App authentication
91+
- Core privacy label generation logic
92+
93+
APIs and schemas may evolve as the project matures.
94+
A frontend interface is planned for a future release.
95+
96+
97+
## Security and privacy
98+
99+
- Uses GitHub App authentication (JWT-based)
100+
- Requests minimal, read-only access
101+
- Uses public GitHub metadata only
102+
- Does not store user, repository, or organization data
103+
104+
105+
## License
16106

17-
## Status
18-
PermLens is under active development. APIs and schemas may change prior to v1.
107+
Released under the terms of [Apache License 2.0](LICENSE).

backend/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

backend/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "permlens-backend",
3-
"version": "0.0.0",
3+
"version": "0.1.0",
44
"description": "Backend service for PermLens privacy label generation",
55
"keywords": [
66
"github",

0 commit comments

Comments
 (0)