• This repository has been archived on 01/Jan/2024
  • Stars
    star
    943
  • Rank 48,326 (Top 1.0 %)
  • Language
    JavaScript
  • License
    Apache License 2.0
  • Created over 7 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

πŸš€ Ultimate universal starter with lazy-loading, SSR and i18n. [not maintained]

Suicrux 😈

Ultimate universal starter with lazy-loading, SSR and i18n.

Previous release

Greenkeeper badge Codacy Badge

Quick start

  # Install
  git clone --depth=1 --single-branch https://github.com/Metnew/suicrux.git
  cd suicrux
  npm install
  # install flow typings for libraries (optional)
  flow-typed install
  # Development
  npm run dev
  # Build
  npm run build
  # Production
  npm run start

What's inside?

bitHound Dependencies bitHound Dev Dependencies

Client:

Server:

Webpack

Other:

Suicrux FAQ

Static assets?

/static folder + url-loader. Everything in /static/public/ is copied to /dist/client with copy-webpack-plugin.

Is it possible to change Webpack config?

Of course, config is intuitive! Webpack universality is inspired by Razzle.

SSR?

Check /src/server/ssr/.

Code-splitting?

react-async-component.

Server-side data-fetching?

Using react-async-bootstrapper - a wrapper around react-tree-walker.

Theming?

Yes, with styled-components' <ThemeProvider> it's possible to specify a color theme.

Browser support

Without react-intl:

  • Safari 7+
  • IE 10+

Environment variables

  • process.env.HOST (default: 'localhost'): Application host. Browser and Server.
  • process.env.PORT (default: 3000): Application port. Browser and Server.
  • process.env.INSPECT_ENABLED (default: true): add --inspect arg to server in development. Webpack only.
  • process.env.ANALYZE_BUNDLE (default: false): Run webpack-bundle-analyzer on production build. _Webpack _
  • process.env.GA_ID (default: false): Google analytics ID. If set, react-ga initialize itself inside >container oncomponentDidMount()`. Browser only.
  • process.env.SENTRY_PUBLIC_DSN (default: false): Similar to GA_ID, but for Sentry. Browser only.
  • process.env.BROWSER: Your environment. true - browser, false - Node.

NOTE: Remember, you can't run code which uses browser global object in Node environment!

  • process.env.SENTRY_DSN (default: false): Sentry full(private) DSN. Server only.

Semantic.UI + React = SUIR

SUI = Semantic.UI
SUIR = Semantic-UI-React TL;DR: SUIR is great, but it lacks inline-styles.

You're always free to use any other UI framework with suicrux. UI framework comparison.

Good parts

  1. Big UI library
  2. Based on SUI: SUIR uses SUI CSS under the hood.
  3. Modular: Import only what you use required components.

Bad parts

  1. Import of unused styles.

It's possible to import only required components' styles. Check src/client/index.jsx. PurifyCss cannot help. Only browser-based tools probably could.

  1. SUI styles are costly(548kb) and block rendering.

It's possible to split SUI styles into several smaller chunks which could be downloaded faster.

Contributing

Have a question? Ask! πŸ˜‰

Make sure you ask a right question. 😈

PRs, issues, enhancements are always welcome.

Author

Vladimir Metnew [email protected]

LICENSE

Apache License 2.0

More Repositories

1

uxss-db

πŸ”ͺBrowser logic vulnerabilities ☠️
HTML
682
star
2

vue-element-starter

Vue starter with Element-UI [READY, unmaintained now]
JavaScript
216
star
3

neural-finance

Neural Network for HFT-trading [experimental]
Python
83
star
4

telegram-links-nsworkspace-open

Telegram (v4.9.155353) was rendering file:// links + opening them via NSWorkspace.open -> code execution.
HTML
37
star
5

write-ups

Objective-C
34
star
6

next-semantic-ui-react

Next.js + SUIR tiny starter
JavaScript
20
star
7

rce-helpviewer-parallels-for-mac

Revisiting Helpviewer.app to hack Parallels for Mac
JavaScript
17
star
8

crypto-price-prediction-projects

List of crypto price prediction ML projects
11
star
9

tiny-universal-skeleton

Alternative approach to HMR for both server with SSR and client in development.[EXPERIMENTAL EXAMPLE]
JavaScript
10
star
10

atarax

Yet another guΡ—dΡ‘ about React/Redux.
8
star
11

React-Koa-Rethink

Example app with Koa/React/RethinkDB, socket.io [ARCHIVED]
JavaScript
8
star
12

chrome-applescript

Execute downloaded file in "script editor" using Chrome.
HTML
4
star
13

webpack-pkg-plugin

Makes executables from your scripts with Webpack.
JavaScript
3
star
14

git-hash-package

Set git hash in package.json
JavaScript
2
star
15

webpack-get-code-on-done

Returns compiled code from Webpack compiler.
JavaScript
1
star
16

async-in-redux-tutorial

How to work with async actions in Redux? All approaches with pros and cons. [ will not be finished :( ]
JavaScript
1
star
17

express-socket.io-run

The simplest setup, pure Express + pure Socket.io
JavaScript
1
star
18

crypto-algorithms-for-university

Some crypto algorithms I've written from the scratch for university class.
JavaScript
1
star
19

awral

Awesome Wrapper for Redux Action's Lifecycle [IGNORE, USE PROMISE-MIDDLEWARE INSTEAD]
JavaScript
1
star
20

afaik-mach-o

Assembly
1
star
21

BinaryTrees

Binary trees tutorial
JavaScript
1
star
22

gh_run_download_git_artifacts

gh_run_download_git_artifacts
1
star
23

go-terraform-aws-gitlab-starter

1
star
24

reas

Extract pure source code from webpack-compiled script
JavaScript
1
star