All Projects → Rulox → React Atomic Structure

Rulox / React Atomic Structure

Licence: mit
Basic Structure for React app following Atomic Design

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to React Atomic Structure

Ghchat
📱A chat application for GitHub. React + PWA + Node(koa2) + Typescripts + Mysql + Socket.io
Stars: ✭ 791 (+788.76%)
Mutual labels:  webpack, scss, react-router
React Redux Starter
A basic template that consists of the essential elements that are required to start building a Single Page Application using React, React Router, Redux, Bootstrap 4, Sass, and Webpack
Stars: ✭ 116 (+30.34%)
Mutual labels:  webpack, scss, react-router
React 5ddm
5d动漫,使用React,服务端渲染,接口(不开源)来自赞片CMS。仅供参考,交流群:14646823 欢迎加入
Stars: ✭ 50 (-43.82%)
Mutual labels:  webpack, react-router
React Mobx Ts Antd
A simple empty project build with react、react-router、mobx、antd in typescript.
Stars: ✭ 53 (-40.45%)
Mutual labels:  webpack, react-router
Egg React Typescript Boilerplate
Egg React TypeScript Server Side Render (SSR) / Client Side Render (CSR)
Stars: ✭ 56 (-37.08%)
Mutual labels:  webpack, react-router
React Redux Antdesign Webpack Starter
react + redux + ant design + react-router 4 + webpack 4 starter
Stars: ✭ 44 (-50.56%)
Mutual labels:  webpack, react-router
React Antd Admin Template
一个基于React+Antd的后台管理模版,在线预览https://nlrx-wjc.github.io/react-antd-admin-template/
Stars: ✭ 1,022 (+1048.31%)
Mutual labels:  webpack, react-router
React Cool Starter
😎 🐣 A starter boilerplate for a universal web app with the best development experience and a focus on performance and best practices.
Stars: ✭ 1,083 (+1116.85%)
Mutual labels:  webpack, react-router
Mailgo
💌 mailgo, a new concept of mailto and tel links
Stars: ✭ 978 (+998.88%)
Mutual labels:  webpack, scss
Starter Lapis
Cutting edge starter kit
Stars: ✭ 72 (-19.1%)
Mutual labels:  webpack, react-router
Ifme
Free, open source mental health communication web app to share experiences with loved ones
Stars: ✭ 1,147 (+1188.76%)
Mutual labels:  webpack, scss
Icejs
仓库迁移至:https://github.com/alibaba/ice
Stars: ✭ 75 (-15.73%)
Mutual labels:  webpack, react-router
Tris Webpack Boilerplate
A Webpack boilerplate for static websites that has all the necessary modern tools and optimizations built-in. Score a perfect 10/10 on performance.
Stars: ✭ 1,016 (+1041.57%)
Mutual labels:  webpack, scss
Cusca
A ghost theme
Stars: ✭ 42 (-52.81%)
Mutual labels:  webpack, scss
React Es6 Padawan To Jedi Book
Uma introdução simples e completa para React usando ES6 e Babel.
Stars: ✭ 46 (-48.31%)
Mutual labels:  webpack, jsx
Muiscrr Boilerplate
Material-UI Styled Components React Redux boilerplate with offline mode support 🎬
Stars: ✭ 35 (-60.67%)
Mutual labels:  webpack, react-router
Js Toolbox
CLI tool to simplify the development of JavaScript apps/libraries with little to no configuration. (WORK IN PROGRESS/PACKAGE NOT PUBLISHED).
Stars: ✭ 53 (-40.45%)
Mutual labels:  webpack, jsx
Tkframework
react + relay + redux + saga + graphql + webpack
Stars: ✭ 83 (-6.74%)
Mutual labels:  webpack, jsx
Budgeting
Budgeting - React + Redux + Webpack (tree shaking) Sample App
Stars: ✭ 971 (+991.01%)
Mutual labels:  webpack, react-router
Html Sass Babel Webpack Boilerplate
Webpack 4 + Babel + ES6 + SASS + HTML Modules + Livereload
Stars: ✭ 35 (-60.67%)
Mutual labels:  webpack, scss

React Atomic Structure

Build Status Quality Gate

Basic Structure for React app following Atomic Design.

This base project allows you to have a basic React App folder structure following the principles of Atomic Design. It contains some basic components that you can use. All the components are not (or minimally) stylized. The main objective of this project is to have a basic structure, that is the reason we are not doing complex styles and/or adding many libs.

Also, each component is a JSX file and a .scss file that is associated to the component. This means, all the components for this project should be modular, to make it easy its usage between different apps.

Tools

Using these package, you will be able to start a new fresh React project with the basic folder and file structures.

This project uses ES6 in the JS side, and Sass for styles.

Features

  • Webpack 3
  • ES6
  • SASS
  • React Router
  • Auto watcher for JS and SCSS files
  • Atomic design project structure
  • Launch server with hot-reload using webpack
  • JS Lint ( extending airbnb eslint styles )
  • Styleint

TODO List

  • Tests

Requirements

  • nodejs >= v8.*
  • npm >= v4.*

Getting started

Download the master branch

or

Clone this repo (Be sure you delete the .git file, or move the files to your own project folder/repository)

git clone -b master --single-branch --depth 1 [email protected]:Rulox/react-atomic-structure.git
Install npm dependencies
npm install
Run the server
npm run start

A browser webpack server should be ready on http://localhost:3200/ (or any other URL+PORT that your terminal says). You can start working right now in the code, and all the changes will be visible in the browser just opened.

Predefined components

But first, What is Atomic Design?

These components are just an idea on how to develop your application following the Atomic Design. Feel free to upgrade/delete them in order to do your own app!

Atoms (stateless component)

  • Anchor
  • Label
  • Button
  • Input
  • Image
  • Title
  • Paragraph

Molecules

  • Labeled input
  • Content

Organisms

  • Article
  • Form
  • Nav

Templates

  • Home
  • About

Creating your own component

To create a new component, just create a new folder in the atoms/molecules/organisms/templates folder with the name of your component.

Create now the React component in the jsx file. Also create your .scss file and remember to import it in the component jsx file using require.

NPM Scripts

This project comes with the following scripts to help you.

npm run watch

This is the preferred method during development

  1. Create CSS and JS bundles from Sass and JS.
  2. Launch a web server.
  3. Launch watchers on JS/CSS files.
npm run start
  1. Create CSS and JS bundles from Sass and JS.
  2. Launch a web server.
npm run build
  1. Build CSS and JS files. With this command, the js will be minified, the bundle version will be used in the html.
npm run lint
  1. Launch Lint checkers.

Contributions

Feel free to create a pull request or create an issue to add features or fix bugs.

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].