/flowbite-astro-admin-dashboard

Open-source admin dashboard template built with Astro, Flowbite, and Tailwind CSS

Primary LanguageAstroMIT LicenseMIT

version license GitHub issues open GitHub issues closed

Flowbite Admin Dashboard Live Preview

This project is a free and open-source UI admin dashboard template built with the components from Flowbite and based on the utility-first Tailwind CSS framework featuring charts, tables, widgets, CRUD layouts, modals, drawers, and more.

This admin dashboard can quickly help you get started building an application for your project using the newest UI/UX development technologies in the open-source area including Tailwind CSS and Flowbite.


Open in StackBlitz Open with CodeSandbox

Table of Contents

Click to expand

πŸ•Ή Demo pages

Dashboard Stacked Layout Products (CRUD)
Dashboard Stacked Layout Products (CRUD)
Users (CRUD) Settings Pricing page
Users (CRUD) Settings Pricing page
Login page Register page Reset password
Login page Register page Reset password
Forgot password Profile lock Maintenance page
Forgot password Profile lock Maintenance page
404 not found 500 server error Playground
404 not found 500 server error Playground

πŸŒ€ Built with Flowbite

The interactive components such as the navbars, modals, drawers, and tooltips are all based on the popular open-source component library called Flowbite which enables us to use these elements by creating more complex set of pages and widgets inside a fully-fledged admin dashboard template.

πŸ’¨ Tailwind CSS utility classes

All of the pages, widgets, and components are solely based on the utility-first classes from Tailwind CSS and it is compatible with the latest v3.x of the technology by automatically purging all of the classes based on the template paths.

πŸ“Š 15 example pages

Get started with 15 advanced examples pages including two different layouts of a dashboard's homepage full of charts widgets, tables, datepickers, and statistics and also with two CRUD layout pages for products, users, a settings page, authentication pages for login and register and even custom 404 and 500 error pages.

🧱 Advanced components

This admin dashboard contains many advanced components both from Flowbite but also from other third-party libraries such as ApexCharts which have been customly tailored with Tailwind CSS classes and designed based on the Flowbite Design System.

πŸ“š Flowbite documentation

If you want to use this project we recommend to also study the component library that we used to build this dashboard because you can use even more components from that library to enhance the examples that we've coded here already.

πŸ‘¨β€πŸš€ Development

βš™οΈ Workflow

This product is built using the following widely used technologies:

πŸš€ Quick start

  1. Clone this repository or download the ZIP file
  2. Make sure that you have Node.js and NPM, PNPM or Yarn installed
  3. Install the project dependencies from the package.json file:
pnpm install
# or
npm install
# or
yarn

PNPM is the package manager of choice for illustration, but you can use what you want.

  1. Launch the Astro local development server on localhost:2121 by running the following command:
pnpm run dev

You can also build the project and get the distribution files inside the dist/ folder by running:

pnpm run build

Then, you can preview the generated build with a local web server:

pnpm run preview

For deployment, see the GitHub workflow, where you can plug your target (pre-configured for GitHub pages). See docs.astro.build/en/guides/deploy

Website is configured for static deployment, but you can flip it to Server-Side rendering by simply uncommenting output: "server" in the ./astro.config.mjs.


Project Structure

After cloning this repository, you'll find the following (simplified) structure:

πŸ›¬
β”œβ”€β”€ πŸ’§ data
β”‚   └── **/*.json                        # Satic data sources for REST etc.
β”‚
└── src
    β”‚
    β”œβ”€β”€ 🧱 app
    β”‚   └── **/*.astro                   # Application-wide components
    β”‚
    β”œβ”€β”€ 🌠 assets
    β”‚   └── **/*.{svg,…}                 # Transformable assets
    β”‚
    β”œβ”€β”€ 🧱 components
    β”‚   └── **/*.astro                   # Simple, atomic UI elements
    β”‚
    β”œβ”€β”€ πŸ“š lib
    β”‚   └── **/*.ts                      # Utilities (Databases, APIs…)
    β”‚
    β”œβ”€β”€ 🧱 modules
    β”‚   └── **/*.astro                   # Complex views made of elements
    β”‚
    β”œβ”€β”€ πŸ“‘ pages
    β”‚   β”œβ”€β”€ **/*.astro                   # File-based client routes
    β”‚   β”‚
    β”‚   └── 🌐 api
    β”‚        └── [...entities].ts        # Catch-all endpoint for CRUD ops.
    β”‚
    β”œβ”€β”€ πŸš€ services
    β”‚   └── *.ts                         # Server-side CRUD operations
    β”‚
    └── πŸ“ types
        └── *.ts                         # Data entities typings

πŸ›  Tools

Efforts have been put on fast onboarding and developer experience.

This project comes with extensive support for TypeScript, Astro, Tailwind, and VS Code.
It is configured with sensible defaults, a bit of opinions, plus some tricks to make it plays nice together.

  • TypeScript: strictest Astro's settings. Full-stack, type-safe code base
  • ESLint: featuring astro-eslint-parser + eslint-plugin-astro
  • Prettier: featuring prettier-plugin-astro (bundled with astro)
  • Editorconfig: conforming with prettier
  • VS Code: extensions recommendations, tooling settings
  • Tailwind: Astro integration (using Vite and PostCSS)
  • Flowbite: dependencies (core, typography), settings
  • GitHub: a pre-configured workflow for deployment (using PNPM cache)
  • Sandboxes: project is tested against and fully compatible with web containers

Feel free to hack those settings to cater for your own needs.

ide-tooling gh-workflow gh-workflow

Browser Support

At present, we officially aim to support the last two versions of the following browsers:

Resources

JavaScript Frameworks

Here's a list of compatible technologies and guides for Flowbite and Tailwind CSS:

The awesome open-source community also built and currently maintains the following standalone libraries for React, Vue, Svelte, and Angular:

We also wrote integration guides for the following front-end frameworks and libraries:

Back-end Frameworks

Flowbite has a great integration with most of the back-end frameworks because it relies on vanilla JavaScript:

Reporting Issues

We use GitHub Issues as the official bug tracker for Flowbite Admin Dashboard. Here are some advices for our users that want to report an issue:

  1. Make sure that you are using the latest version of Flowbite Admin Dashboard. Check the CHANGELOG from your dashboard on the GitHub releases page.
  2. Providing us reproducible steps for the issue will shorten the time it takes for it to be fixed.
  3. Some issues may be browser specific, so specifying in what browser you encountered the issue might help.

Technical Support or Questions

If you have questions or need help integrating the product please contact us instead of opening an issue.

Licensing

Useful Links

  • πŸ“š Flowbite Library - Open-source components built with Tailwind CSS
  • 🎨 Flowbite Figma - Design system built for Figma
  • 🧱 Flowbite Blocks - Building sections for website and applications
  • πŸ’Ž Flowbite Pro - A larger collection of the open-source version of the latter three

Authors