Git Product home page Git Product logo

prefab's Introduction

◤◣ prefab

A tool to get prefabricated production ready code as a starter for your next adventure.

Build Status

Prerequisites

Optionally for local development

Steps to Install

If you want to use prefab as your app generator, simply install the prefab binaries. The prefab binaries have no external dependencies.

Finally, you can install the prefab source code with Go(programming language), build the binaries yourself, and run prefab that way. Building the binaries is an easy task for an experienced go getter.

Install prefab as Your Site Generator (Binary Install)

Use the installation instructions in the prefab documentation.

TBD: steps to get release binary for different plaform

Build and Install the Binaries from Source (Advanced Install)

Prerequisite Tools

Fetch from GitHub

Prefab uses the Go Modules support built into Go 1.12 to build. The easiest way is to clone prefab in a directory outside of GOPATH, as in the following example:

> mkdir $HOME/src
> cd $HOME/src
> git clone https://github.com/yantrashala/prefab.git
> cd prefab
> go run mage.go install

If you are a Windows user, substitute the $HOME environment variable above with %USERPROFILE%.

The prefab Documentation

TBD: links to documentation and tutorials Docker Overview https://www.tutorialspoint.com/docker/docker_overview.htm

Getting started for prefab Developers

> git clone https://github.com/yantrashala/prefab.git

Build and run in docker (suggested)

> cd prefab
> docker build -t ps/fab .
...
> docker run --rm -it -p9876:9876 ps/fab ./fab server

or if you have optional prereqs installed locally try

> cd prefab
> go get ./
> cd ui
> npm install
> npm run build
> cd ..
> go get -d -v
> go test ./...
> go run main.go server

or use the make file locally

> cd prefab
> make compile
> make start-server
...
...
> make stop-server

or use mage locally

> go get -d github.com/magefile/mage
> go run $GOPATH/src/github.com/magefile/mage/bootstrap.go install
> cd prefab
> mage prefab
>./bin/fab server

or use chokidar for watch and recompile locally

first install chokidar globally (assuming node & npm are already installed)

> npm install -g chokidar-cli
> cd prefab
> make compile
> make watch run="make stop-server go-get go-build start-server"
...

Contributing

To contribute to the prefab source code or documentation, you should fork the prefab GitHub project and clone it to your local machine.

  1. Fork it
  2. Download your fork to your PC (git clone https://github.com/your_username/prefab && cd prefab)
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Make changes and add them (git add .)
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin my-new-feature)
  7. Create new pull request
  8. Wait for it to get reviewed and merged

prefab's People

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

prefab's Issues

UI scaffolding requirements

MVP for UI

UI Starter Kits

  • Treat each template as repo with some naming convention?
  • Start with a template for JavaScript and TypeScript

CLI integration

  • Add choice in the CLI to pick the template

Features of the UI React app

  • Routing between 3 pages (home, listing, detail)
  • setState and Context for state management
  • Mock JSON for loading some data
  • dockerfile part for UI (RUN: npm start command)
  • Material-UI
  • Styled Components

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.