Open-source tools for modern developers
Open Fotros builds high-quality JavaScript libraries, npm packages, CLI tools, and developer utilities — crafted with transparency, built for the community.
type ProjectKind =
| 'library'
| 'mirror-service'
| 'devops-tool'
| 'server-utility';
export const openFotros = {
name: 'Open Fotros',
builds: ['npm packages', 'mirror services', 'devops tools'],
targets: ['Node.js', 'Ubuntu', 'Nginx', 'Docker'],
principles: ['open-source', 'typed', 'self-hosted'],
} as const;
export type FotrosProject = typeof openFotros.builds[number];
A team that ships open-source infrastructure
Open Fotros is a collective of developers, engineers, and tooling enthusiasts dedicated to improving the JavaScript ecosystem. We build the plumbing — parsers, bundlers, runtimes, and utilities — so you can focus on your product.
Transparency runs through everything we do. Roadmaps are public. Architecture decisions are documented. Governance is clear. We think open-source software works best when the process is as open as the code.
Everything ships to npm
Production-ready packages with full TypeScript support, comprehensive docs, and active maintenance.
Everything documented, nothing hidden
Self-hosted documentation for every package. API references, guides, and examples — all in one place.
Full API reference for schema creation, type inference, and custom validators.
Edge-compatible runtime primitives: streams, crypto, fetch, event emitter.
Build extensible CLIs with commands, flags, plugins, and shell auto-completion.
Zero-config ESM + CJS bundler for npm library authors with TypeScript support.
How to contribute to Open Fotros projects: PRs, issues, code style, and governance.
Install your first Fotros package, set up your dev environment, and run examples.
Build open-source tools with us
Open Fotros is always looking for passionate developers who want to contribute to the JavaScript ecosystem. Whether you write code, documentation, or tests — there's a place for you here.
Latest from the team
@fotros/schema v2.4 — Recursive Types and Performance Improvements
This release brings recursive type support, a 40% parse performance improvement for large payloads, and a new strict mode that rejects unknown keys by default.
Building a Type-Safe CLI with @fotros/cli and @fotros/schema
A step-by-step guide to building a production-grade Node.js CLI that validates its config file at startup using Fotros primitives.
How Open Fotros Manages RFC-Driven Development
We adopted an RFC process for all breaking changes six months ago. Here's what worked, what didn't, and why it has made our releases more predictable.
@fotros/bundler v1.5 — Automatic Package.json Exports Field
The bundler now automatically generates a correct exports field in your package.json, covering all module formats and TypeScript declaration files.
Open Fotros Joins the OpenJS Foundation as an At-Large Project
We're excited to announce that Open Fotros has been accepted as an at-large project in the OpenJS Foundation, strengthening our commitment to open governance.
Zero-Config Library Publishing: The @fotros/bundler Workflow
Stop fiddling with Rollup configs. This tutorial walks through the opinionated bundler workflow we use internally for every Fotros package.
Built in public, by the community
Every issue, PR, and discussion happens in the open. Our health metrics, contributor graphs, and roadmaps are all publicly visible.
mia-chen merged PR #284 into @fotros/schema main
2h agorafael-dev starred @fotros/cli — now at 834 stars
4h agoNew discussion: 'Async validators in @fotros/schema'
6h ago@fotros/bundler v1.5.0 published to npm
1d agopriya-k opened issue #112: 'ESM interop edge case'
2d ago
Star our repos, watch releases, open issues, and send PRs.