You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Assuming google chrome is being used, the browser will flag macos-release as suspicious. Select the release in your downloads tab, using the button in the upper right hand corner of chrome, and press "Download suspicious file"
Unzip macos-release.zip, creating the folder temp
Download and unzip server-docker.zip, creating the server-docker folder
In a bash or zsh terminal, navigate inside of your server-docker folder using the command cd [insert path of server-docker here]
Inside that folder, run the command docker-compose up - this will make the database ready to receive connections!
Step 3: Run the Server and Client
Next, in Finder, navigate into the folder temp/release/server and double click on the server binary file (which has a terminal icon next to it). This will create a server settings config at ~/.abn_settings/Settings.toml, open` a terminal, and run the server. You may get denied access the first time, if this happens, just double-click again, and run the server.
Finally, in Finder, navigate into the folder temp/release/client and double click on the client binary file. This will open a terminal, and run the client!
Source Distribution Installation
Build Instructions
Step 1: Download Source Code, Rust, and Docker
Download and unzip the source code zip file, creating the a-better-notion-1.0 directory
Open three terminals, and navigate to a-better-notion-1.0 in each using the cd command
Make sure you don't have any databases running in docker. In the first terminal, build and run the database with docker-compose up
In the second, run the server with cargo run -p server
In the third, run the client with cargo run -p client
Running Tests
Open a terminal. Run all tests with cargo test. Run tests for frontend only with cargo test -p client. Run tests for lib only with cargo test -p common. Run tests for server only with cargo test -p server
Run all tests and view code coverage with zsh show-lcov.sh
Pull requests should explain changes made, reference solved issues, and preserve 90% code coverage. This last requirement is checked with an automated pull requests.
Pull requests cannot be merged until they reach 90% code coverage, and have been reviewed
Tips for Development
Source code repository can be found here. View file changes by clicking on the Commits icon in the upper right hand corner of the file view.
Use zsh show-lcov.sh when writing tests to meet code coverage
Use zsh pr-checks.sh to ensure code will pass automated tests for a pull request, before making the pull request
Use cargo clippy to run clippy, which we use to ensure all code is properly formatted
When switching to branches with database changes or making changes to database creation, make sure to delete the database and rerun docker-compose up in the project root
To read the API documentation of a crate, run cargo rustdoc -p <crate_name> --open in the project root. Currently we have 3 crates: client, common, and server.