How ibrahimomeer/sourcly works
Sourcly is a browser-only scholarly search and research workflow. A user query is interpreted as concepts, sent to selected scholarly sources, then merged, ranked, filtered and displayed with explanations; users can also look up a work, explore counterarguments, save references and export a search protocol. The graph combines sampled implementation evidence with README-documented capabilities; unsampled feature internals are represented by their existing source paths, and unsupported call details are omitted.
Main entry points: App.tsx App shell · useSearch.ts Search orchestration · providers.ts Provider dispatch · pipeline.ts Merge and ranking
Components 21
Web experience
- App shell
apps/web/src/App.tsx - Search interface
apps/web/src/SearchBox.tsx - Results display
apps/web/src/Results.tsx - Search settings
apps/web/src/SettingsPanel.tsx
Search and ranking
- Query preparation
apps/web/src/queryText.ts - Search orchestration
apps/web/src/useSearch.ts - Search state
apps/web/src/searchState.ts - Provider dispatch
apps/web/src/providers.ts - Concept modeling
packages/core/src/concepts.ts - Source query rendering
packages/core/src/conceptquery.ts - Search engine
packages/core/src/search.ts - Merge and ranking
apps/web/src/pipeline.ts
Research tools
- Work lookup
apps/web/src/useLookup.ts - Counterarguments
packages/core/src/counter.ts - Saved references
packages/core/src/saved.ts - APA citations
packages/core/src/apa.ts - Protocol export
apps/web/src/protocolRecord.ts
External sources
- Source adapters
packages/core/src/providers - Scholarly databases
- Unpaywall
Other components
- Researcher
Connections 22
- Researcher → Search interface: enters query
- Search interface → App shell: submits search
apps/web/src/App.tsx - App shell → Query preparation: prepares query
apps/web/src/App.tsx - Query preparation → Concept modeling: parses concepts
apps/web/src/queryText.ts - Concept modeling → Source query rendering: renders source queries
packages/core/src/conceptquery.ts - App shell → Search orchestration: starts search
apps/web/src/App.tsx - Search orchestration → Provider dispatch: dispatches sources
apps/web/src/useSearch.ts - Provider dispatch → Scholarly databases: queries sources
- Source adapters → Scholarly databases: fetches metadata
packages/core/src/providers/shared.ts - Provider dispatch → Source adapters: uses adapters
- Search orchestration → Search state: records updates
apps/web/src/searchState.ts - App shell → Merge and ranking: ranks results
apps/web/src/App.tsx - Merge and ranking → Results display: provides ranked results
- Merge and ranking → Search engine: uses search logic
apps/web/src/pipeline.ts - Researcher → Work lookup: requests work
- App shell → Work lookup: routes identifier lookup
apps/web/src/App.tsx - Researcher → Counterarguments: starts counter-search
- Researcher → Saved references: saves works
- Saved references → APA citations: formats references
packages/core/src/index.ts - Researcher → Protocol export: exports protocol
- Researcher → Search settings: configures search
- Work lookup → Unpaywall: checks PDF links