Git Product home page Git Product logo

rekit-app's Introduction

Build Status Coverage Status Gitter Demo MIT licensed Code Quality: Javascript Total Alerts

An all-in-one solution for creating modern React apps

Rekit is a toolkit for building scalable web applications with React, Redux and React-router. It helps you focus on business logic rather than dealing with massive libraries, patterns, configurations etc.

Rekit creates apps bootstrapped by create-react-app and uses an opinionated way to organize folder and code. It's designed to be scalable, testable and maintainable by using feature oriented architecture, one action per file pattern. This ensures application logic is well grouped and decoupled.

Rekit consists of three pieces:

  • Rekit App Download the latest desktop App for Mac. Windows version is coming...
  • Rekit Studio: A complete web IDE for React, Redux, and React Router development
  • Rekit CLI: A command line tool to create and manage projects, components, actions, etc.

Read more about the new Rekit Studio in the blog post

🎉 Rekit Now Creates Apps By Create-react-app

🔥 Introducing Rekit Studio: a real IDE for React and Redux development

🎉 Using Rekit Studio in an Existing React Project

Demo

Below is a quick demo video of how Rekit Studio works:

Rekit Demo

You can also see the live demo, but the instructions shown on the intro might be outdated: http://demo.rekit.org

Installation

If you are on Mac you can use the desktop app.

Install with npm:

npm install -g rekit  # Install Rekit CLI
npm install -g rekit-studio  # Install Rekit Studio

This will install the commands rekit and rekit-studio to the system. Rekit is developed and tested on npm 3+ and node 6+, so this is the prerequisite for using Rekit.

Usage

Create a new application

rekit create <app-name> [--sass]

This will create a new app named app-name in the current directory. The --sass flag allows to use sass instead of default less as the CSS transpiler. After creating the app, you need to install dependencies:

cd app-name
npm install

Now, we can start Rekit Studio with:

rekit-studio -p 3040

Finally, you can open Rekit Studio at http://localhost:3040/. At the bottom in the "Scripts" tab you can find buttons to start, build, and test your app.

Key Features

  • It's production-ready but not a starter kit.
  • Zero additional configuration needed after creating an app.
  • Dedicated IDE for Rekit development.
  • Command line tools to manage actions, reducers, components and pages.
  • Bootstrapped by create-react-app, all your knowledge about it still works.
  • Use Webpack 3 for bundling.
  • Use Babel for ES2015(ES6)+ support.
  • Use React hot loader for hot module replacement.
  • Use Redux for application state management.
  • Use React-router for routing and it's configured with Redux reducer.
  • Use Webpack dll plugin to improve dev-time build performance.
  • Use Less or Sass as CSS transpilers.
  • Use jest, enzyme for testing.
  • Support Redux dev tools.

Packages

The Rekit organization contains a number of packages.

Packages Description
rekit-core Version Provide core APIs such as create components, rename actions, etc...
rekit Version CLI wrapper of rekit-core, create apps by cloning repo from rekit-boilerplate-cra
rekit-studio Version Dedicated IDE for Rekit development, uses rekit-core to manage project too.
rekit-plugin-redux-saga Version Use redux-saga instead of redux-thunk for async actions.
rekit-plugin-selector Version Support selectors by Rekit cli.
rekit-plugin-apollo Version Support graphql by Apollo.

Documentation

Disclaimer: Some of documentation, particularly around installation, is outdated since the release of 3.0

http://rekit.js.org

License

MIT

rekit-app's People

Contributors

supnate avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar

rekit-app's Issues

Fresh electron build/package installation on Windows 10 crashes on startup.

Downloaded Source Code (.zip) for v3.0.5 from Github downloads.
Running Windows 10

Extracted zip to folder, opened in Visual Studio Code, ran npm i to install all dependencies and then npm run dist to run the electron builder
(I have also tried npm run release but this will not work since it says a github authentication token needs to be set, which I assume is for publishing to github rather than just building an executable locally? Correct me if I am wrong though!)

I then navigate to the dist/ folder and run the setup .exe, after it completes installation it crashes and gives me this warning:

error for rekit

How to build the source?

Hi, I see have the commands npm start and start electron, I try both and the latest (start-electron), I get this error
TypeError: Cannot read property 'logger' of undefined
Have any template for use electron with rekit?, I try to build a electron application with rekit can provide a simple example or template please?.

Thanks.

在mac上创建项目,运行诡异

最新版,

新建项目后

创建了本地文件夹, 然后从github 拉取了 rekit/boilerplate-rekit-react

并且我展开 文件夹 发现下载成功了, 接着,目录又自动消失了

希望添加自定义设置

类似于vscode的设置
可以设置主题,字体,shell,自定义代码片段,快捷键
期待rekit

make automatic upgrades an opt in

Thanks for this project!
I was using 3.0.0-beta.23 and successfully created several projects. It worked great but then it auto updated to 3.0.0-beta.24. Now it does not work on my Mac Book (Mojave) it hangs on welcome screen.

Could you create a way to turn off auto-update?

I haven't reinstalled 3.0.0-beta.23 because it will probably just auto-update to 3.0.0-beta.24.

I tried to fully delete and re-install 3.0.0-beta.24 but it does not work. (Hangs on welcome screen)

I downloaded 3.0.0-beta.24 src and tried to run but it gives an error:
TypeError: Cannot read property 'ipcRenderer' of undefined
(anonymous function)
src/features/home/utils.js:72
69 | history.push('/plugins');
70 | }
71 |

72 | window.bridge.ipcRenderer.on('open-project', (evt, dir) => openProject(dir));
73 | window.bridge.ipcRenderer.on('redux-action', (evt, action) => store.getStore().dispatch(action));
74 | window.bridge.ipcRenderer.on('new-project', evt => showNewProjectDialog());
75 | window.bridge.ipcRenderer.on('show-welcome', evt => showWelcomePage());

建议在创建的时候,显示详细的日志

因为网络的问题, 加载比较慢, 长时间卡在一个页面, 还以为出问题了,
如果能显示较为详细的日志, 让我知道还在加载 只是网络慢, 而不是程序挂了

谢谢

image

Rekit Studio 3.0 (Desktop) Not Using SASS

Downloaded v3.0.5 from Github downloads.
Installed on MacOS Catalina 10.15.1

  • Clicked "Create New Project"
    Screen Shot 2020-03-04 at 11 17 14 AM

Received following success message (terminal was spelled incorrectly FYI)
Screen Shot 2020-03-04 at 11 18 28 AM

Clicked "Open" -- Rekit Studio opened up my project. All CSS files are .less

Screen Shot 2020-03-04 at 11 19 43 AM

Really love rekit (been a user since v1.0 and excited for v3.0)! Once some rough edges are smoothed over, this should be really awesome.

Project opening fails when projects' path contains space character

Bug observed on version 3.0.7 downloaded from GitHub.

Rekit-app seems to fail at loading projects created in a directory which name contains space character.

To reproduce the issue:

  • create a directory with space character in its name
  • create a new project in this directory
  • following error should appear :
Fatal: Rekit Studio failed to load the project: /Path/To/My Project/test
Rekit Studio tenimated unexpectly, please try to restart it.

CLI install breaking on Node v14+

It seems that the issue below is caused by installing on Node v14. Any ideas?

npm install -g rekit rekit-studio

npm WARN deprecated [email protected]: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
/usr/local/bin/rekit -> /usr/local/lib/node_modules/rekit/bin/rekit.js
/usr/local/bin/rekit-studio -> /usr/local/lib/node_modules/rekit-studio/bin/index.js

> [email protected] install /usr/local/lib/node_modules/rekit-studio/node_modules/fsevents

node install.js

SOLINK_MODULE(target) Release/.node
CXX(target) Release/obj.target/fse/fsevents.o
In file included from ../fsevents.cc:6:
In file included from ../../nan/nan.h:222:
In file included from ../../nan/nan_converters.h:67:
../../nan/nan_converters_43_inl.h:22:1: error: no viable conversion from 'Localv8::Context' to 'v8::Isolate '
X(Boolean)
^~~~~~~~~~
../../nan/nan_converters_43_inl.h:18:23: note: expanded from macro 'X'
val->To ## TYPE(isolate->GetCurrentContext())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/tledwar/Library/Caches/node-gyp/14.4.0/include/node/v8.h:2845:37: note: passing argument to parameter 'isolate' here
Local ToBoolean(Isolate
isolate) const;
^
In file included from ../fsevents.cc:6:
In file included from ../../nan/nan.h:222:
In file included from ../../nan/nan_converters.h:67:
../../nan/nan_converters_43_inl.h:40:1: error: no viable conversion from 'Localv8::Context' to 'v8::Isolate *'
X(bool, Boolean)
^~~~~~~~~~~~~~~~

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.