Skip to content

jihoonahn/microfeature

Repository files navigation

µFeatures Architecture

GitHub

MicroFeature Architecture Plugin available in Tuist.

Installation

In order to tell Tuist you'd like to use MicroFeature plugin in your project follow the instructions that are described in Tuist documentation.

Add the plugin to Config.swift.

import ProjectDescription

let config = Config(
    plugins: [
        .git(url: "https://github.com/jihoonahn/microfeature", tag: "vTAG")
    ]
)

Documentation

The documentation for releases and main are available here:

Using

Then import the MicroFeature from thr location you want to use.

import Microfeature

Build µFeatures Architecture with Microfeature Plugin

This plugin refers to Tuist's µFeatures Architecture.

Code

Microfeature {
    Example(name: typeName)
    Interface(name: typeName)
    Sources(name: typeName)
    Testing(name: typeName)
    UnitTests(name: typeName)
    UITests(name: typeName)
}

This way, you can easily build a target.


When used the basic Tuist

let project = Project(
    name: "ExampleProject",
    targets: Microfeature {
        Example(name: "Example")
        Interface(name: "Example")
        Sources(name: "Example")
        Testing(name: "Example")
        UnitTests(name: "Example")
        UITests(name: "Example")
    }
)

If you use it with TuistUI Plugin

let project = ExampleModule().module()

struct ExampleModule: Module {
    var body: some Module {
        Project {
            Microfeature {
                Example(name: typeName)
                Interface(name: typeName)
                Sources(name: typeName)
                Testing(name: typeName)
                UnitTests(name: typeName)
                UITests(name: typeName)
            }
        }
    }
}

You can create a more stylish module.

Templates

$ tuist scaffold $(templateName) --path $(path) --name $(name)
Template Name
  • example
  • interface
  • sources
  • testing
  • tests
  • uitests

Support later

  • commandLine
    • Until now, it has been made so that only version can be checked, but we plan to add a template function in the future.

License

microfeature is under MIT license. See the LICENSE file for more info.

About

µFeatures Architecture Tuist Plugin

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages