We need to enhance our community engagement by promoting the roles and tools available for our community organizers. This task aims to create awareness and facilitate better collaboration among different roles within the community, including:
Co-organizers: Individuals who assist in organizing events and activities.
Envoys: Representatives who communicate between the community and the core team.
Core Team: The main group responsible for decision-making and leadership within the community.
Volunteers: Members who contribute their time and skills to support community initiatives.
Technical Implementation Details
Technology Stack
- Authentication Library: Auth.js (NextAuth.js v5)
- Framework: Next.js (App Router)
- Database: MySQL (via Drizzle ORM)
- Email Service: NodeMailer / Resend
Database Schema Requirements
- User table with authentication fields
- Account table for OAuth provider links
- Session table for session management
- Verification token table for email verification and password resets
Environment Variables Required
env AUTH_SECRET="your-auth-secret" AUTH_URL="http://localhost:3000" (or production URL) # OAuth Providers GOOGLE_CLIENT_ID="your-google-client-id" GOOGLE_CLIENT_SECRET="your-google-client-secret" WIKIMEDIA_CLIENT_ID="your-wikimedia-client-id" WIKIMEDIA_CLIENT_SECRET="your-wikimedia-client-secret" # Email Configuration SMTP_HOST="your-smtp-host" SMTP_PORT="587" SMTP_USER="your-smtp-user" SMTP_PASSWORD="your-smtp-password"