Native Shell
Native Shell은 모든 플랫폼의 앱 안에서 만들어지는 AI UI입니다
Mozg는 PostgreSQL·MySQL·SQLite·Neo4j를 하나의 GraphQL 엔드포인트로 조회하는 크로스‑데이터베이스 레이어입니다
Mozg – a cross-database query layer with a single GraphQL endpoint for PostgreSQL, MySQL, SQLite, Neo4j, ArangoDB and REST APIs.
개발 도구JavaScript · HTMLGitHub @Skitionek온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗⚠️ Work in Progress — This project is experimental and under active development. APIs, schema, and behaviour may change without notice. Not recommended for production use.
A "slow by design" cross-database query layer with a single GraphQL endpoint.
Mozg (Polish for "brain") is an experiment in thinking differently about data: instead of centralizing knowledge, it teaches systems how to connect it.
At its core, Mozg is a "slow by design" cognition layer — a single GraphQL endpoint that doesn't store knowledge, but reasons across it. Rather than building yet another database, Mozg acts as a unifying language for describing relationships between entities that already exist: rows in PostgreSQL, nodes in Neo4j, documents in ArangoDB, pathways in BioCyc, or even resources behind REST APIs.
Where most systems optimize for speed through precomputation and duplication, Mozg embraces a different trade-off: freshness and flexibility over latency. Every query is executed live, traversing connections across heterogeneous data sources at runtime. The result is not just data retrieval, but on-demand knowledge synthesis.
The single /graphql endpoint becomes a kind of neural interface:
And because not every user wants to think in GraphQL, Mozg includes a browser-based query builder — a visual way to compose complex, cross-database queries without writing a single line of code.
In essence, Mozg is less like a database and more like a brain-shaped abstraction layer: it doesn't store memories — it connects them.
/graphql queries any supported database or REST APIhasMany, hasOne, belongsTo across tables / endpoints/ with examples dropdown/graphqlingestOntology mutationnpm install
npm start # http://localhost:4000
# or
npm run dev # restarts on file changes
Click the button below to open a fully configured dev environment in your browser – no local setup required.
The Codespace will automatically:
npm installnpm run dev)The following free, public endpoints can be used directly — no sign-up required.
| Name | Driver | Host | Database | User | Password | Notes |
|---|---|---|---|---|---|---|
| RNAcentral | postgres | hh-pgsql-public.ebi.ac.uk | pfmegrnargs | reader | (public read-only — see RNAcentral docs) | ⚠️ Currently degraded: the public reader account has no USAGE on the rnacen schema, so introspection returns almost nothing and queries fail with permission denied for schema rnacen |
| RFAM | mysql | mysql-rfam-public.ebi.ac.uk | Rfam | rfamro | (empty) | RNA families |
| Neo4j Movies | neo4j | demo.neo4jlabs.com | movies | movies | (public demo — see Neo4j Labs) | Movie graph (scheme: neo4j+s) |
| JSONPlaceholder | rest | – | https://jsonplaceholder.typicode.com | – | – | Fake REST data |
| RestCountries | rest | – | https://restcountries.com/v3.1 | – | – | Country data |
| Open-Meteo | rest | – | https://api.open-meteo.com/v1 | – | – | Weather (no key) |
| PokéAPI | rest | – | https://pokeapi.co/api/v2 | – | – | Pokémon |
| Jikan | rest | – | https://api.jikan.moe/v4 | – | – | Anime (MyAnimeList) |
All entries below are freely accessible without registration unless noted.
Pass connection parameters as shown; entity names and where filters follow each catalog entry's documentation.
| Name | Driver | Catalog key | Base URL | Notes |
|---|---|---|---|---|
| NCBI E-utilities | rest | ncbi | https://eutils.ncbi.nlm.nih.gov/entrez/eutils | General access to all NCBI databases; pass db= in where |
| GenBank | rest | genbank | https://eutils.ncbi.nlm.nih.gov/entrez/eutils | Nucleotide sequences; use where: { db: "nuccore" } |
| PubMed | rest | pubmed | https://eutils.ncbi.nlm.nih.gov/entrez/eutils | Biomedical literature; use where: { db: "pubmed" } |
| RefSeq | rest | refseq | https://api.ncbi.nlm.nih.gov/datasets/v2 | Reference sequences via NCBI Datasets v2 API |
| GEO | rest | geo | https://eutils.ncbi.nlm.nih.gov/entrez/eutils | Gene expression; use where: { db: "gds" } |
| UniProt | rest | uniprot | https://rest.uniprot.org | Protein knowledgebase (Swiss-Prot + TrEMBL) |
| PDB | rest | pdb | https://data.rcsb.org/rest/v1/core | 3-D macromolecular structures |
| InterPro | rest | interpro | https://www.ebi.ac.uk/interpro/api | Protein families and domains |
| HMDB | rest | hmdb | https://hmdb.ca | Human metabolome; 200 000+ metabolites |
| STRING | rest | string-db | https://string-db.org/api/json | Protein–protein interaction networks |
| Ensembl | rest | ensembl |
Mozg can parse OWL ontologies in Turtle, RDF/XML, OWL/XML or Manchester Syntax and extract classes, object properties and data properties.
mutation {
ingestOntology(input: {
url: "https://raw.githubusercontent.com/Skitionek/Mozg/main/examples/blog.ttl"
format: turtle
}) {
tripleCount
classes { iri label subClassOf }
objectProperties { iri label domain range relationType }
dataProperties { iri label domain range }
}
}
You can also supply raw content instead of a URL:
mutation {
ingestOntology(input: {
content: "@prefix : <http://example.org/> . :Foo a owl:Class ."
format: turtle
}) {
tripleCount
classes { iri label }
}
}
{
introspect(connection: { driver: sqlite3, database: "path/to/file.db" }) {
tables {
name
columns { name type nullable isPrimaryKey }
}
}
}
{
query(input: {
connection: { driver: postgres, host: "localhost", database: "mydb", user: "alice", password: "secret" }
from: "users"
limit: 20
relations: [
{ entity: "posts", foreignKey: "user_id", type: hasMany, select: ["id", "title"] }
]
}) {
count
data
}
}
This project uses Conventional Commits.
GitHub Copilot is configured (.github/copilot-instructions.md + .vscode/settings.json) to generate compliant commit messages automatically.
| Type | Purpose |
|---|---|
feat | New feature |
fix | Bug fix |
docs | Documentation only |
refactor | Code restructure without behaviour change |
chore | Maintenance / dependency updates |
ci | CI/CD changes |
test | Tests |
perf | Performance |
build | Build system |
revert | Revert a commit |
Examples:
feat(api): add introspect query for schema discovery
fix(db): handle null foreign key in belongsTo relation
chore(deps): upgrade mysql2 to 3.9.8
https://rest.ensembl.org |
| Vertebrate genome browser |
| Reactome | rest | reactome | https://reactome.org/ContentService | Biological pathway knowledgebase |
| KEGG | kegg | kegg | https://rest.kegg.jp | Pathway/compound/reaction; academic use; pass where: { _pathSuffix: "…" } for /find, /get, /link |
| EMBL-EBI (ENA) | rest | embl-ebi | https://www.ebi.ac.uk/ena/portal/api | European Nucleotide Archive |
| FlyBase | rest | flybase | https://api.flybase.org | Drosophila genetics and genomics |
| WormBase | rest | wormbase | https://wormbase.org | C. elegans biology |
| ZFIN | rest | zfin | https://zfin.org/action/api | Zebrafish genetics and genomics |
| BRENDA | rest | brenda | https://www.brenda-enzymes.org/rest | Enzyme database; free registration required |