Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

ursteiner/dinosaur-exploder

Open more actions menu
 
 
Dinosaur Exploder - Classic Arcade Shooter

🦖 Dinosaur Exploder

An open-source learning platform disguised as a shoot 'em up game
Built with Java/FXGL and Next.js • Perfect for your first (or next) contribution

🚀 Quick Start 📋 Browse Issues 💬 Discord 🌐 Website


🎯 Why Contribute Here?

This isn't just a game—it's a real-world project designed for learning and collaboration. Whether you're looking to:

  • ✅ Make your first open-source contribution
  • ✅ Build experience with Java game development (JavaFX, FXGL)
  • ✅ Work with modern web tech (Next.js, TypeScript, React)
  • ✅ Practice Git workflows, CI/CD, and testing
  • ✅ Join a friendly community that helps each other learn

You're in the right place! 🎉

Like what you see? Star the repo to help others discover it!


🎥 What We're Building

dinosaur-exploder_v2.0.0.mp4

A classic arcade shooter with:

  • 🎮 Java game engine (JavaFX + FXGL)
  • 🌐 Next.js website for docs, galleries, and community features
  • 🔄 CI/CD pipeline with GitHub Actions
  • 🧪 Unit tests and best practices
  • 🔓 Open architecture for easy contributions

🚀 Quick Start for Contributors

Step 1: Pick Your Tech Stack

🎮 Java Game Development

Tech: Java 21, JavaFX, FXGL, Maven

Great if you want to learn:

  • Game development fundamentals
  • Entity systems and game loops
  • Collision detection
  • Audio/visual effects

Browse: Game issues →

🌐 Website Development

Tech: Next.js, TypeScript, React, Tailwind CSS

Great if you want to learn:

  • Modern React patterns
  • Server-side rendering
  • API integration (GitHub API)
  • Responsive design

Browse: Website issues →

Step 2: Set Up Your Environment

🎮 Java Setup (Click to expand)

Prerequisites

  • Java >=21 (Download)
    • You can download the Java Open JDK 21. You can download any JDK you want, it just needs to be version 21 or greater.
    • Run the command java --version to make sure Java >= 21 is installed.
    • The environment variable JAVA_HOME must be set (either you're on MacOS, Windows, Linux). You can check with the command echo $JAVA_HOME.
  • Git
  • IDE (IntelliJ IDEA recommended)

Installation

# 1. Fork the repo on GitHub
# 2. Clone your fork
git clone git@github.com:<your-username>/dinosaur-exploder.git
cd dinosaur-exploder

# 3. Build and run
mvn clean install
mvn javafx:run

# 4. (Optional) Install git hooks for code quality checks
./scripts/install-hooks.sh

# Or using an IDE: 
# - Open project in IntelliJ
# - Run com.dinosaur.dinosaurexploder.DinosaurApp or hit the run button at the top right

Testing

mvn test

Browser Version (Optional)

mvn jpro:run
# Open http://localhost:8080

📖 More details: Java Setup Guide

🌐 Website Setup (Click to expand)

Prerequisites

  • Node.js >=20 (Download)
  • Git
  • IDE (VS Code recommended for Next.js)

Installation

# 1. Fork the repo on GitHub
# 2. Clone your fork
git clone git@github.com:<your-username>/dinosaur-exploder.git
cd dinosaur-exploder/website

# 3. Install and run
npm install
npm run dev

# Open http://localhost:3000

Testing

npm test
npm run lint

📖 More details: Website Setup Guide

Step 3: Find an Issue

New to open source? Start here:

Ready for more? Check:

Have your own idea? Open a discussion first!

Step 4: Make Your Contribution

  1. Create a branch: git checkout -b feature/your-feature-name
  2. Make your changes (don't forget tests!)
  3. Commit: git commit -m "Add: description of your change"
  4. Push: git push origin feature/your-feature-name
  5. Open a Pull Request on GitHub

📖 Full guidelines: CONTRIBUTING.md


📚 Documentation & Resources


💬 Community & Support

Get help, share ideas, or just hang out:

Stuck? Don't hesitate to ask! We're here to help you learn. 🦖


🎮 Want to Just Play?

Requirements: Java 21

Download the latest release:

java -jar dinosaur-exploder-<platform>-<version>.jar

Controls: Arrow keys (move) • Space (shoot) • E (shield) • B (bomb) • Esc (pause)


🏗️ Project Background

I created this project in 2022 at Munster Technological University (MTU Cork) as a school assignment with two classmates. After the semester ended, I decided to transform it into something bigger: a welcoming space where developers can gain real-world experience through meaningful contributions.

The goal isn't perfection—it's learning by doing. Every issue is an opportunity, and every contributor makes this project better.


📊 Project Stats

Alt


📄 License

MIT License - see LICENSE for details.


Made with ❤️ by @jvondermarck and our amazing contributors

⭐ Star us on GitHub — it helps more developers find this project!

About

A classic inspired shoot em' up game written in Java with JavaFX and FXGL.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 85.5%
  • TypeScript 11.6%
  • CSS 1.8%
  • Other 1.1%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.