All Projects → rpichioli → react-with-nodejs-and-sequelize

rpichioli / react-with-nodejs-and-sequelize

Licence: other
React-Redux application using NodeJS relational database API with Sequelize ORM. Two level CRUD with a main data table (bands) and other that is relationed with it (albums).

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to react-with-nodejs-and-sequelize

laravel-crudable
Laravel CRUD builder with ease
Stars: ✭ 40 (+33.33%)
Mutual labels:  crud
semantic role labeling deep learning
SRL deep learning model is based on DB-LSTM which is described in this paper : [End-to-end learning of semantic role labeling using recurrent neural networks](http://www.aclweb.org/anthology/P15-1109)
Stars: ✭ 20 (-33.33%)
Mutual labels:  semantic
logrocket deno api
A functional CRUD-like API with Deno and Postgres
Stars: ✭ 23 (-23.33%)
Mutual labels:  crud
springboot-graphql-sqqr-jwt-demo
GraphQL java backend representing the right way to authenticate/authorize using Spring boot, graphql-spqr & jsonwebtoken
Stars: ✭ 28 (-6.67%)
Mutual labels:  jsonwebtoken
sql-repository
[PHP 7] SQL Repository implementation
Stars: ✭ 37 (+23.33%)
Mutual labels:  crud
mern-stack-crud
MERN stack (MongoDB, Express, React and Node.js) create read update and delete (CRUD) web application example
Stars: ✭ 142 (+373.33%)
Mutual labels:  crud
soda-for-java
SODA (Simple Oracle Document Access) for Java is an Oracle library for writing Java apps that work with JSON (and not only JSON!) in the Oracle Database. SODA allows your Java app to use the Oracle Database as a NoSQL document store.
Stars: ✭ 61 (+103.33%)
Mutual labels:  crud
remult
A CRUD framework for full stack TypeScript
Stars: ✭ 1,488 (+4860%)
Mutual labels:  crud
vue-js-3-firebase-firestore
Vue 3 Firebase Tutorial: Build Firestore CRUD Web Application
Stars: ✭ 34 (+13.33%)
Mutual labels:  crud
expresso
expresso ☕ ( expressjs, Sequelize, TypeScript )
Stars: ✭ 111 (+270%)
Mutual labels:  sequelize-orm
Processor
Ontology-driven Linked Data processor and server for SPARQL backends. Apache License.
Stars: ✭ 54 (+80%)
Mutual labels:  crud
therack
Laravel 7 e-commerce website
Stars: ✭ 77 (+156.67%)
Mutual labels:  crud
BertSimilarity
Computing similarity of two sentences with google's BERT algorithm。利用Bert计算句子相似度。语义相似度计算。文本相似度计算。
Stars: ✭ 348 (+1060%)
Mutual labels:  semantic
node-express-mongodb-reactjs-graphql
Node, Express, React.js, Graphql and MongoDB CRUD Web Application
Stars: ✭ 36 (+20%)
Mutual labels:  crud
SemanticCite
Allows to manage citation resources using semantic annotations
Stars: ✭ 22 (-26.67%)
Mutual labels:  semantic
ionic4-angular7-example
Ionic 4, Angular 7 and Cordova Tutorial: Build CRUD Mobile Apps
Stars: ✭ 57 (+90%)
Mutual labels:  crud
crudcast
Create and deploy a RESTful API with a few lines of YAML
Stars: ✭ 32 (+6.67%)
Mutual labels:  crud
aarbac
An Automated Role Based Access Control .NET framework with T-SQL Query Parser which automatically parse select, insert, update, delete queries based on the logged in user role
Stars: ✭ 18 (-40%)
Mutual labels:  crud
api
_api is an autogenerated CRUD API built on LowDB and ExpressJS.
Stars: ✭ 73 (+143.33%)
Mutual labels:  crud
spectre-canjs
A data administration component library built on the Spectre.css framework enabled with CanJS
Stars: ✭ 25 (-16.67%)
Mutual labels:  crud

react-with-nodejs-and-sequelize

Summary

The main idea of this project is to create an application with relational database exposing data through API services using NodeJS + Express. The front-end uses React and Redux working directly with state that is filled by the NodeJS API.

  • The client-side is a React + Redux app based.
  • The server-side is built in NodeJS (Express) and works like an API server.
  • This application uses Sequelize ORM to manage relational database and maintain it's data.

I choose to use only prop-types to cover all data typing and obligation requirements in React Components, when it's necessary.

Server-Side

The NodeJS Express application, located in the /server/ folder.

Inside it's scope use npm install to install all dependencies and npm start to run the server application after that.

  • Be sure that the database is working before starting the server.
  • All the database connections you need (for each environment) are in /server/config/database.json.

Client-Side

In the /client/ folder we have the client-side React application.

This client was built using the official Facebook create-react-app npm package. This package basically create a working React application, configured with minimal dependency and granting imediate work with no configuration for features like Babel, Webpack, and another stuff (because it's already done).

To install npm dependencies use npm install and finally npm start to run the React application.

The UI is fully made using Semantic UI - decided that it's the oportunity to get it out from my pending PoC checklist and use effectively. Semantic is a development framework that helps to create modern designs and responsive layouts. It also empowers designers and developers by creating a shared vocabulary for UI.

TDD + BDD

We have some tests too to be sure that our client and server-side API are working succesfully.

I have writen some tests in API side using Mocha and Chai, disposed in /server/test/.

Mocha is used to build tests and Chai to configure the asserts (TDD) and the behaviours (BDD) to improve test accuracy against the way we can use the API and also the way we should take care about errors. This way we know it's OK for every situation.

You can run all tests entering the server folder in terminal and just typing: npm run test - It's configured to run and compile with Babel (ES6) in then server "package.json".

Developed by

Rodrigo Quiñones Pichioli, since Mar/02/2018

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