• This repository has been archived on 25/Nov/2020
  • Stars
    star
    869
  • Rank 52,497 (Top 2 %)
  • Language
    PHP
  • License
    GNU Affero Genera...
  • Created about 12 years ago
  • Updated about 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Pydio 8 official repository
WARNING
Pydio Core will be End Of Life on 2019, Dec. 31st. After that date, there will be no more security fixes. Please consider switching to Pydio Cells now! Pydio 8 Enterprise will be supported for another year.

Pydio Core

Homepage | GitHub-Repository | Issue-Tracker | Latest Stable | License Badge | Codacy Badge | Build Status

This is the main source code repository of Pydio (formerly AjaXplorer), containing all the PHP server and HTML5 Web GUI.

  • Latest Stable release : 8.2.5
  • License: AGPLv3
  • Lead developer : Charles du Jeu (cdujeu): Github | Twitter

Getting support

Please DO NOT send emails to Charles, but use the forum located on https://pydio.com/forum/ instead. Once your problem is qualified, if it's a bug, you will be asked to enter it in the GitHub issue tracker.

How to contribute / Developer Resources

Setting up your dev environment

Pydio 8 requires PHP5.5.9 and upper.

The web root of the application is located in core/src/. Create a virtual host to point to this folder, set up your webserver to use index.php as default page. This is generally done by default.

Pydio uses Composer and NPM to manage dependencies respectively in PHP and JS. It uses Grunt to build javascript sources. In order to start Pydio locally after a fresh git clone, you will first have to run these tools in both the core and in many plugins.

  • First install Composer (see https://getcomposer.org) and NPM (https://docs.npmjs.com/getting-started/installing-node)
  • Install Grunt globally by running `npm install -g grunt-cli``
  • Inside the core folder (under webroot, i.e. core/src/core/ from root of git repository), run composer install
  • For each plugin that contains a composer.json file, run composer install as well.
  • For each plugin tat contains a package.json file, run
    • npm install
    • grunt

On a unix-based machine, this can be achieved by the following command (from the webroot directory):

find . -maxdepth 3 -name Gruntfile.js -execdir bash -c "npm install && grunt" \;  
find . -maxdepth 3 -name composer.json -execdir composer install \;

You should be good to go. When modifying JS files that require transpilation, there is generally a grunt watch task available to automatically run grunt on each file change.

Coding guidelines

To enforce some coding standards, please run scripts in

dist/scripts/tests/

Fixing the Core

If you think you have found a bug and a way to fix it neatly in the code, use a Pull Request to report this change back to us!

Writing new plugins

Please read the Developer doc located at https://pydio.com/en/docs/developer-guide, you will find here a bunch of useful information about the plugins architecture, how to create your own plugin, etc. The action.skeleton plugin is a perfect start for that.

New in latest build, in the Settings panel, you can find a new "Developer" node where all actions contributed by all plugins are listed. These can be called either by http, or via the CLI API. At the same location, you will find all "hooks" registered and triggered in the server, that are VERY useful when you want your plugin to be really sandboxed.

Signing the CLA

Please sign the Contributor License Agreement before contributing.

More Repositories

1

cells

Future-proof content collaboration platform
Go
1,794
star
2

pydio-sync

Python version of the Pydio synchronization client
JavaScript
82
star
3

pydio-sync-java

[DEPRECATED] Synchronization Client of the Pydio project. Based on the Java SDK.
Java
36
star
4

cells-sync

Sync Client for Pydio Cells
C
35
star
5

cells-client

Command line client to communicate with cells REST api.
Go
23
star
6

pydio-sync-ui

Qt UI for pydio-sync service
C++
20
star
7

cells-sdk-go

Golang client for Pydio Cells rest API.
Go
11
star
8

pydio-sdk-java

Official Java Client currently used in the Android application and the synchro client.
Java
10
star
9

pydio-doc-howto

Markdown sources for How-To's
9
star
10

cells-android-client

Pydio Cells Android Application
Kotlin
9
star
11

pydio-booster

Empower your Pydio server with this golang-based dedicated tool.
Go
8
star
12

pydio-doc-developer-guide

Markdown sources for Developer Guides
Shell
6
star
13

pydio-sdk-java-v2

Rewrite of the java SDK
Java
5
star
14

wp-pydio-sso

WordPress Plugin :: WP-Pydio SSO
PHP
5
star
15

pydio-sdk-python

Python SDK to communicate with pydio backend
Python
5
star
16

wp-pydio-publisher

WordPress Plugin :: Pydio Publisher
PHP
5
star
17

cells-sdk-js

Javascript SDK for communicating with Cells server
JavaScript
5
star
18

pydio-sdk-objc

Full rewrite of the Pydio SDK in Objective C
Objective-C
5
star
19

ldap-testing

Docker scripts for building a sample LDAP image
PHP
4
star
20

cells-android-app

Android Studio project for building Cells Android Application
4
star
21

pydio-doc-admin-guide

Markdown sources for Admin Guides
4
star
22

docker-library

Shell
3
star
23

pydio-sdk-go

Go SDK for Pydio Api v2
Go
3
star
24

minio-srv

Pydio Cells adaptation forked from minio/minio
Go
3
star
25

go

Generic tools for Pydio Golang application
3
star
26

pydio-integration-tests

Tools for automatically testing various aspects of a deployed Pydio instance.
Python
3
star
27

cells-front

PHP Frontend for Pydio Cells [deprecated for Cells >= 1.2.0]
PHP
3
star
28

custom-docker-images

Custom docker images used for automated testing and deployments
PHP
3
star
29

cells-sdk-java

Java library to connect to Cells server (also supports legacy Pydio 8 APIs)
Java
3
star
30

pydio-sdk-android

Android version of Pydio SDK (for Pydio 8 and before)
2
star
31

cells-enterprise-sdk-js

Javascript SDK for Cells Enterprise Rest API.
JavaScript
2
star
32

rolling-demo-monitor

Small tool to ping rolling demo
Go
2
star
33

pydio-sdk-js

Swagger-generated SDK for Pydio api v2
JavaScript
2
star
34

encoding

Basic tool for fixing mixed NFC/NFD encoding
Go
2
star
35

go-phpfpm-detect

Tool to automatically detect PHP-FPM configuration and loaded extensions
Go
2
star
36

config-srv

Fork of github.com/micro/config-srv (removed)
Go
2
star
37

pydio-specs

Specifications and RFC's for various Pydio components.
2
star
38

cells-dist

Misc resources for Pydio Cells releases
2
star
39

cells-linter

Cells Linter adds custom linters that must be passing on Cells code before building.
Go
2
star
40

pydio9-beta-docs

Pydio9 Beta is a tech preview for the future major release
2
star
41

t2g

Implementation of a table view that is switchable to collection
Swift
2
star
42

android-sdk-core

Factory for pydio / cells android sdk
2
star