A survey tool for any worker cooperative.
- Able to create, manage and compute votes on a variety of topics
- Should be able to restrict email domains to only allow members to vote
- Should be able to restrict votes to only allow members to vote
- The voting process:
- A survey is created and filled with options
- A survey is sent to members
- Members vote on the survey through a link sent via OTP email ink (magic link)
- The results are computed and displayed (or not) to the user
- Should be able to restrict voting during a certain time period
- Restrict one vote per email
- After voting time is over, the results are computed and displayed
- [] Describe each page in models
- [] Prototype each page layout
- [] Create API for each resource
Home page of this system. It should display a list of surveys that are currently active, and historical surveys.
Display the survey and offers to user a capability to vote and its results and voting is over. If survey is active, it should display a OTP form to send a magic link to the user, when clicked should redirect to the vote page. If surver is ended, it should display the results.
Display the survey, it's options and a form to vote. When submitted, it should redirect to the survey page with a status message.
This is a Next.js project bootstrapped with create-next-app
.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx
. The page auto-updates as you edit the file.
API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.ts
.
The pages/api
directory is mapped to /api/*
. Files in this directory are treated as API routes instead of React pages.
This project uses next/font
to automatically optimize and load Inter, a custom Google Font.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.