Skip to content

HenryDeLange/inat-achievements

Repository files navigation

Wild Achievements

GitHub package.json version GitHub

This project calculates fun personal achievements based on observations recorded on iNaturalist.


Live Site

Website GitHub Workflow Status

https://wild-achievements.mywild.co.za
(or https://henrydelange.github.io/inat-achievements)


Development

GitHub language count GitHub top language GitHub Workflow Status GitHub Workflow Status GitHub Workflow Status

Setup

npm install
Downloads all dependencies.

Run

npm start
Runs the React web application in development mode.
Open http://localhost:3000 to view it in the browser.

npm electron:start
Runs the Electron desktop client.
Depends on the main application to be running on http://localhost:3000 (via the npm start command).

Test

npm run test
All tests are contained in the ./tests folder.

Build

npm run build
Builds the app for production to the build folder.

Web App Hosting

Hosts this project using GitHub Pages.

Custom Subdomain

The custom subdomain wild-achievements.mywild.co.za has been configured on GitHub, as specified in the CNAME file. As a result the homepage property is set in the package.json file should be http://HenryDeLange.github.io/ instead of http://HenryDeLange.github.io/inat-achievements when using the GitHub IO domain. However due to the Electron build the property is instead set to the ./ relative path.

GitHub Action to automatically publish a new hosted version

The GitHub Action defined in ./.github/workflows/deploy-to-pages.yml will run automatically when code is committed into the master branch, resulting in a website of the latest code in the branch being available online on GitHub Pages.

Manual steps to publish a new hosted version

  1. Make sure the homepage property is set in the package.json file as described above in the Custom Subdomain section.
  2. Build the production version using the npm run predeploy command.
  3. Deploy the application to GitHub Pages using the npm run deploy command.
    • This step will push the application's build artifacts to the gh-pages branch.
  4. On GitHub, navigate to the repository's Settings and then make sure that Source property under the Pages category is set to use the gh-pages branch.
  5. The new version of the application should be online shortly. Done :)

Desktop App Distributable

Run this project as A desktop application using Electron.

GitHub Action to automatically build a new desktop release

The GitHub Action defined in ./.github/workflows/release-electron.yml will run automatically when code is committed into the master branch, resulting in the desktop application of the latest code in the branch being available as a GitHub Release.

Manual steps to build a new desktop release

  1. Make sure the homepage property is set in the package.json file as described above in the Custom Subdomain section.to the ./ relative path.
  2. Run the npm script for the relevant environment.
    • For example: npm run electron:package:win
  3. The distributable application will be in the dist folder. Done :)

Progressive Web App

This website can be installed as a PWA via supported browsers. (Doing so will add a shortcut to this website on your device's home screen.)

About

A project to view personal achievements based on iNaturalist observations.

Resources

License

Stars

Watchers

Forks

Packages

No packages published