Wiki › Project

research-os

Article
From Chaipat's knowledge graph

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