Skip to content

nschaeferComnet/cells

 
 

Repository files navigation

Homepage | Dev Guide | GitHub-Repository | Issue-Tracker

License Badge GoDoc Go Report Card

IMPORTANT NEWS - March 2022: the main git branch switched from master to main!

A milestone on the road to Cells v4: we have fully rewritten the codebase to support gomodules at last. It is not 100% stable yet, so make sure to use official binaries or the v3 branch if you need production ready version.

Pydio Cells is the nextgen file sharing platform for organizations. It is a full rewrite of the Pydio project using the Go language following a micro-service architecture.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See the Deployment section below for notes on how to deploy the project on a live system.

A - Prerequisites

The following elements are required to compile and run Pydio Cells on your machine:

  • Go language v1.16 or higher and a correctly configured Go toolchain,
  • MySQL database 5.6 or higher (or MariaDB equivalent). The new MySQL 8 authentication method is supported starting at Cells 1.4.1.

Note: We have developed and tested Pydio Cells on macOS, Ubuntu, Debian and CentOS. Windows version might still have unknown glitches and is not yet supported.

B - Build From Sources

Assuming that your system meets the above prerequisites, building the Pydio Cells backend from the source code is quite straightforward:

# Retrieve the code
git clone https://github.com/pydio/cells
# Enter cells directory
cd cells
# Build your binary
make dev

C - Configure Environment

To have the environment running, you must also:

  • Create a database in your chosen DB server,
  • Run the Pydio Cells installer that will guide you through the necessary steps: you might refer to the official documentation for additional information.
./cells configure

D - Start Server

./cells start

Access the default site https://localhost:8080/ and you are good to go. Learn more about Cells features and advanced configuration in the Documentation.

Running the tests

To run the tests, simply do

go test -v ./...

Please read the CONTRIBUTING.md document if you wish to add more tests or contribute to the code.

Pre-built Binaries

Binaries are currently provided for Linux, macOS and Windows distributions. To deploy them on a live system, please see the Installation Guide instructions.

Built With

Pydio Cells uses many open-source Golang libraries. The most important ones are listed below, please see DEPENDENCIES for an exhaustive list of other libs and their licenses.

  • Minio - Objects server implementing s3 protocol

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us. You can find a comprehensive Developer Guide on our website. Our online docs are open-source as well, feel free to improve them by contributing!

We are also looking for help to translate the Cells interface in various languages. It is really easy to participate: just navigate to our page in the Crowdin translation tool, create an account and get started.

Versioning & Branches

Please note that git main branch moved from master for Cells v1 to v3 (vendoring, no modules) to main for Cells v4 (go modules).

We use Semantic Versioning. For all available versions, see the release list.

Authors

See the list of contributors who participated in this project. Pydio Cells is also a continuation of the Pydio project and many contributions were ported from pydio-core to the code that can be found under frontend/front-srv/assets.

License

This project is licensed under the AGPLv3 License - see the LICENSE file for more details.

About

Future-proof content collaboration platform

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 49.3%
  • JavaScript 38.0%
  • CSS 6.1%
  • Java 2.8%
  • Less 2.2%
  • HTML 1.0%
  • Other 0.6%