diff --git a/README.md b/README.md index 7b73c8687..e3765ca1f 100644 --- a/README.md +++ b/README.md @@ -1,29 +1,104 @@ -# OpenFront.io +# OpenFrontIO + +

+ + + + OpenFrontIO Logo + +

![Prettier Check](https://github.com/openfrontio/OpenFrontIO/actions/workflows/prettier.yml/badge.svg) -OpenFront is an online rts. +OpenFront is an online real-time strategy game focused on territorial control and alliance building. Players compete to expand their territory, build structures, and form strategic alliances in various maps based on real-world geography. This is a fork/rewrite of WarFront.io. Credit to https://github.com/WarFrontIO. -## Building +## 🌟 Features -To build the project, you will need to have Node.js and npm installed. +- **Real-time Strategy Gameplay**: Expand your territory and engage in strategic battles +- **Alliance System**: Form alliances with other players for mutual defense +- **Multiple Maps**: Play across various geographical regions including Europe, Asia, Africa, and more +- **Resource Management**: Balance your expansion with defensive capabilities +- **Cross-platform**: Play in any modern web browser -Before building the project, install the dependencies: +## 📋 Prerequisites -```bash -npm install -``` +- [Node.js](https://nodejs.org/) (v16.x or higher) +- [npm](https://www.npmjs.com/) (v8.x or higher) +- A modern web browser (Chrome, Firefox, Edge, etc.) -To run dev build: +## 🚀 Installation + +1. **Clone the repository** + + ```bash + git clone https://github.com/openfrontio/OpenFrontIO.git + cd OpenFrontIO + ``` + +2. **Install dependencies** + + ```bash + npm install + ``` + +## 🎮 Running the Game + +### Development Mode + +Run both the client and server in development mode with live reloading: ```bash npm run dev ``` -Make sure to format code using prettier extension or by running: +This will: + +- Start the webpack dev server for the client +- Launch the game server with development settings +- Open the game in your default browser + +### Client Only + +To run just the client with hot reloading: ```bash -npm run format +npm run start:client ``` + +### Server Only + +To run just the server with development settings: + +```bash +npm run start:server-dev +``` + +## 🛠️ Development Tools + +- **Format code**: + ```bash + npm run format + ``` + +## 🏗️ Project Structure + +- `/src/client` - Frontend game client +- `/src/core` - Shared game logic +- `/src/server` - Backend game server +- `/resources` - Static assets (images, maps, etc.) + +## 📝 License + +This project is licensed under the terms found in the [LICENSE](LICENSE) file. + +## 🤝 Contributing + +Contributions are welcome! Please feel free to submit a Pull Request. + +1. Fork the repository +2. Create your feature branch (`git checkout -b amazing-feature`) +3. Commit your changes (`git commit -m 'Add some amazing feature'`) +4. Push to the branch (`git push origin amazing-feature`) +5. Open a Pull Request diff --git a/resources/images/OpenFrontLogoDark.svg b/resources/images/OpenFrontLogoDark.svg new file mode 100644 index 000000000..2e2600480 --- /dev/null +++ b/resources/images/OpenFrontLogoDark.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file