Skip to content

originOpenPulse/pulse-admin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RBAC Fullstack Starter

A full-stack starter built with Vue 3 + Vite + TypeScript and Spring Boot 3 + JPA + Security.

Features

  • Login authentication
  • JWT-based authorization
  • RBAC permission model
  • User, role, and permission management APIs
  • Frontend route guards and permission-aware navigation

Project Structure

  • frontend: Vue + Vite application
  • backend: Spring Boot 3 service
  • .tasks: task notes

Demo Accounts

  • Admin: admin / admin123
  • Auditor: auditor / auditor123

Run Backend

cd backend
mvn spring-boot:run

The default profile is local, which uses in-memory H2 for quick startup.

To run with MySQL:

cd backend
mvn spring-boot:run -Dspring-boot.run.profiles=mysql

Required environment variables for MySQL mode:

  • MYSQL_URL
  • MYSQL_USERNAME
  • MYSQL_PASSWORD
  • APP_JWT_SECRET

Run Frontend

cd frontend
npm install
npm run dev

Default API base URL:

  • http://localhost:8080/api

Implemented APIs

  • POST /api/auth/login
  • GET /api/auth/me
  • GET /api/admin/users
  • POST /api/admin/users
  • PUT /api/admin/users/{id}
  • DELETE /api/admin/users/{id}
  • GET /api/admin/roles
  • POST /api/admin/roles
  • PUT /api/admin/roles/{id}
  • DELETE /api/admin/roles/{id}
  • GET /api/admin/permissions
  • POST /api/admin/permissions
  • PUT /api/admin/permissions/{id}
  • DELETE /api/admin/permissions/{id}

Current Stage

The project is now a workable foundation for:

  • Switching from H2 to real MySQL tables
  • Adding richer CRUD flows and assignment flows
  • Introducing audit logs and stronger error handling
  • Expanding backend, frontend, and end-to-end tests

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors