Skip to content

Commit 19ca0a5

Browse files
committed
docs: restore and update README for v1.1.3
1 parent d12aac9 commit 19ca0a5

1 file changed

Lines changed: 108 additions & 0 deletions

File tree

README.md

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# ModNVote
2+
3+
**Modern, transparent community voting for PaperMC 1.21.x**
4+
5+
A privacy-first, lightweight, and production-ready **yes/no voting plugin** for Minecraft servers — designed for modern communities that value fairness, trust, and data integrity.
6+
ModNVote is built by [**MODN METL LTD**](https://modnmetl.com) and open-sourced to promote transparent community decision-making.
7+
8+
![CI](https://github.com/MODNMETL/ModNVote/actions/workflows/ci.yml/badge.svg)
9+
![Java](https://img.shields.io/badge/Java-21-007396)
10+
![Paper](https://img.shields.io/badge/Paper-1.21.x-blue)
11+
![License: MIT](https://img.shields.io/badge/License-MIT-green)
12+
![Release](https://img.shields.io/github/v/release/MODNMETL/ModNVote?display_name=tag)
13+
14+
---
15+
16+
## ✨ Features
17+
18+
- `/modnvote yes` or `/modnvote no` — anonymous voting (1 per UUID).
19+
- `/modnvote status` — displays live YES/NO tallies.
20+
- `/modnvote verify` — cryptographically validates vote integrity.
21+
- `/modnvote audit` — shows how many votes came from bypass-permitted users.
22+
- `/modnvote fullaudit` — groups voters by IP to check for irregularities (no vote disclosure).
23+
- `/modnvote reset` — admin command to clear all votes.
24+
- `/modnvote reload` — reloads configuration without restarting the server.
25+
- **IP-based duplicate prevention** with configurable bypass permission.
26+
- **SQLite persistence** for reliability and restart safety.
27+
- **Integrity hashing** ensures tallies cannot be silently altered.
28+
- **PlaceholderAPI support** for scoreboard and UI integration.
29+
30+
> ModNVote is a successor to the PineVote plugin, rebuilt for broader use under the MODN METL brand.
31+
32+
---
33+
34+
## ⚙️ Configuration
35+
36+
Default excerpt from `config.yml`:
37+
38+
```yaml
39+
permissions:
40+
bypass_node: modnvote.bypass # or use your existing alt-protection node (e.g. noaltsexploit.bypass)
41+
42+
logging:
43+
audit_votes_to_console: true # Logs when a vote is recorded (never reveals who voted for what)
44+
audit_bypass_to_console: true # Logs bypass usage (without disclosing vote choice)
45+
```
46+
47+
> 🧠 ModNVote never logs **what** a player voted — only that a valid vote was recorded.
48+
> This keeps your voting process auditable yet fully private.
49+
50+
---
51+
52+
## 🧭 Roadmap
53+
54+
- [ ] MySQL database support for large networks
55+
- [ ] Configurable voting periods with automatic start/end
56+
- [ ] Player login reminders about active votes
57+
- [ ] Admin confirmation before vote resets
58+
- [ ] `/modnvote stop` command to end voting early (without wiping results)
59+
- [ ] Multi-question polls and rich voting UIs
60+
61+
Want to contribute ideas or code? Open an issue or pull request!
62+
63+
---
64+
65+
## 🤝 Contributing
66+
67+
Contributions are welcome and encouraged.
68+
Please fork the repository and submit a pull request via GitHub — following standard Java + Paper plugin best practices.
69+
70+
Before submitting, ensure your code:
71+
- Passes `gradlew build` without warnings or errors
72+
- Uses modern Java 21 syntax and adheres to the existing style
73+
- Includes concise comments for non-trivial logic
74+
75+
---
76+
77+
## 🔐 Security
78+
79+
If you discover a vulnerability, please **do not** post it publicly.
80+
Instead, email the maintainers at **security@modnmetl.com**.
81+
Responsible disclosure ensures fixes can be deployed before details are released.
82+
83+
---
84+
85+
## 📜 License
86+
87+
This project is licensed under the **MIT License** — see the [LICENSE](./LICENSE) file for details.
88+
You are free to use, modify, and distribute this software with attribution.
89+
90+
```
91+
Copyright (c) 2025 MODN METL LTD
92+
Developed by Jamie Edward Thompson (@jamjet3)
93+
```
94+
95+
---
96+
97+
## 🏗️ Credits
98+
99+
- **Development Lead:** [Jamie Edward Thompson](https://github.com/jamjet3)
100+
- **Maintainer:** [MODN METL LTD](https://github.com/MODNMETL)
101+
- **Community Testing:** Pinecraft Equestrian SMP
102+
- **Build System:** Gradle + ShadowJar
103+
- **Supported Platforms:** PaperMC 1.21.x
104+
105+
---
106+
107+
> “Trust, but verify.” — The guiding principle behind **ModNVote**
108+
> Built to help communities make fair, transparent decisions — the modern way.

0 commit comments

Comments
 (0)