Team Assigner is a powerful and user-friendly web application designed to automate the process of team formation.
Whether you're organizing a classroom activity, a group project, or a fun competition, Team Assigner makes it effortless to create balanced and random teams.
✅ Now supports CSV & PDF downloads
✅ Includes custom fonts with jsPDF
✅ Deployed with CI/CD on Vercel for seamless updates
- 🔢 Dynamic Input: Enter the total number of members and members per team.
- 🎲 Randomized Teams: Teams are generated randomly and uniquely every time.
- 📄 CSV Download: Export the team formation as a CSV file.
- 📑 PDF Download: Save teams as a neat PDF using jsPDF.
- 🔠 Custom Fonts: Embedded fonts for better PDF styling.
- 🔄 Reset Option: Clear inputs and results with a single click.
- 📱 Responsive Design: Works seamlessly on desktop & mobile.
- ⚡ CI/CD Deployment: Automatic deployment to Vercel on push.
👉 Click here to try it on Vercel
👉 Or GitHub Pages Demo
- Clone the repository:
git clone https://github.com/Bothinath-B/Team-assigner.git
- Navigate to the project directory:
cd Team-assigner - Install dependencies (if any):
npm install
- Open the application:
Or simply open
npm run dev # if using Viteindex.htmlin your browser:(On macOS/Linux, usestart index.html
open index.html)
- HTML5 – Structuring the webpage
- CSS3 – Styling and responsive design
- JavaScript (ES6) – Team assignment logic
- jsPDF – For generating downloadable PDF reports
- Custom Fonts (TTF) – Embedded with jsPDF
- Vercel (CI/CD) – Automatic deployment
- Input the Total Members.
- Enter the Members Per Team.
- Click Assign Teams to generate random teams.
- View results in the Result Section.
- Click Download CSV or Download PDF to export the team list.
- Click Reset to clear inputs and outputs.
Team-assigner/
│
├── .github/
├── .vite/
├── assets/
│ ├── Caveat-Regular.ttf
│ ├── EduNSWACTCursive-VariableFont_wght.ttf
│ ├── registerCaveat.js
│ └── registerEduFont.js
│
├── node_modules/
├── index.html
├── script.js
├── style.css
├── .gitignore
├── README.md
└── package.json