Skip to content

astrodon/astrodon

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

⚠️ CURRENTLY UNMAINTAINED ⚠️


πŸ¦• Astrodon

Desktop App Framework (not there yet!) for Deno, based on Tauri

Discord Server deno module deno compatibility


😎 Features

  • Create webview windows with your own title and URL
  • Bidirectional communication between your frontend and backend
  • Compile your apps as executables and even make installers
  • And most of what you get with Deno, e.g, TypeScript out of the box...

A lot is still missing, but we will get there!

🎁 Demo

Note: Latest public release only supports Windows and Linux, MacOS is not supported. This will be fixed in the next release.

⚠️ This will fail as Astrodon is currently unmaintained

Run the demo:

deno run -A --unstable --reload https://deno.land/x/astrodon@0.1.0-alpha.2/examples/hello_world/demo.ts

πŸ“œ To-do

  • Unit tests
  • Cross-platform compiling (missing: Apple Silicon)
  • Typescript checking in the background (astrodon-build's Develop should manage this)
  • Pass permission and arguments as flags and also put them in the executable metadata
  • Organize project a little bit better (e.g move dependencies to deps.ts)
  • A real-world app example
  • Update the templates (wip)
  • Match deno_runtime version (and also things like Deno.build) with Deno's releases
  • Implement Web Workers
  • Schematize and create plugin system
  • Organize configs by usage hierarchy (e.g. global.icon -> build.icon)
  • Ability apps register custom system URI protocols (installer)
  • Add Cli command astrodon clean to remove cached runtimes
  • Make Cli's command astrodon run also support HTTPs uris
    • Add support for common permission flags as CLI arguments

πŸ€” Plugins ideas

  • Cross process reactivity module (plugin)
  • Cross process store module (plugin)
  • Env variable manager and injection for builds (plugin)

πŸ‘©β€πŸ’» Development

Requisites:

  • Install the tauri dependencies as indicated in Tauri's Guide.
  • Rust (stable toolchain)
  • Deno

Running both Deno and Rust tests:

deno task test

MIT License