Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

2,690 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nova Protocol

Nova Protocol

A 3D space shooter built with Bevy. Build modular ships, fly them with real thrusters, and fight through asteroid fields and gravity wells.

Project and gameplay documentation lives on the published site:

Quick start

Play

The flake packages the game, so playing it needs no checkout and no toolchain:

nix run github:alexjercan/nova-protocol

nix profile install github:alexjercan/nova-protocol keeps it, and adds a desktop entry with an icon to the application menu.

Set up

The Nix development shell provides the pinned Rust toolchain, Bevy system dependencies, Node.js, and Trunk.

git clone https://github.com/alexjercan/nova-protocol.git
cd nova-protocol

Without Nix, install the toolchain from rust-toolchain.toml, the required Bevy system dependencies, and Trunk.

Native

nix develop --command cargo run
nix develop --command cargo run --features dev # debug tools

Web

Run the complete local site, including the WASM game and mod portal:

nix develop --command scripts/serve-web.sh

The script prints the local URL and watches all three parts. To run only the WASM game, use nix develop --command trunk serve and open http://localhost:8080/.

See the developer book for builds, tests, tools, examples, and platform setup.

Repository guide

PathPurpose
AGENTS.mdRepository workflow, architecture, conventions, and required checks.
RELEASE.mdShort checklist for versioning, changelog updates, tagging, and publishing.
CHANGELOG.mdUnreleased and shipped user-visible changes.
Cargo.tomlWorkspace members, examples, features, and the shared package version.
crates/Game and tooling crates. nova_core::AppBuilder is the main assembly point.
src/Thin root executable and library entry points.
assets/Shipped game content and assets.
examples/Runnable player paths, system scenarios, UI flows, and probes.
web/Landing site, News, tutorial, and wiki sources.
scripts/Local web, content, screenshot, and packaging helpers.

License

See LICENSE.

About

Space Game with realistic mechanics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages