# Getting Started

This documentation will cover the installation on your localhost machine, project architecture and working with the app in general.

The registration system includes both a Backend API written using NodeJS & MongoDB and a Frontend written as a Universal React Redux App.

**Demo:** [**Link**](https://react-redux-reg.herokuapp.com/)

**Github Project Repository:** [**Link**](https://github.com/simpletut/Universal-React-Redux-Registration)

![Screenshot - Registration Page includes async validation (Redux-Form)](https://4130025649-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LNXj_3SyYsU62AS4bjp%2F-LNfhwoBbf1O64cj-vh0%2F-LNfi0kyRhMTHUz9Uebf%2Fscreencapture-react-redux-reg-herokuapp-register-2018-09-30-19_22_15.png?alt=media\&token=b4a32ef3-c939-4575-9282-63c46ddf284d)

#### Front includes:

Registration, Login, Dashboard, Email Password, Logout

Account Update, 404 (Not Found)

The User Registration System is **Fully Responsive** out the box and you can **Restrict Access** to any page!

#### Tech Stack:

* NodeJS
* React
* Server-side Rendered
* Redux
* Redux-Thunk
* Redux-Form
* MongoDB
* Mongoose
* JSON Web Tokens
* Webpack 4
* Babel 7
* Express
* SASS

#### Top Features:

* Async Validation (Redux-Form)
* Winston - Better error handling/logging
* Bcrypt password encryption/verification
* Nodemailer – Custom mail server used to send password reset emails
* Custom ‘Password Reset’ Template (Built with MJML Framework)
* Multiple Layouts – Create unlimited layouts for pages/routes
* Unit Tests
* Toastr - Simple javascript toast notifications
* 100% FREE & Open Source

### Software

Before proceeding, please ensure you have the following software installed on your computer.

* Node
* Yarn (optional but recommended)
* Git command line tools

#### Useful links

* Download Git CLT - Windows: <https://git-scm.com/download/windows> Mac: <https://git-scm.com/download/mac>
* Download Node - <https://nodejs.org/en/>
* Download Yarn CLT - <https://yarnpkg.com/lang/en/docs/install/>
* Download VSCode - <https://code.visualstudio.com/>

### Acknowledgements

This software was developed by Ashley Bibizadeh.

### License

The User Registration System is open source software licensed as MIT.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://simpletut.gitbook.io/universal-react-redux-registration/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
