mirror of
https://github.com/OSMA-D/osma-server.git
synced 2024-11-05 21:24:02 +03:00
doc: readme contributing roadmap
This commit is contained in:
parent
11628b0190
commit
2cf76d8c0f
9 changed files with 342 additions and 2 deletions
94
CONTRIBUTING.md
Normal file
94
CONTRIBUTING.md
Normal file
|
@ -0,0 +1,94 @@
|
|||
`work in progress`
|
||||
|
||||
# Contributing
|
||||
|
||||
When contributing to this repository, please first discuss the change you wish to make via issue,
|
||||
email, or any other method with the owners of this repository before making a change.
|
||||
|
||||
Please note we have a code of conduct, please follow it in all your interactions with the project.
|
||||
|
||||
## Pull Request Process
|
||||
|
||||
1. Ensure any install or build dependencies are removed before the end of the layer when doing a
|
||||
build.
|
||||
2. Update the README.md with details of changes to the interface, this includes new environment
|
||||
variables, exposed ports, useful file locations and container parameters.
|
||||
3. Increase the version numbers in any examples files and the README.md to the new version that this
|
||||
Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/).
|
||||
4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you
|
||||
do not have permission to do that, you may request the second reviewer to merge it for you.
|
||||
|
||||
## Code of Conduct
|
||||
|
||||
### Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as
|
||||
contributors and maintainers pledge to making participation in our project and
|
||||
our community a harassment-free experience for everyone, regardless of age, body
|
||||
size, disability, ethnicity, gender identity and expression, level of experience,
|
||||
nationality, personal appearance, race, religion, or sexual identity and
|
||||
orientation.
|
||||
|
||||
### Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment
|
||||
include:
|
||||
|
||||
- Using welcoming and inclusive language
|
||||
- Being respectful of differing viewpoints and experiences
|
||||
- Gracefully accepting constructive criticism
|
||||
- Focusing on what is best for the community
|
||||
- Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
- The use of sexualized language or imagery and unwelcome sexual attention or
|
||||
advances
|
||||
- Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
- Public or private harassment
|
||||
- Publishing others' private information, such as a physical or electronic
|
||||
address, without explicit permission
|
||||
- Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
### Our Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable
|
||||
behavior and are expected to take appropriate and fair corrective action in
|
||||
response to any instances of unacceptable behavior.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or
|
||||
reject comments, commits, code, wiki edits, issues, and other contributions
|
||||
that are not aligned to this Code of Conduct, or to ban temporarily or
|
||||
permanently any contributor for other behaviors that they deem inappropriate,
|
||||
threatening, offensive, or harmful.
|
||||
|
||||
### Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces
|
||||
when an individual is representing the project or its community. Examples of
|
||||
representing a project or community include using an official project e-mail
|
||||
address, posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event. Representation of a project may be
|
||||
further defined and clarified by project maintainers.
|
||||
|
||||
### Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at [INSERT EMAIL ADDRESS]. All
|
||||
complaints will be reviewed and investigated and will result in a response that
|
||||
is deemed necessary and appropriate to the circumstances. The project team is
|
||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||
Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good
|
||||
faith may face temporary or permanent repercussions as determined by other
|
||||
members of the project's leadership.
|
||||
|
||||
### Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
||||
available at [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
|
@ -1,5 +1,9 @@
|
|||
# osma server
|
||||
|
||||
Server for OSMA. Open Source software digital distribution service.
|
||||
Server for OSMA. Open Source software digital distribution service. OSMA allows you to download, search, and add open source applications to favorites.
|
||||
OSMA will have to be a convenient application for installing open source software. Reviews will show how good or bad the app is.
|
||||
|
||||
OSMA allows you to download, search, and add open source applications to favorites.
|
||||
If you were looking for where to download the osma app - [OSMA](https://github.com/OSMA-D/osma-app)
|
||||
Do you want to participate in this project? [Contributing](CONTRIBUTING.md)
|
||||
|
||||
Check our [roadmap](docs/roadmap.md).
|
||||
|
|
55
docs/db-validation/apps.json
Normal file
55
docs/db-validation/apps.json
Normal file
|
@ -0,0 +1,55 @@
|
|||
{
|
||||
"$jsonSchema": {
|
||||
"bsonType": "object",
|
||||
"required": [
|
||||
"app_id",
|
||||
"name",
|
||||
"description",
|
||||
"icon",
|
||||
"screenshots",
|
||||
"repo",
|
||||
"author",
|
||||
"tags"
|
||||
],
|
||||
"properties": {
|
||||
"app_id": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 5
|
||||
},
|
||||
"name": {
|
||||
"bsonType": "string",
|
||||
"minLength": 1,
|
||||
"maxLength": 16
|
||||
},
|
||||
"description": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"icon": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"screenshots": {
|
||||
"bsonType": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"repo": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"author": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 16
|
||||
},
|
||||
"tags": {
|
||||
"bsonType": "array",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"minLength": 1,
|
||||
"maxLength": 32
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
28
docs/db-validation/apps_versions.json
Normal file
28
docs/db-validation/apps_versions.json
Normal file
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
"$jsonSchema": {
|
||||
"bsonType": "object",
|
||||
"required": ["app_id", "version", "url", "timestamp", "platform", "type"],
|
||||
"properties": {
|
||||
"name_id": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 5
|
||||
},
|
||||
"version": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"url": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"platform": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"type": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"timestamp": {
|
||||
"bsonType": "number"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
22
docs/db-validation/personal_libraries.json
Normal file
22
docs/db-validation/personal_libraries.json
Normal file
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"$jsonSchema": {
|
||||
"bsonType": "object",
|
||||
"required": ["apps", "name"],
|
||||
"properties": {
|
||||
"name": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 16
|
||||
},
|
||||
"apps": {
|
||||
"bsonType": "array",
|
||||
"uniqueItems": true,
|
||||
"items": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 5
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
32
docs/db-validation/reviews.json
Normal file
32
docs/db-validation/reviews.json
Normal file
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
"$jsonSchema": {
|
||||
"bsonType": "object",
|
||||
"required": ["app_id", "user_name", "text", "score", "timestamp"],
|
||||
"properties": {
|
||||
"app_id": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 5
|
||||
},
|
||||
"user_name": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 16
|
||||
},
|
||||
"score": {
|
||||
"bsonType": "number",
|
||||
"minimum": 1,
|
||||
"maximum": 10
|
||||
},
|
||||
"text": {
|
||||
"bsonType": "string",
|
||||
"minLength": 2,
|
||||
"maxLength": 2000
|
||||
},
|
||||
"timestamp": {
|
||||
"bsonType": "number",
|
||||
"minimum": 1658995612
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
22
docs/db-validation/users.json
Normal file
22
docs/db-validation/users.json
Normal file
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"$jsonSchema": {
|
||||
"bsonType": "object",
|
||||
"required": ["name", "password", "email", "role"],
|
||||
"properties": {
|
||||
"name": {
|
||||
"bsonType": "string",
|
||||
"minLength": 3,
|
||||
"maxLength": 16
|
||||
},
|
||||
"password": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"email": {
|
||||
"bsonType": "string"
|
||||
},
|
||||
"role": {
|
||||
"bsonType": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
0
docs/guides/getting-started.md
Normal file
0
docs/guides/getting-started.md
Normal file
83
docs/roadmap.md
Normal file
83
docs/roadmap.md
Normal file
|
@ -0,0 +1,83 @@
|
|||
# OSMA-Server Roadmap
|
||||
|
||||
These are just server features, there is also an osma application, it will also have many features.
|
||||
|
||||
## 1.0.0 (current)
|
||||
|
||||
### Features
|
||||
|
||||
#### Apps
|
||||
|
||||
- [x] Get All apps
|
||||
- [x] Get app by app_id
|
||||
- [x] Get apps by tags
|
||||
- [x] Get app versions by app_id
|
||||
- [x] Get latest app version by app_id
|
||||
- [x] Getting the app rating
|
||||
|
||||
#### Reviews
|
||||
|
||||
- [x] Writing reviews and editing
|
||||
- [x] Get reviews by app id
|
||||
|
||||
#### Personal libraries (downloads list)
|
||||
|
||||
- [x] Get personal Library
|
||||
- [x] Add app to personal library (downloads)
|
||||
|
||||
#### Users
|
||||
|
||||
- [x] Auth/Authorisation api
|
||||
- [x] Update user info
|
||||
- [x] Change user password
|
||||
|
||||
---
|
||||
|
||||
## 1.1.\*
|
||||
|
||||
### Features
|
||||
|
||||
#### Users
|
||||
|
||||
- [ ] Email confirmation
|
||||
- [ ] Password Recovery
|
||||
|
||||
#### Reviews
|
||||
|
||||
- [ ] Review sorting (negative, positive)
|
||||
|
||||
#### Apps
|
||||
|
||||
- [ ] Getting the number of app downloads
|
||||
|
||||
...And more `the list is not complete`
|
||||
|
||||
---
|
||||
|
||||
## 1.2.\*
|
||||
|
||||
### Features
|
||||
|
||||
#### Users
|
||||
|
||||
- [ ] Creating a developer account
|
||||
|
||||
#### Apps
|
||||
|
||||
- [ ] The ability to publish your application in osma
|
||||
|
||||
...And more `the list is not complete`
|
||||
|
||||
---
|
||||
|
||||
## After receiving the investment, it is possible
|
||||
|
||||
- [ ] Investments received
|
||||
- [ ] Own hosting for application files
|
||||
|
||||
### Features
|
||||
|
||||
- [ ] Uploading new versions to osma hosting
|
||||
- [ ] IPFS Support for app downloading
|
||||
|
||||
---
|
Loading…
Reference in a new issue