Download the PHP package fisharebest/webtrees without Composer

On this page you can find all versions of the php package fisharebest/webtrees. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?
fisharebest/webtrees
Rate from 1 - 5
Rated 5.00 based on 1 reviews

Informations about the package webtrees

Latest version Licence

webtrees — online collaborative genealogy

webtrees is a web application for recording, viewing and sharing your family history. It imports and exports standard GEDCOM files, making it compatible with every major desktop genealogy application.

You host it on your own web server, so you stay in control of your data. Multiple family members can collaborate on the same tree at the same time, and you decide who can see what through fine-grained privacy rules.

Key features:

For user documentation, screenshots and demos visit https://webtrees.net/.

This software is licensed under the GNU General Public License v3 or later. See LICENSE.md for the full text.


Getting started

Download

Download the latest stable release from github.com/fisharebest/webtrees/releases/latest.

Server requirements

Component Requirement
PHP 8.3 – 8.6
Database MySQL (recommended), PostgreSQL, SQLite, or SQL Server
Web server Apache, NGINX, IIS or similar (URL rewriting needed for pretty URLs)
Disk space ~100 MB for application files, plus space for media and database

Required PHP extensions: ctype, curl, gd, iconv, intl, json, mbstring, pcre, pdo, session, xml.

Recommended PHP extensions: exif (auto-rotate images), zip (compress downloads and use the upgrade wizard), zlib (compress HTTP responses).

PHP memory and execution time should be scaled to your tree size:

Tree size Memory Max execution time
Small (500 individuals) 16–32 MB 10–20 s
Medium (5 000 individuals) 32–64 MB 20–40 s
Large (50 000 individuals) 64–128 MB 40–80 s

Installation

  1. Upload and extract the release archive to an empty folder on your web server.
  2. Navigate to the URL in your browser — the setup wizard starts automatically.
  3. Create your first family tree and optionally import a GEDCOM file.

Full installation and upgrade guides are available at https://webtrees.net/.


Technical architecture

Project structure

Namespace and autoloading

Namespace Directory Standard
Fisharebest\Webtrees\ app/ PSR-4
Fisharebest\Webtrees\Tests\ tests/ PSR-4

Global helper functions are in app/Helpers/functions.php (loaded via composer autoload.files).

Coding standards

webtrees follows PSR-12 with these additional rules:

For javascript, we use semistandard.

PSR standards applied:

PSR Topic
PSR-4 Autoloading
PSR-6 Caching
PSR-7 HTTP messages
PSR-11 Dependency injection container
PSR-12 Coding style
PSR-15 HTTP request handlers and middleware
PSR-17 HTTP factories
PSR-18 HTTP client

Dependencies

All dependencies are pinned to exact version numbers (no ranges).

Main PHP dependencies (via Composer):

Main JavaScript dependencies (via npm / webpack):

Building from source

Prerequisites: PHP 8.3+, Composer, Node.js with npm.

Quality and CI

Run the full local CI suite:

This executes, in order:

Tool Purpose Config file
PHP_CodeSniffer PSR-12 style enforcement phpcs.xml.dist
PHPUnit Unit and feature tests phpunit.xml.dist
PHPStan (level 6) Static analysis phpstan.neon.dist

Individual commands:

Testing

Tests live in tests/Unit/ and tests/Feature/. Run a subset with:

HTTP architecture

The application uses PSR-15 middleware and request handlers:

  1. index.php boots the application and dispatches the request.
  2. Routes are defined declaratively in app/Http/Routes/.
  3. Each route maps to a request handler in app/Http/RequestHandlers/.
  4. Middleware provides cross-cutting concerns (authentication, CSRF, etc.).

Module system

Most user-visible features are implemented as modules in app/Module/. Modules implement one or more interfaces (e.g. ModuleChartInterface, ModuleReportInterface, ModuleThemeInterface) and are auto-discovered by the ModuleService.

Third-party modules can be placed in modules_v4/.

Database

webtrees uses Laravel’s Illuminate Database (query builder and schema builder) without the full Laravel framework. Supported drivers:

Schema migrations are in app/Schema/. The current schema version is tracked in app/Webtrees.php.

Table names use a configurable prefix so multiple instances can share a database.


All versions of webtrees with dependencies

PHP Build Version
Package Version
Requires php Version 8.3 - 8.6
ext-ctype Version *
ext-curl Version *
ext-gd Version *
ext-iconv Version *
ext-intl Version *
ext-json Version *
ext-mbstring Version *
ext-pcre Version *
ext-pdo Version *
ext-session Version *
ext-xml Version *
aura/router Version 3.4.2
ezyang/htmlpurifier Version 4.19.0
fig/http-message-util Version 1.1.5
fisharebest/algorithm Version 1.6.0
fisharebest/ext-calendar Version 2.6.0
fisharebest/localization Version 1.17.0
guzzlehttp/guzzle Version 7.10.0
illuminate/database Version 12.58.0
illuminate/support Version 12.58.0
intervention/image Version 3.11.7
league/commonmark Version 2.8.2
league/flysystem Version 3.33.0
league/flysystem-path-prefixing Version 3.31.0
league/flysystem-ziparchive Version 3.31.0
middlewares/client-ip Version 2.1.0
mlocati/ip-lib Version 1.22.0
nesbot/carbon Version 3.11.4
nyholm/psr7 Version 1.8.2
nyholm/psr7-server Version 1.1.0
psr/cache Version 3.0.0
psr/http-message Version 2.0
psr/http-server-handler Version 1.0.2
psr/http-server-middleware Version 1.0.2
ramsey/uuid Version 4.9.2
sabre/vobject Version 4.5.8
symfony/cache Version 7.4.8
symfony/console Version 7.4.8
symfony/expression-language Version 7.4.8
symfony/mailer Version 7.4.8
symfony/polyfill-mbstring Version 1.37.0
tecnickcom/tcpdf Version 6.11.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package fisharebest/webtrees contains the following files

Loading the files please wait ...