DefendDaniel is a thrilling courtroom drama game created during the MistralAI GameJam Hackathon, based on the theme "You don't control the main character." In this game, you step into the shoes of Daniel's defense lawyer.
Daniel is just an ordinary guy who hasn't done anything wrong—or so he claims. Yet, here he is, summoned to court. Daniel doesn't have much money, which is why he's chosen you, dear counselor, to defend him. But you're not an ordinary lawyer.
You possess a strange Neuralink implant that whispers words into your mind, and not everything seems right with you upstairs. Will you rise to the challenge and deliver justice for Daniel, or will your "special" condition jeopardize your case?
Your mission: Defend Daniel within a one-minute time frame, using key phrases imposed by your Neuralink implant. Construct your arguments wisely—those mandatory words might just ruin your defense if you're not careful!
| Menu Screen | Courtroom Scene |
|---|---|
![]() |
![]() |
![]() |
![]() |
| Lawyer's Office | Verdict Scene |
| Feature | Status |
|---|---|
| Enhanced Prompts | 🔵 |
| Background Music | 🔵 |
| Dynamic Case Scenarios | 🔵 |
| Leaderboard System | 🔵 |
| Responsive Mode | 🔵 |
| Introduction Text Layout | 🔵 |
Legend:
- 🟡 In Progress: Currently being developed
- 🔵 Planned: On the roadmap
- 🟢 Completed: Ready to use
-
Clone the Repository
git clone https://github.com/yourusername/DefendDaniel.git cd DefendDaniel -
Configure Environment Variables
cp .env.example .env
Open
.envfile and fill in the required API keys and configuration values -
Install Dependencies Using pnpm (preferred):
pnpm install
Alternatively, you can use npm:
npm install
-
Run the Development Server
pnpm run dev
Navigate to http://localhost:3000 in your browser to start playing.
-
Build for Production
pnpm build
Then run
pnpm start -
Docker (Optional)
docker build -t defenddaniel . docker run -p 7860:7860 defenddaniel
We welcome and appreciate contributions from the community! Here's how you can contribute:
- 🐛 Bug Reports: Create an issue describing the bug and how to reproduce it
- ✨ Feature Requests: Suggest new features or improvements
- 📝 Documentation: Help improve or translate the documentation
- 💻 Code Contributions: Submit pull requests with bug fixes or new features
-
Fork the Repository
git clone https://github.com/your-username/DefendDaniel.git
-
Create a Branch
git checkout -b feature/your-feature-name
-
Make Your Changes
- Follow the existing code style
- Add comments where necessary
- Update documentation if needed
-
Test Your Changes
- Ensure all existing tests pass
- Add new tests if needed
- Test the application locally
-
Submit a Pull Request
- Provide a clear description of the changes
- Reference any related issues
- Update the README if needed
- Use TypeScript for all new code
- Follow the existing project structure
- Use meaningful commit messages
- Keep pull requests focused on a single feature or fix
- Add appropriate documentation for new features
Feel free to create an issue for:
- Questions about the codebase
- Clarification on how to implement a feature
- Discussion about potential improvements
We aim to review all contributions within a week. Thank you for helping improve DefendDaniel! 🙏
⚖️ Good luck defending Daniel! The courtroom is yours.



