Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork11
Cosmos Journeyer is a space exploration game running directly in the browser! Take your spaceship and witness the beauty of this virtually infinite universe.
License
BarthPaleologue/CosmosJourneyer
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
- What is Cosmos Journeyer?
- How to play
- Community and support
- My vision for the project
- Why Cosmos Journeyer?
- Contributing
- Sponsor
- Roadmap
- Features
- Development
- License
- Credits
- Special Thanks
Cosmos Journeyer is a space exploration game running directly in the browser! Take your spaceship and witness the beauty of this virtually infinite universe.
From stellar black holes and fully explorable planets down to single grass blades, to asteroid fields, your journey will be unforgettable.
You can play freely from the main website of the project atcosmosjourneyer.com
You can also play locally! You can get an installer for your system by going tothe latest release.
If you want the cutting edge version, follow these steps:
- Install prerequisites:
- Git (install with your package manager or fromhttps://git-scm.com/downloads)
- Node.js (version 20 or higher)
- Pnpm (install with
npm install -g pnpm)
- Clone the repo with
git clone https://github.com/BarthPaleologue/CosmosJourneyer.git - Install the dependencies with
pnpm install - Build the project with
pnpm build - Serve the project with
pnpm serve:prod - Play athttp://localhost:8080
To update your local version, either download the latest installer or rungit pull in your local install.
Once Cosmos Journeyer has started, simply start a new game: tutorials will guide you through the basics of the game as you play.
You can pause the game at any time by pressingESC and access the main menu to have a look at the keybindings, view the credits, and save your game.
The game has auto-saves, so you can quit at any time and resume your game later from where you left off.
If you encounter any bugs or want to request features, please open anissue or send an email tobarth.paleologue@cosmosjourneyer.com.
For general discussion and sharing screenshots, visit theofficial subreddit.
For my detailed vision for the project, please refer to theVISION.md file.
Why make Cosmos Journeyer when games like Elite Dangerous, Star Citizen, No Man's Sky or Kerbal Space Program already exist?
There are many reasons of course but here are the main ones:
- Open Source: Other games such as Elite are dependent on their studios to keep them alive. When the game will nolonger be profitable, they will stop supporting it and then the games will be dead forever (see Kerbal Space Program 2 debacle for a recent example). By going open-source,Cosmos Journeyer will be able to evolve and improve continuously, without the need for a studio. Anyone can pick it upand make it their own.
- Exploration Focused: I always felt that exploration was the most interesting part of space games. At the same timeI feel the other games are too focused on combat, trading or multiplayer content. I want Cosmos Journeyer to be anexploration first game, where your main drive is to discover cool things, take pictures, and dream for a bit.
- Personal: I don't know it's just so exciting to create an entire universe from scratch. It really is a dreamcoming true for me.
Contributions are welcome! There is too much to do for one person alone.
If you want to contribute, you will find guidelines and ideashere.
Thank you to all the people who have contributed to Cosmos Journeyer!
Help me make Cosmos Journeyer a reality! The development is time-consuming but generates no revenue by itself.
Sponsoring the project onPatreonorGitHub Sponsors will help secure the future of the project.
The project also has a ko-fi page athttps://ko-fi.com/cosmosjourneyer if you feel like buying me a coffee!
You can have a look at the roadmap of the project on the website athttps://cosmosjourneyer.com/
The deadlines are not set in stone and can be moved around as I am not working full time on the project.
Explore telluric planet and moon surfaces from your spaceship or by foot.
Travel between worlds without any loading screens.
Planet surfaces are filled with procedural vegetation, rocks and butterflies to make them feel more alive.
Cosmos Journeyer generates a virtually infinite amount of star systems that all have a star, planets, and sometimes moons.
Cosmos Journeyer is built using the following technologies:
- BabylonJS for the 3D engine
- Next.js for the website
- TypeScript for the programming language
- Rspack for bundling the application
- Pnpm for the package manager
- Tauri for building the desktop application
- Playwright for end-to-end testing
- Prettier for code formatting
- Vitest for unit testing
- ESLint for linting
- Git LFS for versioning large files like screenshots
- InstallNode.js
- InstallPnpm
- Clone the repository with
git clone https://github.com/BarthPaleologue/CosmosJourneyer.git - Navigate to the project directory with
cd CosmosJourneyer - Install the dependencies with
pnpm install(this also sets up Git hooks for formatting changed files before commit.For pnpm 10 and later, hooks are installed because Husky is listed inonlyBuiltDependencies.)
This project uses a pnpm workspace. Packages live underpackages/ and share tooling defined at the repository root.
packages/game– main Babylon.js game sources, assets, build config, and testspackages/website– Next.js website sources and build config
You can start the development server for the game withpnpm dev:game and for the website withpnpm dev:website.
To build the web version of Cosmos Journeyer, runpnpm build:game. Everything will be built inpackages/game/dist.
Cosmos Journeyer can be built as a desktop application using Tauri.
To find what dependencies your OS is missing, runpnpm tauri info.
Then you can build the application withpnpm tauri build or run the dev version withpnpm tauri dev.
The build artifacts will appear inpackages/game/src-tauri/target/release/bundle/<platform>.
Cosmos Journeyer has unit tests and end-to-end tests.
You can run the unit tests withpnpm test:unit and the end-to-end tests withpnpm test:e2e:docker.
Cosmos Journeyer usesPrettier for code formatting. Changed files are automatically formatted via a pre-commit hook. You can also format the entire project withpnpm format.
Cosmos Journeyer usesESLint for linting. You can lint the code withpnpm lint.
The documentation is online athttps://barthpaleologue.github.io/CosmosJourneyer/doc/
Additionally, theARCHITECTURE.md file contains a big picture explanation of the architecture ofthe project.
To build it locally, runpnpm doc (outputs topackages/game/doc) and thenpnpm serve:doc to serve it atlocalhost:8081.
Cosmos Journeyer is a free and open-source software licensed under the terms of the GNU AGPL License. Look at theLICENSE.md file for the full license text.
All credits can be found inthe credits panel of the game.
- Martin Molli for his fearless refactoring of the messy code base in its early days
- The people fromBabylonJS for their amazing work on the BabylonJS framework and their help on the forum
- My family for their continuous support
About
Cosmos Journeyer is a space exploration game running directly in the browser! Take your spaceship and witness the beauty of this virtually infinite universe.
Topics
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Contributors11
Uh oh!
There was an error while loading.Please reload this page.




