{"id":27636872,"url":"https://github.com/app-generator/react-datta-able-nodejs","last_synced_at":"2025-04-23T21:09:17.442Z","repository":{"id":39909433,"uuid":"385933302","full_name":"app-generator/react-datta-able-nodejs","owner":"app-generator","description":"React Datta Able NodeJS - Open-Source Full-Stack Template | App-Generator.dev","archived":false,"fork":false,"pushed_at":"2025-04-02T15:30:08.000Z","size":2401,"stargazers_count":74,"open_issues_count":2,"forks_count":36,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-23T21:09:05.478Z","etag":null,"topics":["datta-able","datta-able-fullstack","fullstack-datta-able","react-datta-able","react-nodejs"],"latest_commit_sha":null,"homepage":"https://appseed.us/product/react-node-js-datta-able","language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/app-generator.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-14T12:31:39.000Z","updated_at":"2025-04-02T15:30:12.000Z","dependencies_parsed_at":"2024-11-09T18:02:29.954Z","dependency_job_id":"ec5ecc11-6a72-4b4f-b9cd-813aed583068","html_url":"https://github.com/app-generator/react-datta-able-nodejs","commit_stats":null,"previous_names":["app-generator/react-datta-able-nodejs","app-generator/react-datta-able"],"tags_count":7,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Freact-datta-able-nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Freact-datta-able-nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Freact-datta-able-nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Freact-datta-able-nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/app-generator","download_url":"https://codeload.github.com/app-generator/react-datta-able-nodejs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250514786,"owners_count":21443209,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["datta-able","datta-able-fullstack","fullstack-datta-able","react-datta-able","react-nodejs"],"created_at":"2025-04-23T21:09:16.774Z","updated_at":"2025-04-23T21:09:17.433Z","avatar_url":"https://github.com/app-generator.png","language":"SCSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [React Datta Able NodeJS](https://app-generator.dev/product/datta-able/api-nodejs/react/)\n\nReact Datta Able frontend enhanced with JWT authentication powered by a simple NodeJS API backend.\nThe 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).\n\n- 👉 [React Datta Able NodeJS](https://app-generator.dev/product/datta-able/api-nodejs/react/) - `Product Page`\n- 👉 [NodeJS React Datta Able](https://react-node-js-datta-able.appseed-srv1.com) - `LIVE Demo`\n- 👉 [NodeJS React Datta Able](https://app-generator.dev/docs/products/react/datta-able-nodejs/index.html) - `Complete Information` and Support Links\n  - [Getting Started with React](https://app-generator.dev/docs/technologies/react/index.html) - a `comprehensive tutorial`\n\n![React Datta Able - Full-Stack Starter generated by AppSeed.](https://user-images.githubusercontent.com/51070104/174488189-7bbb3e82-b319-487e-94ec-e295aca3f6d7.png)\n\n\u003cbr \u003e\n\n## [React Datta Able](https://app-generator.dev/docs/templates/react/datta-able.html) Frotend\n\n- Modern aesthetics UI design - Designed by *[CodedThemes](https://app-generator.dev/docs/partners/codedthemes.html)*\n- React, Redux, Redux-persist\n\n\u003cbr /\u003e\n\n\u003e `Tests` (compatibility matrix)\n\n| NodeJS | NPM | YARN | \n| --- | --- | --- |  \n| `v14.0.0` | ❌ | ✅ |\n| `v16.0.0` | ✅ | ✅ | \n| `v18.0.0` | ❌ | ❌ | \n\n\n\u003cbr /\u003e\n\n## NodeJS API Features\n\n- Stack: `NodeJS` / `Express` / **SQLite** \n- `TypeScript`, Joy for validation\n- **DB Layer**: `TypeORM`, `SQLite` persistence\n- **Auth**: Passport / `passport-jwt` strategy\n\n\u003cbr /\u003e\n\n\u003e `Tests` (compatibility matrix)\n\n| NodeJS | NPM | YARN | \n| --- | --- | --- | \n| `v18.0.0`  | ❌ | ✅ |\n| `v17.0.0`  | ❌ | ✅ |\n| `v16.13.0` | ❌ | ✅ | \n| `v16.0.0`  | ❌ | ❌ | \n\n\n\u003cbr /\u003e \n\n## How to use it\n\nBeing a full-stack product, the backend and the frontend should be compiled and started separately. \nBefore starting to compile the product, make sure you have the following tools installed in the environment:\n\n- [NodeJS](https://nodejs.org/en/) - version `14.x` or higher\n- [GIT](https://git-scm.com/) - used to clone tjhe sources from Github\n- [Python3](https://www.python.org/) - used in many tools\n\n\u003cbr /\u003e\n\n### 👉 Start the Frontend \n\n\u003e **Step 1** - Once the project is downloaded, change the directory to `react-ui`. \n\n```bash\n$ cd react-ui\n```\n\n\u003cbr \u003e\n\n\u003e **Step 2** - Install dependencies via NPM or yarn\n\n```bash\n$ npm i\n// OR\n$ yarn\n```\n\n\u003cbr /\u003e\n\n\u003e **Step 3** - Start in development mode\n\n```bash\n$ npm run start \n// OR\n$ yarn start\n```\n\n\u003cbr /\u003e\n\nAt this point, the app is available in the browser `localhost:3000` (the default address).\n\n\n\u003cbr /\u003e \n\n### 👉 Start the Backend Server \n\n\u003e **Step 1** - Change the directory to `api-nodejs`\n\n```bash\n$ cd api-nodejs\n```\n\n\u003cbr \u003e\n\n\u003e **Step 2** - Install dependencies via NPM or yarn\n\n```bash\n$ npm i\n// OR\n$ yarn\n```\n\n\u003cbr /\u003e\n\n\u003e **Step 3** - Run the SQLite migration via TypeORM\n\n```bash\n$ npm run typeorm migration:run\n// OR \n$ yarn typeorm migration:run\n```\n\n\u003cbr /\u003e\n\n\u003e **Step 4** - Start the API server (development mode)\n\n```bash\n$ npm run dev\n// OR\n$ yarn dev\n```\n\nThe API server will start using the `PORT` specified in `.env` file (default 5000).\n\n\u003cbr /\u003e \n\n## 👉 Codebase Structure\n\n```bash\n\u003c ROOT / src \u003e\n     | \n     |-- config/                              \n     |    |-- config.ts             # Configuration       \n     |    |-- passport.ts           # Define Passport Strategy             \n     | \n     |-- migration/\n     |    |-- some_migration.ts     # database migrations\n     |\n     |-- models/                              \n     |    |-- activeSession.ts      # Sessions Model (Typeorm)              \n     |    |-- user.ts               # User Model (Typeorm) \n     | \n     |-- routes/                              \n     |    |-- users.ts              # Define Users API Routes\n     | \n     | \n     |-- index.js                   # API Entry Point\n     |-- .env                       # Specify the ENV variables\n     |                        \n     |-- ************************************************************************\n```\n\n\u003cbr /\u003e\n\n## 👉 SQLite Path\n\nThe SQLite Path is set in `.env`, as `SQLITE_PATH`\n\n\u003cbr /\u003e\n\n## 👉 Database migration\n\n\u003e Generate migration:\n\n```bash\n$ yarn typeorm migration:generate -n your_migration_name\n```\n\n\u003e run migration: \n\n```bash\n$ yarn typeorm migration:run\n```\n\n\u003cbr /\u003e\n\n## [React Datta Able PRO](https://app-generator.dev/product/datta-able-pro/full-stack/react/)\n\n\u003e The premium version provides more features, priority on support, and is more often updated - [Live Demo](https://react-datta-pro.onrender.com).\n\n- `Enhanced UI` - more pages and components\n- JWT Authentication\n- `Priority` on support\n\n![React Datta Able PRO - Full-Stack Starter generated by AppSeed.](https://user-images.githubusercontent.com/51070104/174492290-a581dc5f-6b4a-4f5e-822e-419a8b96a480.png)\n\n\u003cbr /\u003e\n\n---\n**[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/)**.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapp-generator%2Freact-datta-able-nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapp-generator%2Freact-datta-able-nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapp-generator%2Freact-datta-able-nodejs/lists"}