veridian. is a corpus-grounded research cognition engine.
Its purpose is not to replace scholarship, automate expertise, or compress mastery into hours.
Its purpose is to reduce analysis paralysis and provide structured epistemic reflection when entering a research domain.
Modern research fields are dense, fragmented, and rapidly expanding.
When entering a topic, researchers often face:
- Hundreds or thousands of papers
- Unclear conceptual hierarchies
- Competing interpretations
- No obvious starting point
- Hidden foundational assumptions
veridian. aims to:
- Map the intellectual terrain of a research topic
- Identify dominant, emerging, and minority interpretations
- Surface structural relationships between papers
- Provide reflective feedback on articulated understanding
- Encourage epistemic humility and proportional reasoning
It is not a learning shortcut.
It is an orientation and reflection system.
veridian. is built on five principles:
-
Corpus-Bounded Claims All reflection is grounded in retrieved literature. The system never claims universal truth — only corpus-relative structure.
-
Reflective, Not Evaluative veridian. does not grade. It surfaces omissions, alignment, and unsupported claims.
-
Intellectual Friction Is Healthy Unsupported or weakly supported claims are flagged transparently. Confidence should track evidence density.
-
Interpretive Landscape Awareness Research fields contain dominant, emerging, and minority views. These are contextualized, not flattened.
-
User Agency The user remains the final arbiter. veridian. provides structure, not authority.
- Accepts a research query.
- Retrieves abstracts from PubMed.
- Embeds and clusters the corpus.
- Generates semantic summaries of cluster themes.
- Visualizes the research terrain.
- Accepts free-form explanation from the user.
- Extracts atomic claims.
- Maps claims to corpus clusters.
- Reflects alignment and unsupported statements.
This is a structural prototype, not a finished product.
- A literature review generator
- A summary engine
- A citation counter
- A course replacement
- A grading system
- A shortcut to expertise
It is a scaffold for structured thinking.
veridian. may evolve to include:
- Citation-weighted cluster centrality
- Dominant / emerging / minority interpretation labeling
- Progressive exposure of debate structure
- Iterative articulation loops
- Transparent evidence density indicators
- Interactive research terrain exploration
The goal is not speed.
The goal is clarity.
veridian. assumes:
- Expertise is built through articulation and revision.
- Confidence should be proportional to evidence.
- Scientific discourse is landscape-based, not binary.
- Reflection strengthens scholarship.
Early prototype.
Core pipeline implemented:
- Retrieval
- Embedding
- Clustering
- Claim extraction
- Alignment reflection
- Basic visualization
This repository represents the structural foundation.
The project now includes a webpage mode with the following flow:
- Enter a research search term.
- Add your reasoning/justification for the search.
- See a loading state while Veridian retrieves, embeds, and clusters documents.
- View an embedded, interactive cluster map and grouped cluster summaries.
For a pseudo-static interactive demo (no API key, no backend), just open index.html in your browser.
Optional local static server:
cd /Users/shel/Github/veridian
python -m http.server 8000Then open:
http://127.0.0.1:8000
Install dependencies:
pip install -r requirements.txtRun:
python veridian.py --web --host 127.0.0.1 --port 8000Then open:
http://127.0.0.1:8000
- Static portfolio/demo mode does not require
OPENAI_API_KEY. - Live backend retrieval mode requires
OPENAI_API_KEYin.env(or environment). - Search results are constrained to 25-50 PubMed records per run.
- Retrieved abstracts are persisted to
corpus.json.
GitHub Pages can only host static files. Veridian needs a Python backend for PubMed + OpenAI calls.
Use a split deployment:
- Frontend (
index.html) on GitHub Pages. - Backend (
veridian.py) on a Python host (Render, Railway, Fly.io, etc.).
- Create a GitHub repo for this folder and push your code.
- Deploy backend with
OPENAI_API_KEYconfigured. - Enable GitHub Pages deployment for the frontend.
- Open your GitHub Pages URL with
apiBase=<your_backend_url>.
python veridian.py --web --host 0.0.0.0 --port $PORTSet environment variable on your host:
OPENAI_API_KEY=your_key_hereThis repository now includes an automated Pages workflow:
/.github/workflows/deploy-pages.yml
After you push to main, GitHub Actions deploys index.html automatically.
One-time GitHub setup:
- Settings → Pages
- Build and deployment → Source: GitHub Actions
If your default branch is not main, update branches: [main] in the workflow file.
Open your GitHub Pages URL with apiBase query param:
https://<your-username>.github.io/<repo>/?apiBase=https://<your-backend-domain>
The frontend stores this value and uses it for /api/search requests.
cd /Users/shel/Github/veridian
git init
git add .
git commit -m "Initial veridian deploy setup"
git branch -M main
git remote add origin https://github.com/<your-username>/<repo>.git
git push -u origin mainFor portfolio/public website use, the frontend now supports a built-in portfolio mode:
- No PubMed requests
- No OpenAI calls
- No backend dependency
- Simulated loading + demo cluster visualization
Behavior:
- Portfolio mode is enabled by default unless both
live=1andapiBaseare set. - This keeps the site pseudo-static by default on localhost and GitHub Pages.
Useful URLs:
https://<your-username>.github.io/<repo>/
(Auto portfolio mode)
https://<your-username>.github.io/<repo>/?portfolio=1
(Force portfolio mode)
https://<your-username>.github.io/<repo>/?apiBase=https://<your-backend-domain>&live=1
(Force live backend mode)