A micro-frontend platform that allows teams to focus on creating experiences for the front end utilizing shared utilities and governance controls provided by a single platform team. 1fe achieves this by standardizing the development, deployment and execution of frontend experiences.
Visit our documentation site for comprehensive guides and API references.
- Node.js
>= 22
(required) - Yarn (package manager)
- Git with SSH access to submodules
# Clone the repository
git clone https://github.com/docusign/1fe.git
cd 1fe
# Install dependencies
yarn install
# Build all packages
yarn build
This monorepo contains the core packages that power the 1fe ecosystem:
@1fe/server
- Express server that serves as the backbone of a 1fe instance, handling dynamic configuration and widget loading@1fe/shell
- Application shell providing common UI components, layout, and platform utilities (the "sandbox") to widgets@1fe/cli
- Command-line tools for building, developing, and validating widgets with standardized configurations@1fe/create-1fe-app
- Scaffolding tool for quickly creating new 1fe instances
@1fe/eslint-config
- Shared ESLint configuration enforced across all widgets@1fe/typescript-config
- Shared TypeScript configurations for consistent builds
# Build all packages
yarn build
# Build packages in watch mode
yarn dev
# Clean all build artifacts
yarn clean
# Run unit tests across all packages
yarn test
# Run E2E tests (Playwright)
yarn test:playwright
# Type checking
yarn typecheck
This project uses Git submodules. Make sure they're initialized:
git submodule update --init --recursive
Each package in this monorepo can be developed independently:
# Work on a specific package
cd packages/1fe-server
yarn dev
# Test a specific package
cd packages/1fe-cli
yarn test
We welcome contributions!
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
- All PRs trigger automated CI/CD pipeline
- Tests must pass: Build ✅ Lint ✅ Unit Tests ✅ E2E Tests ✅
- Code review required before merging
- Publishing happens automatically on merge to
main
- Documentation - Comprehensive guides and references
- GitHub Issues - Bug reports and feature requests
- GitHub Discussions - Community questions and ideas
This project is licensed under the MIT License - see the LICENSE file for details.
Ready to get started? Check out our Installation Guide or explore the demo site to see 1fe in action!
If you have questions or want to discuss this project, please visit the Issues or Discussions pages in our monorepo.