All Projects → jxnblk → Ram

jxnblk / Ram

Licence: mit
⚛️ React Application Manager: create and run React (and other) applications – no command line or build setup required

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Ram

Create Ueno App
The easiest and fastest way to create new web projects with next, gatsby, create-react-app and mobile projects with react-native.
Stars: ✭ 116 (-80.17%)
Mutual labels:  create-react-app, gatsby, nextjs
Httplab
The interactive web server
Stars: ✭ 3,752 (+541.37%)
Mutual labels:  developer-tools, development
Pyment
Format and convert Python docstrings and generates patches
Stars: ✭ 577 (-1.37%)
Mutual labels:  developer-tools, development
Npkill
List any node_modules directories in your system, as well as the space they take up. You can then select which ones you want to erase to free up space.
Stars: ✭ 5,325 (+810.26%)
Mutual labels:  npm, developer-tools
Graphcms Examples
Example projects to help you get started with GraphCMS
Stars: ✭ 295 (-49.57%)
Mutual labels:  gatsby, nextjs
Jamstackthemes
A list of themes and starters for JAMstack sites.
Stars: ✭ 298 (-49.06%)
Mutual labels:  gatsby, nextjs
Emacs4developers
A document to help developers to use Emacs as a developer
Stars: ✭ 430 (-26.5%)
Mutual labels:  developer-tools, development
init-macOS-dev
init my macOS development environment
Stars: ✭ 14 (-97.61%)
Mutual labels:  development, developer-tools
Ergo
The management of multiple apps running over different ports made easy
Stars: ✭ 452 (-22.74%)
Mutual labels:  developer-tools, development
Ts Monorepo
Template for setting up a TypeScript monorepo
Stars: ✭ 459 (-21.54%)
Mutual labels:  create-react-app, nextjs
Reloadr
Hot code reloading tool for Python
Stars: ✭ 483 (-17.44%)
Mutual labels:  developer-tools, development
Takeoff
A rapid development environment using docker for convenience.
Stars: ✭ 271 (-53.68%)
Mutual labels:  developer-tools, development
Serverlessbydesign
A visual approach to serverless development. Think. Build. Repeat.
Stars: ✭ 254 (-56.58%)
Mutual labels:  developer-tools, development
Developer Roadmap Guide 2018
Stars: ✭ 344 (-41.2%)
Mutual labels:  developer-tools, development
Maildev
📫 SMTP Server + Web Interface for viewing and testing emails during development.
Stars: ✭ 3,102 (+430.26%)
Mutual labels:  developer-tools, development
Hukum
An NPM module that displays Github Action progress in the terminal and aims to improve your development experience by printing status in realtime.
Stars: ✭ 375 (-35.9%)
Mutual labels:  npm, developer-tools
React Cdk
under development - React Component Development Kit with Storybook
Stars: ✭ 583 (-0.34%)
Mutual labels:  developer-tools, development
myke
make with yaml: development tasks made simple with golang, yaml and many ingredients
Stars: ✭ 67 (-88.55%)
Mutual labels:  development, developer-tools
hapi-dev-errors
A hapi plugin to return better error details and skip the look at command line to catch the issue.
Stars: ✭ 58 (-90.09%)
Mutual labels:  development, developer-tools
Laravel Kit
A desktop Laravel admin panel app
Stars: ✭ 440 (-24.79%)
Mutual labels:  developer-tools, development

RAM: React App Manager

BETA

Create and run React applications – no command line or build setup required. Powered by Electron & Create React App

Getting started

RAM requires Node.js v6 and npm v5.2 or later to be installed on your computer. Install the latest version of Node.js (which includes npm) here:

Download for MacOS:

RAM includes support for the following app types:

To add support for another app, please open a pull request.

Motivation

I'm a firm believer in code literacy, and I've worked with many people throughout my career who have strong development skills with languages like HTML and CSS, but who might face barriers to entry with modern front-end development tools. When I think about the potential barriers to entry, a few things come to mind:

  1. Scaffolding a full React (or similar) application requires a bit of setup
  2. The terminal and command line interfaces can be intimidating at first
  3. Node.js and npm can be foreign concepts to people new to front-end development

For the most part, Create React App has solved #1 for people who already know #2 and #3. It's an excellent tool and that's why RAM makes use of it.

RAM is aimed at abstracting away the terminal and npm aspects for beginners. If you're a professional front-end developer, I'd recommend using the command line tools directly instead of an application like this, as it's a very valuable and powerful skillset to utilize. If you do make use of this app, hopefully it can serve as a learning tool and can make some of these things less intimidating as you progress.

Remember: GUIs will never be as efficient or powerful as CLIs

How it works

All the magic comes from the underlying command line interfaces: npm and create-react-app. This application uses Electron to spawn child processes that run the commands to power these tools. The logs from stdio are passed back to the application for display. See the renderer/spawn.js and renderer/CreateForm.js modules for an example of how this works.

Alternative approaches

Some alternatives to this particular Electron setup include:

  • Server running directly in electron
  • Using zeit/pkg with a web interface

Caveats

  • Requires Node.js v6+ and npm v5.2+
  • Built in a few hours
  • No tests
  • Not tested on Linux or Windows

Alternatives

Roadmap

  • [ ] Abstract create form to a more general purpose utility
  • [ ] npm depencendy management

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Development

Install dependencies and start the app:

npm i && npm start

The main folder contains modules for the main process, and renderer includes all files for the renderer process. No Babel transpilation is used, so be sure to use Electron-compatible modules and syntax.

MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].