Quickstart
Get the LDS Stake Portal running locally in under 10 minutes
This guide gets you from zero to a running local instance. For production deployment, see Docker Compose or Manual deployment.
Prerequisites
- Node.js 18 or later
- Python 3.11 or later
- uv (Python package manager)
- Git
1. Clone the repository
git clone https://github.com/rc27122/LDS_Stake_Website-Template-2.git
cd LDS_Stake_Website-Template-22. Set up the backend
cd backend
uv syncCreate a .env file:
cat > .env << 'EOF'
DEV=true
PORT=8000
DB_ENGINE=sqlite
DATABASE_PATH=./database.db
INITIAL_ADMIN_PASSWORD=admin123
JWT_SECRET_KEY=change-me-to-a-random-secret
SSL_ENABLED=false
SP_APPROVAL_THRESHOLD=2
HC_APPROVAL_THRESHOLD=3
EOFStart the backend (first run seeds the admin account):
uv run python main.pyOn first launch, the backend creates the [email protected] account with your INITIAL_ADMIN_PASSWORD and loads ward data from wards.csv. You will be prompted to change the password on first login.
3. Set up the frontend
Open a new terminal:
cd frontend
npm install
npm run dev4. Open the portal
Navigate to http://localhost:3100 in your browser.
Log in with:
- Email:
[email protected] - Password: the value you set for
INITIAL_ADMIN_PASSWORD
You will be redirected to change your password before accessing the portal.
Next steps
Configure wards
Edit backend/wards.csv to add your stake's wards before first launch.
Environment variables
Full reference for all backend, frontend, and Discord bot configuration.
Production deployment
Deploy with Docker Compose for a production-ready setup.
User guide
Learn how to use the portal as a stake leader.