- Implemented `handleAuthLogout` to support user logout by clearing session cookies. - Improved `/api/auth/status` with authentication cookie validation for persistent login state. - Enhanced `App.jsx` to prevent UI flash during auth status checks and streamline logout flow. - Refined user profile handling and permission fetch logic for better reliability.
Orly Web Application
This is a React web application that uses Bun for building and bundling, and is automatically embedded into the Go binary when built.
Prerequisites
- Bun - JavaScript runtime and toolkit
- Go 1.16+ (for embedding functionality)
Development
To run the development server:
cd app/web
bun install
bun run dev
Building
The React application needs to be built before compiling the Go binary to ensure that the embedded files are available:
# Build the React application
cd app/web
bun install
bun run build
# Build the Go binary from project root
cd ../../
go build
How it works
- The React application is built to the
app/web/distdirectory - The Go embed directive in
app/web.goembeds these files into the binary - When the server runs, it serves the embedded React app at the root path
Build Automation
You can create a shell script to automate the build process:
#!/bin/bash
# build.sh
echo "Building React app..."
cd app/web
bun install
bun run build
echo "Building Go binary..."
cd ../../
go build
echo "Build complete!"
Make it executable with chmod +x build.sh and run with ./build.sh.