Project · Research & thesis repository platform
Folionix
Cloud-Native DevOps & Platform Engineering
Folionix is a 5-service platform where students submit theses, supervisors review them and curators publish them to a searchable archive. The application is finished; what I am working on now is everything around it, starting with containers and CI/CD.
Originally built as the BAUET Project & Thesis Archive (CSE-3110), re-engineered as a cloud-native platform.
Ongoing project · Learning in public
I have just started my DevOps journey and I am in the learning phase. Folionix is where I practise what I learn, so I will work on it from time to time and tick off the steps below one by one.
Roadmap
What I will do, step by step. No fixed dates; each step is done when I have learned it and it works.
- Step 1
Application built & frozen
Done- 5 services, 18 fictional institutions, role-based moderation
- 300+ automated tests, Playwright end-to-end smoke tests
- Tagged app-v1.1.1
- Step 2
Containers & CI/CD
Starting now- Multi-stage, non-root, multi-arch Dockerfiles + compose.yaml
- PR pipeline: lint, test, build, Trivy scan, Playwright
- Release pipeline: SBOM, cosign signing, push to GHCR, deploy PR
- Step 3
Deploy to Kubernetes
Up next- Run it on a small Kubernetes cluster and open a public demo
- Step 4
Infrastructure as code
Up next- Manage the cloud setup with Terraform
- Step 5
Monitoring & reliability
Up next- Metrics, logs and alerts, then practise breaking and fixing it
- Step 6
Going further
Up next- Security, scaling and other advanced topics, chosen when I get there
The pipeline I'm building
Press run to see what every change will go through, from pull request to a signed image deployed by ArgoCD.
Simulated run · preview
Pull request → checks → signed release → GitOps deploy.
- 1Lint & unit testsruff, eslint, pytest, vitestpr.yml
- 2Build imagesmulti-arch, multi-stage
- 3Trivy scanfail on critical CVEs
- 4Playwright smokeephemeral environment
- 5SBOMSyftrelease.yml
- 6Signcosign keyless (OIDC)
- 7Pushghcr.io/folionix/*
- 8Deploy PRbump tag in folionix/platform
- 9ArgoCD syncGitOps rollout to the cluster
What runs inside
The finished application: five services, each chosen to create a different kind of operations problem.
frontend
React · Vite · TypeScript
Static SPA served by nginx / CDN
core-api
Django 5.2 · DRF
Auth, submissions, moderation, presigned uploads, live progress (SSE)
worker
Celery 5
PDF pipeline: validate, thumbnail, extract text, summarise
search-svc
FastAPI · Meilisearch
Indexes approved work only; stateful workload
ai-svc
FastAPI · Ollama
Summaries from a small local model; can scale to zero
backing services
One thesis upload, end to end
- Browser
- core-api
- Object storage
- worker
- ai-svc
- Curator approves
- search-svc
Tools I'm learning through it
Only the first group is in use so far; the rest come with later steps.
Learning now (Step 2)
Later steps
Who builds what
Application
folionix/app
React, Django and FastAPI services built with AI assistance and reviewed by me. Frozen at v1.1.1.
Platform
folionix/platform
Dockerfiles, CI/CD and, step by step, the infrastructure around it, written by me as I learn.
Both repositories are private for now and will be made public as the work progresses.