It is recommended that you use VS Code for this project.
To build and run this project, you will need the following:
- Node.js
- PNPM, and then execute the following in the project folder:
pnpm install
. - Emscripten (works with v4.0.7+), and make sure that
emcc
is available in PATH.
You may also need to changeconfigurations.compilerPath
in the .vscode/c_cpp_properties.json file to reflect the location of your Emscripten installation. - GNU make, if you're on Windows.
(Our makefile should work on all desktop platforms regardlessly.)
Then you can run the project by the following:
pnpm start
This will build the project and start the development server.
Note: The latest Emscripten v4 seems rather unstable for the moment. If you encounter errors during building, try downgrade to v3.1.64.
All source codes are located in the src
folder, in which you'll find:
app
: User interface, written in React (I usually use Vue, but I decided to give it a try for this project).core
: The C++ part. See change log for the changes made to the original source code of ReferenceFinder.icon
: This folder contains the pre-built Font Awesome subset.
If you add more icons and need to rebuild this folder, executepnpm gulp
.lib
: Compiled WebAssembly of ReferenceFinder.locale
: All locale files, based on the previous work by Maya Kraft etc.public
: The HTML file and other unbundled assets.
Always talk to me first! Just to avoid wasting time working on something that I'm also working on. A good place to reach me will be the BP Studio Discord server.
Because merging to the main branch will directly publish the changes, do not directly submit a PR against the main branch. Instead, contact me and I will create a new branch for you to submit your PR. After I merge the PR and make sure that everything is ready, it will be merged into the main branch.