Skip to content

Commit ceda416

Browse files
committed
docs: expand root README (env vars, PWA, InfraLens docs, e2e coverage)
- document the real env vars (RESEND_API_KEY, CONTACT_EMAIL, Upstash) with their graceful fallbacks, previously undocumented - add api-studio to the Project Structure tree, missed since v1.5.0/v1.6.0 - correct pnpm e2e's description — it covers everything except InfraLens, not just "portfolio routes" - fix wording that implied every /tools tool is open-source, when only InfraLens carries a license - link docs/infralens's CONTRIBUTING and SECURITY, previously unlinked - mention the installable PWA (manifest + service worker)
1 parent 1f1ccc4 commit ceda416

1 file changed

Lines changed: 29 additions & 6 deletions

File tree

README.md

Lines changed: 29 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ The homepage is an interactive world map: each zone is a real, accessible
1313
route (Projects, Tools, Articles, About, Lab), not just a visual gimmick.
1414
Beyond the map, the site is a standard content/portfolio app — project case
1515
studies, a blog, a contact form, and a growing space for developer tools
16-
built and open-sourced under the Randy Code brand.
16+
built under the Randy Code brand.
1717

1818
## Highlights
1919

@@ -24,8 +24,12 @@ built and open-sourced under the Randy Code brand.
2424
write-ups sourced from the real product, not marketing copy.
2525
- **Articles** (`/articles`) — technical write-ups grounded in what was
2626
actually built (e.g. securing a URL analyzer against SSRF), with an RSS feed.
27-
- **Developer tools** (`/tools`) — open-source tools built by Randy Code,
28-
usable directly from the site.
27+
- **Developer tools** (`/tools`) — five focused tools built by Randy Code
28+
and usable directly from the site (InfraLens, API Studio, Cron Builder,
29+
JSON Studio, MetaLens); InfraLens is the one released under an
30+
open-source license.
31+
- **PWA** — installable from the browser, with a web app manifest and a
32+
cache-first service worker (`public/sw.js`) for offline resilience.
2933

3034
## Developer Tools — InfraLens
3135

@@ -35,8 +39,12 @@ public technical signals, summarized into one scored, readable report.
3539

3640
It's the first tool integrated natively into Randy Code (migrated from its
3741
own standalone repository into `app/tools/infralens/` and `src/infralens/`).
38-
Its original documentation, changelog, and MIT license are preserved under
39-
[`docs/infralens/`](docs/infralens/README.md).
42+
Its original docs are preserved under `docs/infralens/`:
43+
[README](docs/infralens/README.md),
44+
[CHANGELOG](docs/infralens/CHANGELOG.md),
45+
[CONTRIBUTING](docs/infralens/CONTRIBUTING.md),
46+
[SECURITY](docs/infralens/SECURITY.md), and
47+
[LICENSE](docs/infralens/LICENSE).
4048

4149
## Tech Stack
4250

@@ -63,9 +71,11 @@ app/
6371
projects/ # Project case studies (listing + [slug])
6472
tools/ # Developer tools
6573
infralens/ # InfraLens — native routes (analyze, compare, docs, privacy)
74+
api-studio/ # API Studio — HTTP request client + webhook inspector
6675
cron-builder/ # Cron Builder — visual cron expression editor
6776
json-studio/ # JSON Studio — format, validate and explore JSON
6877
metalens/ # MetaLens — inspect page metadata, OG/Twitter cards, indexing signals
78+
api/api-studio/ # Route Handlers — outbound proxy + webhook ingestion
6979
rss.xml/ # RSS feed
7080
sitemap.ts, robots.ts, manifest.ts, opengraph-image.tsx
7181
@@ -74,6 +84,7 @@ src/
7484
components/ # Shared UI (map, layout, shadcn/ui primitives)
7585
lib/ # Content registries, brand tokens, navigation, JSON-LD
7686
infralens/ # InfraLens engine — checks, security/SSRF, DNS, scoring, history
87+
api-studio/ # API Studio engine — request execution, codegen, history, webhooks
7788
cron-builder/ # Cron Builder engine — parsing, validation, next-run calculation
7889
json-studio/ # JSON Studio engine — parsing, formatting, stats, storage
7990
metalens/ # MetaLens engine — HTML parsing, URL resolution, findings
@@ -93,6 +104,18 @@ pnpm dev
93104

94105
Open [http://localhost:3000](http://localhost:3000).
95106

107+
### Environment Variables
108+
109+
None are required just to browse the site locally — everything below has a
110+
graceful fallback. Set them in `.env.local` to exercise the real behavior:
111+
112+
- `RESEND_API_KEY` — sends real email from the contact form; without it,
113+
submissions fail.
114+
- `CONTACT_EMAIL` — destination address for contact form submissions.
115+
- `UPSTASH_REDIS_REST_URL`, `UPSTASH_REDIS_REST_TOKEN` — enable real rate
116+
limiting (InfraLens, MetaLens, contact form, API Studio); without them,
117+
the shared limiter (`src/lib/rate-limit/`) runs allow-all.
118+
96119
## Quality Checks
97120

98121
```bash
@@ -102,7 +125,7 @@ pnpm test # Vitest
102125
pnpm build # Production build
103126
pnpm check # lint + typecheck + test + build — the required local/CI gate
104127

105-
pnpm e2e # Playwright — portfolio routes
128+
pnpm e2e # Playwright — everything except InfraLens (portfolio + API Studio, Cron Builder, JSON Studio, MetaLens)
106129
pnpm e2e:infralens # Playwright — InfraLens (rate-limited, single worker)
107130
```
108131

0 commit comments

Comments
 (0)