Starwild is a web application designed to help users organize and explore their thoughts, questions, and ideas. It allows you to drop unstructured thoughts, promote them into structured questions, and build context with claims, evidence, and triggers. Visualize connections between questions to uncover emerging patterns.
Built with React for the frontend and deployed as a Cloudflare Worker for the backend API.
- Thought Capture: Quickly jot down ideas without structure.
- Question Organization: Promote thoughts into questions and add supporting elements.
- Visualization: Explore relationships between questions graphically.
- Wandering Planet Recovery: Rescue orphaned thoughts and link them back.
- PWA Support: Installable as a progressive web app.
- Open the app and use
Just writeto drop a thought without worrying about structure. - Create a new Question by tagging or promoting a thought when the theme becomes clear.
- Add supporting notes as Claims, Evidence, or Triggers to build context over time.
- Use
Visualizeto explore related questions and spot emerging clusters. - Visit
Wandering Planetto rescue orphaned fragments and link them to a question.
- Cast / Send (Write page):
Ctrl+Enter(Windows/Linux) orCmd+Enter(macOS) — submit draft. - New draft:
N - Save / Cast (alternate):
Ctrl+EnterorCmd+Enter - Cancel / Close:
Esc - Menu navigation:
↑/↓/Home/End - Wandering Planet quick view:
A - Wandering sort:
S
For the full list of shortcuts open the Shortcuts modal inside the app. For product details see Product Design and Visualization Proposal.
- Node.js (version 18 or higher)
- Cloudflare Wrangler CLI (
npm install -g wrangler)
-
Clone the repository:
git clone https://github.com/mingzhangyang/cognitive-space cd cognitive-space -
Install dependencies:
npm install
-
Set the
BIGMODEL_API_KEYsecret using Wrangler:wrangler secret put BIGMODEL_API_KEY
-
Run the Worker locally:
npm run dev
-
Optional: Run UI-only dev server (no Worker API):
npm run dev:ui
-
Build the static assets:
npm run build
-
Deploy the Worker:
npm run deploy
BIGMODEL_API_KEY: Required. Your API key for the AI model.BIGMODEL_MODEL: Optional. Defaults toglm-4.7-flashx. Specify a different model if needed.VITE_BUILD_ID: Optional. Injected by build scripts for service worker cache versioning. Override to control the cache tag.
npm run build: Builds the static assets.npm run dev: Runs the Worker locally.npm run dev:ui: Runs the UI dev server.npm run ops:waf-rate-limit: Creates/updates Cloudflare WAF rate-limit rules for AI endpoints.npm run preview: Runs the Worker locally against built assets.npm run deploy: Deploys to Cloudflare.
To configure zone-level Cloudflare WAF rate limits for API abuse protection:
export CF_API_TOKEN="<cloudflare_api_token_with_zone_rulesets_edit>"
export CF_ZONE_ID="<cloudflare_zone_id>"
npm run ops:waf-rate-limitThe script upserts two http_ratelimit rules:
POST /api/analyze: 10 requests/minute/IPPOST /api/wandering-planet/analyze: 5 requests/minute/IP
Contributions are welcome! Please read the contributing guidelines (if any) before submitting a pull request.
This project is licensed under the MIT License.