Skip to content

Latest commit

Β 

History

History
77 lines (61 loc) Β· 4.85 KB

CONTRIBUTING.md

File metadata and controls

77 lines (61 loc) Β· 4.85 KB

πŸ‘ Contribute

There are ways you can contribute without writing a single line of code. Here are a few things you can do to help out:

  • Replying and handling open issues Some issues may lack necessary information. You can help out by guiding people through the process of filling out the issue template, asking for clarifying information, or pointing them to existing issues that match their description of the problem.
  • Reviewing pull requests for the docs Reviewing Pull requests that contains documentation updates (marked with a documentation label) can be as simple as checking for spelling and grammar. If you encounter situations that can be explained better in the docs, just write a comment or edit the file right away to get started with your own contribution.
  • Providing translations The translation files are located in assets/translations. There are 2 ways to contribute your translation and in both cases, we will take care of adding your language into the app shortly.
    1. You can either just copy the content of an available translation file and send us the modified .json file with your language of choice via our Telegram group.
    2. You can fork the repo and create a pull request with your additional translation file.
  • Passionate about design? Explore our Figma, suggest tweaks, or bring your own designs to the table!
  • Share feedback and ideas with us
  • Recommend eNuts to friends and family
  • Star the project on GitHub
  • Leave a review on the app store or Google Play

Each of these tasks is highly impactful, and maintainers will greatly appreciate your help.

If you are eager to start contributing code right away, we have a list of good first issues that contain bugs which have a relatively limited scope. We use GitHub issues and pull requests to keep track of bug reports and contributions from the community. Pull request have to pass the tests and to be reviewed by a maintainer.

πŸ“‹ Requirements

  • eNuts is built using the managed workflow provided by Expo, so the easiest way to run a development environment is their Expo Go app.
  • NodeJS 18 or higher.

πŸ₯œ Already Implemented NUTs

The NUT documents (Notation, Usage and Terminology) each specify parts of the Cashu protocol.

πŸš€ Getting started

The cashu-ts library and SQLite are used to manage the Cashu related features.

  1. Fork this repository and create a local clone.
  2. Navigate inside the repository and run npm i
  3. Start the Expo dev server by running npm run start or with an empty cache by running npm run s:c
  4. Download the Expo Go app.
    • Android users: Scan the QR code provided by your terminal using the Expo-go app
    • iOS users: Press on the local dev server shown in the Expo-go app or scan the QR code using your camera app.
  5. A browser tab will be opened. Press the "Expo Go" button in the bottom of the page.
  6. eNuts will be bundled up and will run on your device.

Troubleshooting

  • If you see this build error: [GraphQL] Entity not authorized in you terminal, you can simply remove the following line from the config/app.config.ts file:
// Unauthorized error related to the project ID used in the expo organization for eNuts
// If you are not a member of the organization, you will encounter the build error.
{
  ...
  extra: {
    // Delete the following line to fix the issue:
    eas: { projectId: 'edb75ccd-71ac-4934-9147-baf1c7f2b068' },
    ...
  }
  ...
}

If you have any questions, do not hesitate to join the R&D group on Telegram.