https://github.com/app-generator/react-datta-able-nodejs
React Datta Able NodeJS - Open-Source Full-Stack Template | App-Generator.dev
https://github.com/app-generator/react-datta-able-nodejs
datta-able datta-able-fullstack fullstack-datta-able react-datta-able react-nodejs
Last synced: 2 months ago
JSON representation
React Datta Able NodeJS - Open-Source Full-Stack Template | App-Generator.dev
- Host: GitHub
- URL: https://github.com/app-generator/react-datta-able-nodejs
- Owner: app-generator
- License: other
- Created: 2021-07-14T12:31:39.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-02T15:30:08.000Z (3 months ago)
- Last Synced: 2025-04-23T21:09:05.478Z (2 months ago)
- Topics: datta-able, datta-able-fullstack, fullstack-datta-able, react-datta-able, react-nodejs
- Language: SCSS
- Homepage: https://appseed.us/product/react-node-js-datta-able
- Size: 2.29 MB
- Stars: 74
- Watchers: 2
- Forks: 36
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
# [React Datta Able NodeJS](https://app-generator.dev/product/datta-able/api-nodejs/react/)
React Datta Able frontend enhanced with JWT authentication powered by a simple NodeJS API backend.
The backend logic is provided by a simple, `easy-to-extend` API Server that manages the Authentication flow (login, registration, logout) using `JSON Web Tokens` (JWT).- 👉 [React Datta Able NodeJS](https://app-generator.dev/product/datta-able/api-nodejs/react/) - `Product Page`
- 👉 [NodeJS React Datta Able](https://react-node-js-datta-able.appseed-srv1.com) - `LIVE Demo`
- 👉 [NodeJS React Datta Able](https://app-generator.dev/docs/products/react/datta-able-nodejs/index.html) - `Complete Information` and Support Links
- [Getting Started with React](https://app-generator.dev/docs/technologies/react/index.html) - a `comprehensive tutorial`
## [React Datta Able](https://app-generator.dev/docs/templates/react/datta-able.html) Frotend
- Modern aesthetics UI design - Designed by *[CodedThemes](https://app-generator.dev/docs/partners/codedthemes.html)*
- React, Redux, Redux-persist
> `Tests` (compatibility matrix)
| NodeJS | NPM | YARN |
| --- | --- | --- |
| `v14.0.0` | ❌ | ✅ |
| `v16.0.0` | ✅ | ✅ |
| `v18.0.0` | ❌ | ❌ |
## NodeJS API Features
- Stack: `NodeJS` / `Express` / **SQLite**
- `TypeScript`, Joy for validation
- **DB Layer**: `TypeORM`, `SQLite` persistence
- **Auth**: Passport / `passport-jwt` strategy
> `Tests` (compatibility matrix)
| NodeJS | NPM | YARN |
| --- | --- | --- |
| `v18.0.0` | ❌ | ✅ |
| `v17.0.0` | ❌ | ✅ |
| `v16.13.0` | ❌ | ✅ |
| `v16.0.0` | ❌ | ❌ |
## How to use it
Being a full-stack product, the backend and the frontend should be compiled and started separately.
Before starting to compile the product, make sure you have the following tools installed in the environment:- [NodeJS](https://nodejs.org/en/) - version `14.x` or higher
- [GIT](https://git-scm.com/) - used to clone tjhe sources from Github
- [Python3](https://www.python.org/) - used in many tools
### 👉 Start the Frontend
> **Step 1** - Once the project is downloaded, change the directory to `react-ui`.
```bash
$ cd react-ui
```
> **Step 2** - Install dependencies via NPM or yarn
```bash
$ npm i
// OR
$ yarn
```
> **Step 3** - Start in development mode
```bash
$ npm run start
// OR
$ yarn start
```
At this point, the app is available in the browser `localhost:3000` (the default address).
### 👉 Start the Backend Server
> **Step 1** - Change the directory to `api-nodejs`
```bash
$ cd api-nodejs
```
> **Step 2** - Install dependencies via NPM or yarn
```bash
$ npm i
// OR
$ yarn
```
> **Step 3** - Run the SQLite migration via TypeORM
```bash
$ npm run typeorm migration:run
// OR
$ yarn typeorm migration:run
```
> **Step 4** - Start the API server (development mode)
```bash
$ npm run dev
// OR
$ yarn dev
```The API server will start using the `PORT` specified in `.env` file (default 5000).
## 👉 Codebase Structure
```bash
< ROOT / src >
|
|-- config/
| |-- config.ts # Configuration
| |-- passport.ts # Define Passport Strategy
|
|-- migration/
| |-- some_migration.ts # database migrations
|
|-- models/
| |-- activeSession.ts # Sessions Model (Typeorm)
| |-- user.ts # User Model (Typeorm)
|
|-- routes/
| |-- users.ts # Define Users API Routes
|
|
|-- index.js # API Entry Point
|-- .env # Specify the ENV variables
|
|-- ************************************************************************
```
## 👉 SQLite Path
The SQLite Path is set in `.env`, as `SQLITE_PATH`
## 👉 Database migration
> Generate migration:
```bash
$ yarn typeorm migration:generate -n your_migration_name
```> run migration:
```bash
$ yarn typeorm migration:run
```
## [React Datta Able PRO](https://app-generator.dev/product/datta-able-pro/full-stack/react/)
> The premium version provides more features, priority on support, and is more often updated - [Live Demo](https://react-datta-pro.onrender.com).
- `Enhanced UI` - more pages and components
- JWT Authentication
- `Priority` on support
---
**[React Datta Able NodeJS](https://app-generator.dev/product/datta-able/api-nodejs/react/)** - Full-Stack Seed project generated by **[App Generator](https://app-generator.dev/)**.