0.1.1 • Published 3 years ago

neuro-react-server v0.1.1

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

neuro-react-server

React build to send into electron and another application with update semantic

Build: npx tsc or tsc (if typescript installed globaly)

Publish: npm run build:publish

Usage

Init frontend server:

const FrontServer = require("neuro-react-server")
const http = requrie("http")
const path = rqeuire("path")

const simpleRequestListener = (req, res) => {
  res.writeHead(200)
  res.end("Hi!")
}

const server = http.createServer(simpleRequestListener) // you can use express.js or other frameworks to create the server
const frontendServer = new FrontServer({
  server: server,
  ClientSrc: path.resolve(__dirname, "frontend"), // Frontend src
  production: false, // use react.production.min.js or react.development.js (default: false)
  addReact: false // Add react engine on component (default: fasle)
}

server.listen(3000) // listen on 3000 port

Project struct:

index.js
frontend
|> component
|> |> index.jsx
|> clock
|> |> arrow
|> |> |> index.jsx
|> |> clockFace
|> |> |> index.jsx

WARNING!!

component - is folder div for render - path to folder (example: ReactDOM.render(Arrow(), document.getElementById("/clock/arrow"))) main function to render - name of component

JSX File struct:

// Path: frontend/clock/arrow/index.jsx
const Arrow = () => (
  <h1>Hi!</h1>
)

ReactDOM.render(Arrow(), "/clock/arrow")

addComponent function - add component to project. Example:

// index.js
...
const id = "number one components" // A group of components have the same id 
frontendServer.addComponent("/component", id)
// frontend/component/index.jsx
const Component = () => (
  <h1>Hi!</h1>
)

ReactDOM.render(Component(), document.getElementById("/component"))

update function - update all components Example:

// index.js
frontendServer.update() 

getComponentById and getComponentsById functions - get component or components by id Example:

// index.js
frontendServer.getComponentById("number one components", "/component") // return frontend/compontent/index.jsx body and other data
frontendServer.getComponentsById("number one components") // return all components, who have same id
0.1.1

3 years ago

0.1.0

3 years ago