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

https://github.com/parvin-noori/horizon

A scalable dashboard built with modern React tools and authentication.
https://github.com/parvin-noori/horizon

axios dndkit heroui i18next react-hook-form react-query react-router react-toastify reactjs recharts reduxt-toolkit supabase-auth swiper-slider tailwind typescript

Last synced: 2 months ago
JSON representation

A scalable dashboard built with modern React tools and authentication.

Awesome Lists containing this project

README

          

# ๐ŸŒŒ Horizon Dashboard

**Horizon** is a modern, customizable **React dashboard template** built with a feature-based architecture, focusing on scalability, performance, and rich user experience.

## ๐Ÿ”— Live Demo

๐Ÿ‘‰ **Vercel Preview:**
[https://your-vercel-link.vercel.app](https://horizon-hazel-delta.vercel.app/)

---

## ๐Ÿ” Authentication (Supabase)

This dashboard uses **Supabase Auth** to simulate a real-world authentication flow.

- Authentication is required to access the dashboard
- Login is handled via **Email & Password**
- Supabase returns a **JWT access token**
- The token is stored in **LocalStorage** (demo purpose)
- Protected routes prevent unauthorized access

> โš ๏ธ Note: Due to Supabase access restrictions, a VPN may be required to use the authentication features in some regions

> โš ๏ธ This authentication flow is implemented **for demo purposes only**.

### ๐Ÿงช Demo Credentials
- **Email:** adeleParkson@user.com
- **Password:** abc@123

---

## ๐Ÿ–ผ login

At first you face the login page, because the nature of dashboard panels, which is authenticated:

![Horizon Dashboard Preview](https://github.com/parvin-noori/horizon/blob/main/public/imgs/signIn.png)

> We've used **supabase** login api to get an access token for working like a real authorization scenarios .
> **(Note that you should always login with this username and password to access to dashboard )**.

## ๐Ÿ–ผ Dashboard
well, when you successfully logged in, you'll face the dashboard layout which we really love it:

![Horizon Dashboard Preview](https://github.com/parvin-noori/horizon/blob/main/public/imgs/dashboard.png)
![Horizon Dashboard Preview](https://github.com/parvin-noori/horizon/blob/main/public/imgs/kanban.png)

---

## โœจ Features

- โš›๏ธ Built with **React**
- ๐Ÿงฉ **Feature-Based Architecture**
- ๐Ÿง  **Redux Toolkit** for global state management
- ๐Ÿ”„ **React Query** for server-state management
- ๐Ÿงฒ **Drag & Drop** powered by **@dnd-kit**
- ๐Ÿ’พ **Persistent dashboard layout** using LocalStorage
- ๐ŸŒ— **Dark / Light theme support**
- ๐ŸŽจ Styled with **Tailwind CSS**
- ๐Ÿ“Š Interactive charts with **Recharts**
- ๐Ÿงญ Sliders & carousels using **Swiper**
- ๐Ÿ“ Forms handled by **React Hook Form**
- ๐Ÿ“ฆ Dynamic data loaded from local JSON files
- ๐Ÿ“ฑ Fully responsive dashboard UI
- ๐Ÿ” Authentication with **Supabase**
- ๐ŸŒ Multi-language support with i18next
- ๐Ÿ› ๏ธ Full TypeScript support for better type safety and developer experience

---

## ๐Ÿงฑ Tech Stack

- **React**
- **Redux Toolkit**
- **React Query**
- **Tailwind CSS**
- **Supabase Auth**
- **@dnd-kit**
- **Recharts**
- **Swiper**
- **React Hook Form**
- **Vite**
- i18next / react-i18next
- TypeScript

---

## ๐Ÿ”’ Route Protection

Dashboard routes are protected by checking authentication state before rendering.

Unauthorized users are redirected to the login page.