research-os
Project · app · 2026
Research OS is a self-hosted platform, in development, for managing research documents and heavy files. It is meant as a central hub for storing, categorising and moving PDFs, LaTeX sources, datasets and model weights between his own machines and remote servers.
Architecture
- A Flask API in Python, with Flask-Security for accounts and JSON Web Tokens for API access.
- PostgreSQL through SQLAlchemy, with Alembic migrations.
- Large files stored on local disk or any S3-compatible object store, through boto3.
- Separate route modules for:
- authentication and documents;
- tags;
- chunked uploads, for large files;
- transfers between machines;
- a pluggable language-model service, with OpenAI or Gemini as the provider.
- Docker Compose runs the API and database together.
Process
The repository follows a written software-engineering process. Planning, requirements, architecture, database schema, API contract and tech-stack documents come before the code, in both English and Thai. A task tracker walks through the phases from planning to maintenance. Most of its boxes are still unticked, so treat it as a project in progress.
See also
- Research tooling
- KiWiS, which explains the research that these files hold
In the knowledge graph
research-os and the 14 things it is linked to. Open any dot for its page, or explore it in the full graph.
As data
Everything on this page is read from triples in the knowledge graph. These are the 25 it states about research-os, and 3 more its ontology implies; the console runs SPARQL over the whole graph, here in your browser.
@prefix id: <https://ask.chaipat.cc/id/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix cj: <https://ask.chaipat.cc/ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . id:ResearchOS a cj:Project ; rdfs:label "research-os" ; cj:context id:ChaipatCC ; cj:description "Research OS: a self-hosted platform for managing research documents and heavy files (PDF, LaTeX, datasets, model weights) and moving them between machines." ; cj:repository "https://github.com/AppleBoiy/researchos"^^xsd:anyURI ; cj:firstCommit "2026-03-16"^^xsd:date ; cj:lastCommit "2026-03-16"^^xsd:date ; cj:commitCount 3 ; cj:kind "app" ; cj:theme id:ThemeResearchTools , id:ThemeDevOps ; cj:uses id:Python , id:Docker , id:PostgreSQL , id:SQLAlchemy , id:Alembic , id:Boto3 , id:Flask ; cj:tier 2 ; cj:integrates id:OpenAI ; cj:handles id:PDFFormat ; cj:mentions id:KIWIS ; cj:article "https://ask.chaipat.cc/wiki/ResearchOS"^^xsd:anyURI ; cj:activeIn id:Y2026 ; cj:activity _:b141 .