https://github.com/falese/seans-mfe-tool

why not make my own?

https://github.com/falese/seans-mfe-tool

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.6%) to scientific vocabulary
Last synced: 5 months ago · JSON representation

Repository

why not make my own?

Basic Info
  • Host: GitHub
  • Owner: falese
  • License: mit
  • Language: JavaScript
  • Default Branch: main
  • Size: 553 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed 10 months ago
Metadata Files
Readme License

README.md

MFE Development Tool

A CLI tool for creating and managing Micro-Frontend applications using Module Federation.

Commands

Create Shell Application

bash mfe shell <name> [options]

Options:

  • -p, --port <port>: Port number (default: 3000)
  • -r, --remotes <remotes>: Remote MFEs configuration as JSON string

Create Remote MFE

bash mfe remote <name> [options]

Options:

  • -p, --port <port>: Port number (default: 3001)
  • -m, --mui-version <version>: Material UI version (default: 5.15.0)

Create API

bash mfe api <name> [options]

Options:

  • -p, --port <port>: Port number (default: 3001)
  • -s, --spec <path>: OpenAPI specification file path or URL
  • -d, --database <type>: Database type (mongodb or sqlite, default: sqlite)

Database Features:

  • MongoDB
    • Schema versioning system
    • Automatic schema updates
    • Example data seeding
    • Rollback support
  • SQLite
    • Migration management
    • Automatic table creation
    • Example data seeding
    • Transaction support

Example:

```bash

Create API with MongoDB

mfe api my-store-api --spec store.yaml --database mongodb

Create API with SQLite

mfe api inventory-api --spec inventory.yaml --database sqlite ```

Initialize Workspace

bash mfe init <name> [options]

Options:

  • -p, --package-manager <manager>: Package manager (npm, yarn, or pnpm)

Features

Module Federation

  • Shell (container) application creation
  • Remote MFE development
  • Automatic configuration
  • Runtime dependency sharing

API Generation

  • OpenAPI specification support
  • Multiple database options
  • Automatic CRUD operations
  • Data validation
  • Error handling
  • Middleware support
  • Documentation generation

Database Management

  • Schema version control
  • Automatic migrations
  • Data seeding
  • Rollback support
  • Type-safe models
  • Relationship handling

Development Tools

  • Hot module replacement
  • TypeScript support
  • ESLint configuration
  • Jest testing setup
  • Docker deployment
  • Environment management

Recent Updates

  • Enhanced database support with MongoDB schema versioning and SQLite migrations
  • Added automatic example data generation from OpenAPI specs
  • Integrated rspack for improved build performance
  • Added MUI version configuration for remote MFEs
  • Improved API generation with validation and error handling
  • Added database rollback and migration support

Project Structure

The project follows a modular architecture with clear separation of concerns:

. ├── bin/ # CLI entry point ├── src/ │ ├── commands/ # Command implementations │ ├── templates/ # Project templates │ │ ├── api/ # API templates │ │ ├── docker/ # Docker configurations │ │ └── react/ # React templates │ └── utils/ # Utility modules │ ├── ControllerGenerator/ │ ├── DatabaseGenerator/ │ ├── RouteGenerator/ │ └── generators/ └── docs/ # Documentation

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Owner

  • Name: Sean Falese
  • Login: falese
  • Kind: user

GitHub Events

Total
  • Delete event: 5
  • Issue comment event: 1
  • Push event: 42
  • Pull request event: 28
  • Create event: 8
Last Year
  • Delete event: 5
  • Issue comment event: 1
  • Push event: 42
  • Pull request event: 28
  • Create event: 8

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 0
  • Total pull requests: 11
  • Average time to close issues: N/A
  • Average time to close pull requests: 8 days
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.09
  • Merged pull requests: 10
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 11
  • Average time to close issues: N/A
  • Average time to close pull requests: 8 days
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.09
  • Merged pull requests: 10
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • falese (14)
Top Labels
Issue Labels
Pull Request Labels