Student - full-stack e-voting system for a university using React (TypeScript) for the frontend, Node.js (Express + TypeScript) for the backend,...
Generated Prompt
## APPLICATION OVERVIEW The KUSA E-VOTING SYSTEM is a full-stack web application designed to facilitate secure, anonymous voting for university elections. It allows students to register, vote, and view election results while enabling administrators to manage polls, candidates, and voter eligibility. The application emphasizes modularity, security, and a user-friendly interface. ## CORE FEATURES 1. **User Authentication**: Secure login for students and admins using JWT for role-based access control, including password reset and OTP verification for added security. 2. **Voting Interface**: Students can view active polls, select candidates, and cast votes, with real-time confirmation of their voting status. 3. **Admin Dashboard**: Admins can manage elections, candidates, and view detailed reports on voter registration, election participation, and voting results. 4. **Candidate Registration Workflow**: A controlled process for candidates to register, including eligibility checks and admin approvals before appearing on the ballot. 5. **Results Visualization**: Post-election results displayed with charts and downloadable reports, allowing users to view voting outcomes clearly. 6. **Profile Management**: Users can view and edit their profiles, including personal information and voting history. ## DESIGN SPECIFICATIONS - **Visual Style**: minimalist - Clean, simple design with plenty of white space, minimal color palette, and focus on typography - **Color Mode**: Light theme with dark text on light backgrounds - **Primary Color**: #1978E5 (accent for buttons, links, highlights) - **Typography**: Use Inter from Google Fonts for headings, Inter for body text and UI elements - **Border Radius**: 8px (moderately rounded) for buttons, cards, and inputs - **Layout**: The application will feature a top navigation bar for easy access to different pages (Home, Dashboard, Vote, Results, Profile) and a consistent footer on each page for branding. ## TECHNICAL REQUIREMENTS - **Framework**: React with TypeScript - **Backend**: Node.js with Express and TypeScript - **Database**: PostgreSQL - **Styling**: Tailwind CSS for responsive design - **UI Components**: shadcn/ui - **State Management**: Context API or Zustand ## IMPLEMENTATION STEPS 1. **Set Up the Project Structure**: - Create separate directories for the frontend and backend (e.g., `/frontend`, `/backend`). - Initialize the React project with TypeScript and install necessary packages (React Router, Axios, Tailwind CSS, etc.). 2. **Backend Development**: - Set up PostgreSQL and create tables as specified in the requirements. - Implement user authentication with separate routes for students and admins. - Create endpoints for managing elections, candidates, and votes. - Integrate OTP functionality for user verification and password resets. 3. **Frontend Development**: - Build out pages using React components for login, registration, voting, results, and admin functionalities. - Use React Router for page navigation. - Implement forms for user input and ensure validation. - Connect frontend API calls to backend endpoints using Axios or fetch. 4. **Styling and Design**: - Apply Tailwind CSS for consistent styling across components. - Ensure responsive design for mobile and desktop views. - Use the specified typography and color scheme throughout the application. 5. **Testing and Deployment**: - Conduct thorough testing for both frontend and backend components to ensure all features work as intended. - Deploy the application using a suitable platform (e.g., Heroku, Vercel) and set up environment variables for sensitive data. ## USER EXPERIENCE Users will have a seamless experience starting from the homepage, where they are greeted with a welcoming message and a list of active polls. Students can easily navigate to login, view results, or access their profile. Once logged in, they can participate in elections, and upon voting, receive immediate confirmation of their status. Admins will have a dedicated dashboard to oversee elections and manage candidates, ensuring a smooth administrative process. The application will maintain a clear separation between student and admin functionalities for enhanced security and usability.
Loved by thousands of makers from
From early prototypes to real products, they started here.







































Generate optimized prompts for your vibe coding projects
Generate prompt
Enter a brief description of the app you want to build and get an optimized prompt
Review and use your prompt
Review (and edit if necessary) the generated prompt, then copy it or open it directly in your chosen platform
Get inspired with new ideas
Get AI-generated suggestions to expand your product with features that will surprise your users
Frequently Asked Questions
Everything you need to know about creating better prompts for your Lovable projects
Still have questions?
Can't find what you're looking for? We're here to help!
