Rework README and CONTRIBUTING
This commit is contained in:
parent
670b160945
commit
a31603ee3c
BIN
.github/assets/corteza_dashboard.png
vendored
Normal file
BIN
.github/assets/corteza_dashboard.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 271 KiB |
71
.github/assets/corteza_logo.svg
vendored
Normal file
71
.github/assets/corteza_logo.svg
vendored
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 78 KiB |
@ -1,52 +1,75 @@
|
||||
# How to Contribute
|
||||
# Contributing
|
||||
|
||||
Corteza projects are [Apache 2.0 licensed](LICENSE) and accept contributions via
|
||||
GitHub pull requests. This document outlines some of the conventions on
|
||||
development workflow, commit message formatting, contact points and other
|
||||
resources to make it easier to get your contribution accepted.
|
||||
Thank you for helping us make [our vision](https://cortezaproject.org/about/what-is-corteza/) a reality!
|
||||
All contributions are welcome; from bug reports, codefixes, and new features!
|
||||
|
||||
# Certificate of Origin
|
||||
## Ground Rules
|
||||
|
||||
By contributing to this project you agree to the Developer Certificate of
|
||||
Origin (DCO). This document was created by the Linux Kernel community and is a
|
||||
simple statement that you, as a contributor, have the legal right to make the
|
||||
contribution. See the [DCO](DCO) file for details.
|
||||
Corteza projects are [Apache 2.0 licensed](LICENSE) and accept contributions via GitHub pull requests.
|
||||
|
||||
# Getting Started
|
||||
Cover the [terminology](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/release-cycle/index.html#_terminology) for the development process and versioning.
|
||||
|
||||
- Fork the repository on GitHub
|
||||
- Read the [Wiki](https://github.com/cortezaproject/corteza-server/wiki) for build and test instructions
|
||||
- Play with the project, submit bugs, submit patches!
|
||||
Cover the [Git and GitHub](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/release-cycle/index.html#_github) ground rules regarding branch naming and conventions.
|
||||
|
||||
## Contribution Flow
|
||||
When you wish to start working on a code contribution, assign yourself to a GitHub issue.
|
||||
If there is no issue, create one beforehand.
|
||||
|
||||
This is a rough outline of what a contributor's workflow looks like:
|
||||
A quick summary on [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/):
|
||||
|
||||
- Create a topic branch from where you want to base your work (usually master).
|
||||
- Make commits of logical units.
|
||||
- Make sure your commit messages are in the proper format (see below).
|
||||
- Push your changes to a topic branch in your fork of the repository.
|
||||
- Make sure the tests pass, and add any new tests as appropriate.
|
||||
- Submit a pull request to the original repository.
|
||||
1. Separate subject from body with a blank line
|
||||
2. Limit the subject line to 50 characters
|
||||
3. Capitalize the subject line
|
||||
4. Do not end the subject line with a period
|
||||
5. Use the imperative mood in the subject line
|
||||
6. Wrap the body at 72 characters
|
||||
7. Use the body to explain what and why vs. how
|
||||
|
||||
Thanks for your contributions!
|
||||
## Core repositories
|
||||
|
||||
### Format of the Commit Message
|
||||
### Corteza Server
|
||||
|
||||
See [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/).
|
||||
Corteza server is the back-end of the Corteza ecosystem.
|
||||
The core logic is written in GO, using [go-chi](https://pkg.go.dev/github.com/go-chi/chi@v3.3.4+incompatible?utm_source=gopls) for the routing.
|
||||
|
||||
Summary of the article and the seven rules of a great Git commit message
|
||||
Communication between the Corteza server and web applications is done using the REST API and web sockets.
|
||||
Communication between back-end services (Corteza server and Corredor) is done using gRPC.
|
||||
|
||||
1. Separate subject from body with a blank line
|
||||
2. Limit the subject line to 50 characters
|
||||
3. Capitalize the subject line
|
||||
4. Do not end the subject line with a period
|
||||
5. Use the imperative mood in the subject line
|
||||
6. Wrap the body at 72 characters
|
||||
7. Use the body to explain what and why vs. how
|
||||
The [Developer Guide/Corteza Server](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/corteza-server/index.html) covers the [development setup](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/corteza-server/index.html#_development_setup), the [project structure](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/corteza-server/structure.html), and the feature insight documents.
|
||||
|
||||
We are not terribly strict against a particular commit message format, but
|
||||
the general rule is to avoid non-descriptive single-word commit messages like "fix".
|
||||
|
||||
We might ask you to rewrite/rebase your commit messages if they land too far from the
|
||||
rules above.
|
||||
### Corteza Web Applications
|
||||
|
||||
The web applications are written in Vue.js and provide the user interface to interact with the entire system.
|
||||
The repositories:
|
||||
|
||||
1. [corteza-webapp-one](https://github.com/cortezaproject/corteza-webapp-one)
|
||||
2. [corteza-webapp-admin](https://github.com/cortezaproject/corteza-webapp-admin)
|
||||
3. [corteza-webapp-compose](https://github.com/cortezaproject/corteza-webapp-compose)
|
||||
4. [corteza-webapp-workflow](https://github.com/cortezaproject/corteza-webapp-workflow)
|
||||
|
||||
Communication between the Corteza server and web applications is done using the REST API and web sockets.
|
||||
|
||||
The [Developer Guide/Corteza Web Applications](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/web-applications/index.html) covers the [development setup](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/web-applications/index.html#_development_setup), the [project structure](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/web-applications/structure.html), and the feature insight documents.
|
||||
|
||||
### Documentation
|
||||
|
||||
The documentation is written in [AsciiDoc](https://asciidoc.org/) and compiled using [Antora](https://antora.org/).
|
||||
The source code is available on the [GitHub cortezaproject/corteza-docs repository](https://github.com/cortezaproject/corteza-docs); the generated output is available on the [documentation page](http://docs.cortezaproject.org/).
|
||||
|
||||
The [Developer Guide/Documentation](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/documentation/index.html) covers the [conventions](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/documentation/index.html#_conventions), [writing guidelines](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/documentation/index.html#documentation-writing-guidelines), as well as some [examples](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/documentation/examples/index.html) to help you get started.
|
||||
|
||||
## Bug reporting
|
||||
|
||||
Please submit any bug reports on the **issues** section of the corresponding GitHub repository.
|
||||
If you are unsure where to submit the issue, or you are unsure if this is a feature; reach out to us on [our forum](https://forum.cortezaproject.org/).
|
||||
|
||||
## Feature requests
|
||||
|
||||
Feature and improvement requests should be submitted on [our forum](https://forum.cortezaproject.org/).
|
||||
Before opening a new topic, search around to see if there are any similar topics that would cover your case.
|
||||
|
||||
## DCO
|
||||
|
||||
By contributing to this project you agree to the Developer Certificate of Origin (DCO).
|
||||
This document was created by the Linux Kernel community and is a simple statement that you, as a contributor, have the legal right to make the contribution.
|
||||
See the [DCO](DCO) file for details.
|
||||
|
||||
121
README.md
121
README.md
@ -1,21 +1,112 @@
|
||||
[](https://drone.crust.tech/cortezaproject/corteza)
|
||||
[](https://goreportcard.com/report/github.com/cortezaproject/corteza-server)
|
||||
<h1 align="center">
|
||||
<img width="300px" src=".github/assets/corteza_logo.svg" />
|
||||
<br />
|
||||
<p>Corteza Server</p>
|
||||
|
||||
# What is Corteza?
|
||||
<div align="center">
|
||||
|
||||
Corteza brings your user ecosystem and essential applications together on one
|
||||
platform, unifying them via CRM, Advanced Identity and
|
||||
Access Management.
|
||||
[](https://img.shields.io/docker/pulls/cortezaproject/corteza-server)
|
||||
[](https://img.shields.io/github/v/tag/cortezaproject/corteza-server?label=stable%20version)
|
||||
[](https://img.shields.io/github/license/cortezaproject/corteza-server)
|
||||
|
||||
**Corteza CRM**
|
||||
Corteza CRM is the highly flexible, scalable and open source Salesforce alternative, that enables your team to sell faster. It provides a 360 degree view of your customers, enabling you to service your prospects better and detect new opportunities.
|
||||
[](https://goreportcard.com/report/github.com/cortezaproject/corteza-server)
|
||||
[](https://drone.crust.tech/cortezaproject/corteza)
|
||||
[](https://img.shields.io/codecov/c/github/cortezaproject/corteza-server)
|
||||
|
||||
**Corteza Low Code**
|
||||
Corteza Low Code is the flexible and easy to use open source Low Code Development platform for custom web based business applications, with drag and drop builder features, integrated Identity, Access and Privacy Management, and powerful automation options. Corteza CRM is based on Low Code.
|
||||
</div>
|
||||
</h1>
|
||||
|
||||
**Corteza One**
|
||||
Corteza One manages the user experience for Corteza applications, such as CRM, and Low Code, as well as providing an integrated interface for third party or other bespoke applications. 100% responsive and with an intuitive design, Corteza One increases productivity and ease of access to all IT resources.
|
||||
<br />
|
||||
|
||||
# Documentation
|
||||
You can find more documentation about Corteza CLI, setup, deployment, authentication
|
||||
in [corteza-docs](https://github.com/cortezaproject/corteza-docs) GitHub repository.
|
||||
**Corteza server** is the **back-end** of the Corteza ecosystem.
|
||||
The core logic is written in GO, using [go-chi](https://pkg.go.dev/github.com/go-chi/chi@v3.3.4+incompatible?utm_source=gopls) for the routing.
|
||||
External communication occurs via the **REST API and web sockets**; internal communication happens via gRPC.
|
||||
|
||||
Non-binary data is handled by the store layer and stored inside a database; currently **MySQL and PostgreSQL**.
|
||||
We will add support for additional databases in the future.
|
||||
Binary data is handled locally or on a supported cloud provider using [MinIO](https://min.io/).
|
||||
|
||||
<br />
|
||||
|
||||
## What is Corteza?
|
||||
|
||||
<div align="center">
|
||||
<img style="max-height: 350px;" src=".github/assets/corteza_dashboard.png" />
|
||||
</div>
|
||||
|
||||
Corteza is the only **100% free**, **open-source**, **standardized** and **enterprise-grade** Low-code platform.
|
||||
It is developed entirely in the public domain and maintained by [Crust Technology](https://www.crust.tech/), its founder.
|
||||
|
||||
With Corteza, you can quickly **build scalable cloud applications** that are **integrable** with external services and **accessible (WCAG 2.1)**.
|
||||
|
||||
### Core features:
|
||||
|
||||
* quick setup,
|
||||
* flexible and intuitive low-code configuration,
|
||||
* powerful automation system using workflows and automation scripts,
|
||||
* flexible reporting capabilities,
|
||||
* secure RBAC access control system.
|
||||
|
||||
## Online demo
|
||||
|
||||
You can check out Corteza online by creating an account on our community instance https://latest.cortezaproject.org.
|
||||
|
||||
## Deploying Corteza
|
||||
|
||||
Refer to the [DevOps guide](https://docs.cortezaproject.org/corteza-docs/2021.6/devops-guide/index.html) for a complete guide on how to get Corteza up and running.
|
||||
Additionally, we've provided some [video instructions](https://forum.cortezaproject.org/t/videos-on-how-to-set-up-corteza/91).
|
||||
|
||||
Quick references:
|
||||
|
||||
* [data backup and restore](https://docs.cortezaproject.org/corteza-docs/2021.6/devops-guide/maintenance/backups.html)
|
||||
* [troubleshooting](https://docs.cortezaproject.org/corteza-docs/2021.6/devops-guide/maintenance/troubleshooting.html)
|
||||
* [setting up an email relay](https://docs.cortezaproject.org/corteza-docs/2021.6/devops-guide/extension-requirements/email-relay.html)
|
||||
* [setting up sink routes](https://docs.cortezaproject.org/corteza-docs/2021.6/devops-guide/extension-requirements/sink-route.html)
|
||||
|
||||
## Upgrading Corteza
|
||||
|
||||
[](https://img.shields.io/github/v/tag/cortezaproject/corteza-server?label=latest%20stable%20version)
|
||||
|
||||
Refer to the [changelog](https://docs.cortezaproject.org/corteza-docs/2021.6/changelog/index.html) and the [upgrade guide](https://docs.cortezaproject.org/corteza-docs/2021.6/upgrade-guide/index.html) to upgrade your Corteza instance.
|
||||
|
||||
## Using Corteza
|
||||
|
||||
Refer to the [End-User Guide](https://docs.cortezaproject.org/corteza-docs/2021.6/end-user-guide/index.html) to learn the built-in applications and features from the end-user perspective.
|
||||
|
||||
Quick references:
|
||||
|
||||
* [Corteza CRM](https://docs.cortezaproject.org/corteza-docs/2021.6/end-user-guide/crm/index.html)
|
||||
* [Corteza Service Solution](https://docs.cortezaproject.org/corteza-docs/2021.6/end-user-guide/service-solution/index.html)
|
||||
|
||||
## Create with Corteza
|
||||
|
||||
Refer to the [Integrator Guide](https://docs.cortezaproject.org/corteza-docs/2021.6/integrator-guide/index.html) to learn how you can build on the core features to create virtually anything.
|
||||
|
||||
Quick references:
|
||||
|
||||
* [Corteza Compose configuration](https://docs.cortezaproject.org/corteza-docs/2021.6/integrator-guide/compose-configuration/index.html)
|
||||
* automation using [workflows](https://docs.cortezaproject.org/corteza-docs/2021.6/integrator-guide/workflows/index.html) and [automation scripts](https://docs.cortezaproject.org/corteza-docs/2021.6/integrator-guide/automation-scripts/index.html)
|
||||
* [using the REST API](https://docs.cortezaproject.org/corteza-docs/2021.6/integrator-guide/accessing-corteza/index.html),
|
||||
|
||||
## Contributing
|
||||
|
||||
Refer to the [Developer Guide/Corteza Server](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/corteza-server/index.html) document for details regarding the [development setup](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/corteza-server/index.html#_development_setup), the [project structure](https://docs.cortezaproject.org/corteza-docs/2021.6/developer-guide/corteza-server/structure.html), and the feature insight documents.
|
||||
|
||||
Refer to the [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines and code of conduct.
|
||||
|
||||
Quick command reference:
|
||||
|
||||
* run server: `make watch` or `make realize`
|
||||
* run unit tests: `make test.unit`
|
||||
* run integration tests: `make test.integration`
|
||||
* run all tests `make test.all`
|
||||
* run MailHog (local SMTP server): `make mailhog.up` (requires Docker)
|
||||
|
||||
## Community
|
||||
|
||||
Reach out to us on [our forum](https://forum.cortezaproject.org/).
|
||||
|
||||
## License
|
||||
|
||||
Corteza is released under the Apache-2.0 license.
|
||||
Refer to the [LICENSE](LICENSE) file for additional information.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user