eadkp template banner

eadkp template

8 devlogs
10h 38m 29s

A Rust template for easily starting NumWorks app development using the EADKP library

Repository

Loading README...

Oignon

Adding a project initialization automation script, independent of cargo-generate!

By using a simple command:
bash <(curl -s https://raw.githubusercontent.com/Oignontom8283/eadkp_template/main/bootstrap.sh)
(Make sure to have curl and git installed), you can start a new NumWorks application using EADKP in the blink of an eye!

OR use:
git clone https://github.com/Oignontom8283/eadkp_template.git project_name
cd project_name
chmod +x ./bootstrap.sh && ./bootstrap.sh

PS: I was tired of manually reconfiguring everything every time, so here it is! (:

0
Oignon

Improving the application visuals from the default template code!

Changes:

  • feat: Added a subtitle
  • feat: Added a footer
  • fix: Readjusted the centering of the logo, title, and subtitle
  • fix: Moved the rendering code to a pre-display section before the loop to fix a hardware horizontal sync issue.
Attachment
0
Oignon

Refactoring of the default template demonstration code ! (1/2)
AND adding a function (push_image()) to the eadkp library.

Attachment
Attachment
0
Oignon

Testing the simulator on Linux (Ubuntu-based) !

  • Fixed the Docker start command in start.sh from docker-compose to docker compose.
  • Added settings.json and extensions.json to recommend the Rust-Analyzer extension and its specific configuration for Numworks.
Attachment
0
Oignon

Functional Simulator !

The simulator has been tested and debugged :

  • Fixed incorrect app compilation path:
    ./target/release/target/libsimulator.so -> ./target/release/examples/libsimulator.so
  • Updated default app name in source code.
  • Added information message displayed prior to simulator execution.
Attachment
0
Oignon

Testing compilation and exporting the compiled application to NWA format for the calculator 🥳 !

  • In Cargo.toml: The [target] sections for “device” and “simulator” have been replaced with [[example]]. This changes how builds are managed, now using the --example flag instead of --target.
  • In cargo-generate.toml: The justfile has been added to the exclusion list when generating a new project.
  • In justfile:
    • Build, check, and send commands now use --example device or --example simulator instead of the previous --target flags.
    • Added a just target command to ensure the thumbv7em-none-eabihf Rust target is correctly installed before building.
    • The export command now uses the correct path for the generated binary (target/thumbv7em-none-eabihf/release/examples/device).
    • The export command now displays a success or error message depending on whether the file move was successful.
    • Added a target recipe to install the required Rust target.
    • The justfile is now excluded during new project generation.
Attachment
0
Oignon

‘cargo generate’ is finally working correctly 😊.

Update templates and fix docker config :

  • Use {{project-name}} placeholders for better compatibility
  • Enforce snake_case via project_name_case
  • Exclude assets/ from variable substitution
  • Fix docker-compose paths and remove obsolete Dockerfile
Attachment
0
Oignon

Initial template code. Implementation of the Cargo template system (Untested 😕).

Attachment
0