Skip to content

Commit cb3ccfd

Browse files
committed
docs: update README and CONTRIBUTING
- fix typos, update urls and info
1 parent 70233ee commit cb3ccfd

File tree

2 files changed

+52
-29
lines changed

2 files changed

+52
-29
lines changed

CONTRIBUTING.md

Lines changed: 41 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,40 @@
1-
# Contributing to Dabbu
1+
# Contributing to Dabbu Files API Server
22

33
First off, thanks for taking the time to contribute!
44

5-
The following is a set of guidelines for contributing to Dabbu. These are just guidelines, not rules, use your best judgment and feel free to propose changes to this document in a pull request.
5+
The following is a set of guidelines for contributing to Dabbu Files API Server. These are just guidelines, not rules, use your best judgment and feel free to propose changes to this document in a pull request.
66

77
## Issues
88

9-
You can contribute to Dabbu by reporting bugs, fixing bugs, adding features, and spreading the word! If you want to report a bug, create an issue by clicking [here](https://github.com/dabbu-knowledge-platform/files-api-server/issues/new/choose). While creating an issue, try to follow the Bug report or Feature request template.
9+
You can contribute to Dabbu Files API Server by reporting bugs, fixing bugs, adding features, and spreading the word! If you want to report a bug, create an issue by clicking [here](https://github.com/dabbu-knowledge-platform/files-api-server/issues/new/choose). While creating an issue, try to follow the Bug report or Feature request template.
1010

1111
## Pull requests
1212

13-
### Step 0: Install `git`, `nodejs` and `npm`
13+
This guide assumes you are familiar with Github and the command line. If not, [here](https://guides.github.com/activities/hello-world/) is a guide to get started with Github. If you are stuck on something, feel free to ask on [Github Discussions](https://github.com/dabbu-knowledge-platform/cli/discussions/categories/want-to-contribute).
1414

15-
- `git` **must** be installed to make pull requests and push changed code.
16-
- To check if git is already installed, type `git --version` in terminal/command prompt. You should see a version number displayed after running this command.
17-
- [Here](https://github.com/git-guides/install-git) are the official instructions to install git for all platforms in case you haven't installed it already.
18-
- `nodejs and npm` **must** be installed to run the server locally
19-
- To check if nodejs is already installed, type `node --version && npm --version` in terminal/command prompt. You should see two version numbers displayed after running this command.
20-
- [Here](https://nodejs.org/en/download/package-manager/) are the official instructions to install nodejs and npm for all platforms in case you haven't installed it already.
15+
### Step 0: Environment
16+
17+
Install `git`, `nodejs` and `npm`.
18+
19+
#### Git
20+
21+
`git` **must** be installed to make pull requests and push changed code.
22+
23+
- To check if git is already installed, type `git --version` in terminal/command prompt. You should see a version number displayed after running this command.
24+
- [Here](https://github.com/git-guides/install-git) are the official instructions to install git for all platforms in case you haven't installed it already.
25+
26+
#### NodeJS and NPM
27+
28+
`nodejs` and `npm` **must** be installed to run the CLI locally.
29+
30+
- To check if NodeJS and NPM already installed, type `node --version && npm --version` in terminal/command prompt. You should see two version numbers displayed after running this command. For developing Dabbu CLI, we use the LTS version of NodeJS (v14.x)
31+
- [Here](https://nodejs.org/en/download/package-manager/) are the official instructions to install NodeJS and NPM for all platforms in case you haven't installed it already.
2132

2233
### Step 1: Fork
2334

2435
Fork the project [on the GitHub website](https://github.com/dabbu-knowledge-platform/files-api-server) and clone your fork locally.
2536

26-
Run the following to clone your fork locally:
37+
Run the following in a terminal to clone your fork locally:
2738

2839
```sh
2940
$ git clone https://github.com/<your-username>/files-api-server
@@ -34,7 +45,7 @@ $ git fetch upstream
3445

3546
### Step 2: Build
3647

37-
All you need to do to build is run `npm run build`. If the command runs successfully, there should be 3 files (`files-api-server-linux`, `files-api-server-macos` and `files-api-server-win.exe`) in the `dist/` folder. These are the executables that can be run on linux, macos and windows respectively without installation of external dependencies.
48+
All you need to do to build is run `npm run build`. If the command runs successfully, there should be 4 files (`dabbu-cli-alpine`, `dabbu-cli-linux`, `dabbu-cli-macos` and `dabbu-cli-win.exe`) in the `dist/` folder. These are the executables that can be run on alpine, linux, macos and windows respectively without installation of external dependencies.
3849

3950
Once you've built the project locally, you're ready to start making changes!
4051

@@ -50,7 +61,7 @@ $ git checkout -b add-awesome-new-feature -t upstream/main
5061

5162
To get a decent idea of how the code is organised and what happens where, the code is heavily commented to allow you to understand exactly what happens. Remember to always format the code using `prettier` once you're done.
5263

53-
To test a change without building the executables, you can type `npm start` and it will run the server directly.
64+
To test a change without building the executables, you can type `npm start` and it will run the server directly. Use an HTTP client like `httpie` or `postman` to test the API.
5465

5566
To check if the code is formatted correctly, run `npm run check-format`. To format the code using prettier, run `npm run format`.
5667

@@ -65,7 +76,7 @@ $ git commit
6576

6677
Note that multiple commits often get squashed when they are landed.
6778

68-
**Commit message guidelines**
79+
#### Commit message guidelines
6980

7081
A good commit message should describe what changed and why. This project uses [semantic commit messages](https://conventionalcommits.org/) to streamline
7182
the release process.
@@ -115,23 +126,29 @@ This ensures that your working branch has the latest changes from `dabbu-knowled
115126

116127
### Step 7: Test
117128

118-
Bug fixes and features should always come with tests. Please test your own code adequately. Also, before finally pushing your code, clone it into a fresh environment (different user or maybe a different computer) and make sure it works just as fine. Make sure you test the executables in the `dist/` directory, not just the \*.js files.
129+
Bug fixes and features should always come with tests. Please test your own code adequately. Also, before finally pushing your code, clone it into a fresh environment (different user or maybe a different computer) and make sure it works just as fine. Make sure you test the executables in the `dist/` directory.
130+
131+
### Step 8: Document
132+
133+
Once your commits are ready to go - with adequate testing - begin the process of documenting your code. The code **must** be heavily commented, so future contributors can move around and make changes easily.
134+
135+
Make sure all the changes you make are in accordance with the [Files API Specifications](https://dabbu-knowledge-platform.github.io/files_api/). If you wish to make changes to the API specification itself, drop a message [here](https://github.com/dabbu-knowledge-platform/cli/discussions/categories/general) and we can start discussing the changes.
119136

120-
### Step 8: Push
137+
### Step 9: Push
121138

122139
Once you have documented your code as required, begin the process of opening a pull request by pushing your working branch to your fork on GitHub.
123140

124141
```sh
125142
$ git push origin add-awesome-new-feature
126143
```
127144

128-
### Step 9: Opening the Pull Request
145+
### Step 10: Opening the Pull Request
129146

130-
From within GitHub, opening a new pull request will present you with a template that should be filled out.
147+
From within GitHub, opening a [new pull request](https://github.com/dabbu-knowledge-platform/files-api-server/compare) will present you with a template that should be filled out.
131148

132-
### Step 10: Discuss and update
149+
### Step 11: Discuss and update
133150

134-
You will probably get feedback or requests for changes to your pull request. This is a big part of the submission process so don't be discouraged! Some contributors may sign off on the pull request right away. Others may have detailed comments or feedback. This is a necessary part of the process in order to evaluate whether the changes are correct and necessary.
151+
You will probably get feedback or requests for changes to your pull request. This is a big part of the submission process, so don't be discouraged! Some contributors may sign off on the pull request right away. Others may have detailed comments or feedback. This is a necessary part of the process in order to evaluate whether the changes are correct and necessary.
135152

136153
To make changes to an existing pull request, make the changes to your local branch, add a new commit with those changes, and push those to your fork. GitHub will automatically update the pull request.
137154

@@ -141,18 +158,18 @@ $ git commit
141158
$ git push origin add-awesome-new-feature
142159
```
143160

144-
There are a number of more advanced mechanisms for managing commits using `git rebase` that can be used, but are beyond the scope of this README.
161+
There are a number of more advanced mechanisms for managing commits using `git rebase` that can be used, but are beyond the scope of this guide.
145162

146163
Feel free to post a comment in the pull request to ping reviewers if you are awaiting an answer on something.
147164

148165
**Approval and Request Changes Workflow**
149166

150-
All pull requests require approval from an organization member in order to land. Whenever a maintainer reviews a pull request they may request changes. These may be small, such as fixing a typo, or may involve substantive changes. Such requests are intended to be helpful, but at times may come across as abrupt or unhelpful, especially if they do not include concrete suggestions on _how_ to change them.
167+
All pull requests require approval from contributors in order to land. Whenever a maintainer reviews a pull request they may request changes. These may be small, such as fixing a typo, or may involve substantive changes. Such requests are intended to be helpful, but at times may come across as abrupt or unhelpful, especially if they do not include concrete suggestions on _how_ to change them.
151168

152169
Try not to be discouraged. Try asking the maintainer for advice on how to implement it. If you feel that a review is unfair, say so or seek the input of another project contributor. Often such comments are the result of a reviewer having taken insufficient time to review and are not ill-intended. Such difficulties can often be resolved with a bit of patience. That said, reviewers should be expected to provide helpful feedback.
153170

154-
### Step 11: Landing
171+
### Step 12: Landing
155172

156-
In order to land, a pull request needs to be reviewed and approved by at least one Code Owner. After that, if there are no objections from other contributors, the pull request can be merged.
173+
In order to land, a pull request needs to be reviewed and approved by at least one contributor. After that, if there are no objections from other contributors, the pull request can be merged.
157174

158175
**Congratulations and thanks a lot for your contribution!**

README.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Dabbu Files API Server
22

3-
[![Code Style and Build Check](https://github.com/dabbu-knowledge-platform/files-api-server/actions/workflows/style_and_build_check.yml/badge.svg)](https://github.yungao-tech.comdabbu-knowledge-platform/files-api-server/actions/workflows/style_and_build_check.yml)
3+
[![NodeJS CI](https://github.com/dabbu-knowledge-platform/files-api-server/actions/workflows/ci.yml/badge.svg)](https://github.yungao-tech.comdabbu-knowledge-platform/files-api-server/actions/workflows/ci.yml)
44

55
An implementation of the Dabbu Files API that enables you to access your files, folders and emails stored with multiple providers as simple files and folders, all in one place!
66

@@ -10,13 +10,15 @@ Tired of having your files and folders randomly scattered about online with mult
1010

1111
![](./media/DabbuCLI.gif)
1212

13+
<sub>Dabbu CLI retrieving files from Google Drive [Note: this GIF is outdated]</sub>
14+
1315
What you just saw there was Dabbu CLI in action - a simple program in javascript that leverages the Dabbu API to bring your files and folders at your fingertips from all over the web.
1416

1517
**This repo contains the server application that handles API calls from clients. The source for the CLI app demoed in the GIF above can be found [here](https://github.com/dabbu-knowledge-platform/cli).**
1618

1719
## Getting started
1820

19-
The installation can be done manually on Linux, MacOS, Android (Requires Termux) and Windows.
21+
The installation can be done manually on Linux, Alpine Linux, MacOS, Android (Requires Termux) and Windows (Currently only 64-bit architectures are supported).
2022

2123
Follow the instructions [here](https://dabbu-knowledge-platform.github.io/impls/server) to install it on your computer.
2224

@@ -41,17 +43,21 @@ _And more to come...!_
4143

4244
### Creating a new provider
4345

44-
**Note: If you want to create a new provider, please file an issue using the `New provider` template [here](https://github.com/dabbu-knowledge-platform/files-api-server/issues/new/choose). This is only to let us know that you want to work on the provider and how you plan to go about it. Also, if you need any help on the code, please do ask on [this](https://github.com/dabbu-knowledge-platform/files-api-server/discussions/categories/want-to-contribute) Github discussion. We will only be glad to help :)**
46+
If you want to create a new provider, please file an issue using the `New provider` template [here](https://github.com/dabbu-knowledge-platform/files-api-server/issues/new/choose). This is only to let us know that you want to work on the provider and how you plan to go about it.
47+
48+
Please read [CONTRIBUTING.md](./CONTRIBUTING.md) for a detailed guide to setting up your environment and making changes to the code.
49+
50+
Also, if you need any help on the code, please do ask on [this](https://github.com/dabbu-knowledge-platform/files-api-server/discussions/categories/want-to-contribute) Github discussion. We will only be glad to help :)
4551

4652
## Docs
4753

48-
The documentation for the server can be found [here](https://dabbu-knowledge-platform.github.io/impls/server).
54+
The documentation for the server can be found on the [website](https://dabbu-knowledge-platform.github.io/impls/server). The source can be found [here](https://github.com/dabbu-knowledge-platform/dabbu-knowledge-platform.github.io/blob/main/impls/server.md).
4955

5056
## Issues and pull requests
5157

5258
You can contribute to Dabbu by reporting bugs, fixing bugs, adding features, and spreading the word! If you want to report a bug, create an issue by clicking [here](https://github.com/dabbu-knowledge-platform/files-api-server/issues/new/choose). While creating an issue, try to follow the Bug report or Feature request template.
5359

54-
To contribute code, have a look at [CONTRIBUTING.md](./CONTRIBUTING.md).
60+
Please read [CONTRIBUTING.md](./CONTRIBUTING.md) for a detailed guide to setting up your environment and making changes to the code.
5561

5662
## Legal stuff
5763

0 commit comments

Comments
 (0)