An open API service indexing awesome lists of open source software.

https://github.com/its-me-ak/authflow

AuthFlow is a full-stack auth system using React, Tailwind CSS, Zustand, Node.js, Express, and MongoDB. It offers a clean UI with secure sign-up, login, session handling, and protected routes perfect as a starter kit for modern web apps needing robust authentication.
https://github.com/its-me-ak/authflow

expressjs jwt mongodb motion nodejs react-router-dom reactjs tailwindcss zustand

Last synced: 4 months ago
JSON representation

AuthFlow is a full-stack auth system using React, Tailwind CSS, Zustand, Node.js, Express, and MongoDB. It offers a clean UI with secure sign-up, login, session handling, and protected routes perfect as a starter kit for modern web apps needing robust authentication.

Awesome Lists containing this project

README

          

# AuthFlow

A project by [Its-me-ak](https://github.com/Its-me-ak)

[![Stars](https://img.shields.io/github/stars/Its-me-ak/AuthFlow?style=social)](https://github.com/Its-me-ak/AuthFlow)
[![Forks](https://img.shields.io/github/forks/Its-me-ak/AuthFlow?style=social)](https://github.com/Its-me-ak/AuthFlow)
[![Open Issues](https://img.shields.io/github/issues/Its-me-ak/AuthFlow)](https://github.com/Its-me-ak/AuthFlow/issues)

![JavaScript](https://img.shields.io/badge/JavaScript-%23F7DF1E.svg?style=for-the-badge&logo=javascript&logoColor=black)
![Express.js](https://img.shields.io/badge/Express.js-%23404d59.svg?style=for-the-badge)
![JWT](https://img.shields.io/badge/JWT-black?style=for-the-badge&logo=JSON%20web%20tokens)
![MongoDB](https://img.shields.io/badge/MongoDB-%234EA94B.svg?style=for-the-badge&logo=mongodb&logoColor=white)
![Node.js](https://img.shields.io/badge/Node.js-%23339933.svg?style=for-the-badge&logo=node.js&logoColor=white)
![React](https://img.shields.io/badge/React-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB)
![React Router](https://img.shields.io/badge/React_Router-CA4245?style=for-the-badge&logo=react-router&logoColor=white)
![Tailwind CSS](https://img.shields.io/badge/Tailwind_CSS-%2338B2AC.svg?style=for-the-badge&logo=tailwind-css&logoColor=white)
![Zustand](https://img.shields.io/badge/Zustand-black?style=for-the-badge&logo=zustand&logoColor=white)

This project utilizes a modern tech stack to provide a robust authentication flow.

**Homepage:** [https://authflow-wt2e.onrender.com/](https://authflow-wt2e.onrender.com/)

## 🚀 Installation

Follow these steps to get the project up and running on your local machine.

### Prerequisites

Before you begin, ensure you have the following installed:

* [Node.js](https://nodejs.org/en/) (v18 or higher)
* [npm](https://www.npmjs.com/) (v6 or higher) or [Yarn](https://yarnpkg.com/)
* [MongoDB](https://www.mongodb.com/)

### Steps

1. **Clone the repository:**

```bash
git clone https://github.com/Its-me-ak/AuthFlow.git
cd AuthFlow
```

2. **Install dependencies:**

* **Backend:**

```bash
cd backend
npm install
cd ..
```

* **Frontend:**

```bash
cd frontend
npm install
cd ..
```

3. **Configure environment variables:**

* Create a `.env` file in the `backend` directory.
* Add the following variables, replacing the placeholders with your actual values:

```
NODE_ENV=development # or production
MONGODB_URI=
JWT_SECRET=
# Add other necessary environment variables
```

4. **Run the application:**

* **Backend:**

```bash
cd backend
npm run dev # or npm run start for production
cd ..
```

* **Frontend:**

```bash
cd frontend
npm start
cd ..
```

## ✨ Key Features

* **Secure Authentication:** Implements JWT (JSON Web Tokens) for secure user authentication.
* **User Management:** Provides functionalities for user registration, login, and profile management.
* **Modern Tech Stack:** Built with Express.js, React, Tailwind CSS, and other modern technologies.
* **Database Integration:** Uses MongoDB for storing user data and other application data.
* **Responsive Design:** The frontend is built with Tailwind CSS, ensuring a responsive and user-friendly experience across different devices.
* **State Management:** Utilizes Zustand for efficient state management in the React frontend.

## 🤝 Contributing

Contributions are welcome! Here's how you can contribute:

1. Fork the repository.
2. Create a new branch for your feature or bug fix.
3. Make your changes and commit them with descriptive commit messages.
4. Push your changes to your fork.
5. Submit a pull request to the main branch of the original repository.

Please ensure your code follows the project's coding style and includes appropriate tests.
```