Warning
This project is under active development. The deployed website may not always reflect the latest code in this repository. For the most accurate and up-to-date implementation, please refer to the source code here rather than the live demo.
A premium, cross-platform application designed for PlayArea businesses to manage digital customer check-ins, wallet top-ups, and point-of-sale functionality securely using QR code scanning capabilities.
Built with a modernized tech stack:
- Frontend: React (Vite) + Vanilla CSS (Glassmorphism UI)
- Backend: Django REST Framework (Python) or Flask
- Desktop App: Tauri 2 (Rust)
🌍 Live Web API: https://aaronschristo.pythonanywhere.com/api/
Venuity has been upgraded to a modular architecture, replacing the legacy Vanilla JS implementation with a scalable React Single Page Application (SPA).
backend/: The Python Django REST Framework backend API and SQLite Database (db.sqlite3).frontend/: The React + Vite application containing all UI components (src/components,src/pages), routing, and API integration.src-tauri/: The Rust-based environment that wraps the frontend into a native Desktop executable.
- Node.js (v18+)
- Rust (Required for Tauri)
- Python 3.10+ (Required for local backend)
Open your terminal in the root venuity project directory:
# Install Node.js dependencies
npm install
# Start the Tauri Developer Environment (runs Vite + Rust watcher)
npm run devNote: This command will automatically start the Vite dev server for the React app and launch the Tauri desktop window.
By default, the React frontend is configured to communicate with the production cloud server. If you want to test against a local backend, you need to update the Axios configuration.
- Open
frontend/src/lib/api.jsin your code editor. - Update the
baseURLproperty:
// frontend/src/lib/api.js
const api = axios.create({
// For Production:
baseURL: 'https://aaronschristo.pythonanywhere.com/api/',
// For Local Django Development (Uncomment below):
// baseURL: 'http://127.0.0.1:8000/api/',
timeout: 10000,
});If you wish to run the backend locally instead of relying on the cloud server, follow these steps:
Open a new terminal in the root venuity directory:
# 1. Activate the virtual environment
# On Windows:
.\venv\Scripts\activate
# On macOS / Linux:
source venv/bin/activate
# 2. Navigate to the backend directory
cd backend
# 3. Install required Python packages (if not already installed)
pip install -r ../requirements.txt
# 4. Run the Django Server
python manage.py runserverThe local server will start running at
http://127.0.0.1:8000. Remember to updateapi.jsto point to this URL.
To compile Venuity into a standalone executable (e.g., .exe for Windows) for distribution:
- Ensure all frontend assets build successfully.
- Run the Tauri build command from the project root:
npm run tauri buildThe final installer/executable will be generated in src-tauri/target/release/bundle/.
- Initialize Settings: Start by going to Settings. Set your Business Name, Currency Symbol, and standard Check-in Fee.
- Issue Customers: Head to Customers to generate accounts.
- Recharge Wallets: Head to Recharge to add money to customer accounts (supports QR auto-fill).
- Scan Passes: Open Check-in, point the camera at a customer's QR code, and watch the system automatically debit their wallet.
- Insights: Track your revenue and visitor counts through the Analytics dashboard featuring interactive charts.