{"id":13552946,"url":"https://github.com/apache/james-project","last_synced_at":"2025-05-14T12:07:18.105Z","repository":{"id":37431255,"uuid":"38917208","full_name":"apache/james-project","owner":"apache","description":"Emails at the heart of your business logic!","archived":false,"fork":false,"pushed_at":"2025-05-07T08:36:24.000Z","size":150267,"stargazers_count":932,"open_issues_count":7,"forks_count":480,"subscribers_count":55,"default_branch":"master","last_synced_at":"2025-05-10T17:16:35.740Z","etag":null,"topics":["imap","jmap","mail","server","smtp"],"latest_commit_sha":null,"homepage":"https://james.apache.org/","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.adoc","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-07-11T07:00:06.000Z","updated_at":"2025-05-07T20:47:15.000Z","dependencies_parsed_at":"2023-09-22T10:56:18.483Z","dependency_job_id":"71bc0d02-dc78-40f3-999a-8de62fe82417","html_url":"https://github.com/apache/james-project","commit_stats":null,"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fjames-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fjames-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fjames-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fjames-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/james-project/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254045571,"owners_count":22005399,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["imap","jmap","mail","server","smtp"],"created_at":"2024-08-01T12:02:13.844Z","updated_at":"2025-05-14T12:07:18.056Z","avatar_url":"https://github.com/apache.png","language":"Java","funding_links":[],"categories":["Java","server","Sending"],"sub_categories":["JMAP Server \u0026 others"],"readme":"Apache James Project\n====================\n\n:latest_james_version: 3.8.0\n\nimage:https://img.shields.io/badge/Join%20us-Mailing%20lists-purple.svg[link=\"https://james.apache.org/mail.html\"]\nlink:https://gitter.im/apache/james-project[image:https://badges.gitter.im/apache/james-project.svg[Join the chat at link:https://gitter.im/apache/james-project]]\nimage:https://img.shields.io/badge/CI-Jenkins-blue.svg[link=\"https://ci-builds.apache.org/job/james/job/ApacheJames/\"]\nimage:https://img.shields.io/badge/Documentation-green.svg[link=\"https://james.apache.org/documentation.html\"]\nimage:https://img.shields.io/badge/Downloads-{latest_james_version}-yellow.svg[link=\"https://james.apache.org/download.cgi\"]\nimage:https://img.shields.io/badge/Images-docker-blue.svg[link=\"https://hub.docker.com/r/apache/james\"]\nimage:https://img.shields.io/badge/License-ApacheV2-orange.svg[link=\"https://www.apache.org/licenses/\"]\nimage:https://img.shields.io/badge/Latests-news-red.svg[link=\"https://james.apache.org/index.html#posts\"]\n\nimage::james-logo.png[link=\"https://james.apache.org\"]\n\n*James* stands for *Java Apache Mail Enterprise Server!*\n\nIt has a modular architecture based on a rich set of *modern* and *efficient* components which provides at the end\n*complete, stable, secure and extendable Mail Servers running on the JVM*.\n\nCreate your *own personal solution* for emails treatment by assembling the components you need thanks to the Inversion\nof Control mail platform offered and  go further customizing filtering and routing rules using *James Mailet Container*.\n\nSupported protocols are: IMAP, SMTP, link:https://jmap.io[JMAP], POP3 and more...\n\nThe link:https://james.staged.apache.org/james-distributed-app/{latest_james_version}/index.html[*Distributed server*] focuses on delivering an easy-to-operate scalable mail server based on modern technologies\n(Cassandra, S3, OpenSearch and RabbitMQ).\n\nRead more on https://james.apache.org/[our website].\n\n== How to contribute?\n\n.Read more...\n[%collapsible]\n====\nJames is a project that lives from the contributions of its community! Anyone can contribute!\n\nRead https://james.apache.org/index.html#third[how to contribute].\n\nWe more than welcome *articles* and *blog posts* about James. Contact us by https://james.apache.org/mail.html[email]\nor on https://gitter.im/apache/james-project[Gitter] to share your experiences.\n\n*Documentation* is an easy way to get started, and more than wanted! Check out the https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20documentation%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~documentation] label on JIRA.\n\nAnd to get started with *code contributions*, search out the\nhttps://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20newbie%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~newbie],\nhttps://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20easyfix%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~easyfix],\nhttps://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20feature%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~feature] labels on JIRA.\n\nThere is many other ways one can help us: packaging, communication, etc ...\n====\n\n== How to try James\n\n.Read more...\n[%collapsible]\n====\nRequirements: `docker` installed.\n\nHere you will try James server version {latest_james_version} thanks to a docker image. This James image has a default configuration using JPA\n(hsqldb) and Lucene. It also includes a default domain named james.local and three default users: user01@james.local,\nuser02@james.local, user03@james.local, with their default password being 1234.\n\nNote: this James server will respond to IMAPS port 993 and SMTPS port 465.\n\nPull and run the James image with the following single command:\n\n[subs=\"attributes\"]\n----\n    $ docker run -p \"465:465\" -p \"993:993\" apache/james:demo-{latest_james_version}\n----\n\nThen, connect this image with for instance, Thunderbird.\nlink:https://james.apache.org/howTo/imap-server.html[This tutorial] covers more in depth user and domain creation, as well as Thunderbird setup.\n\nInstructions that do not imply `docker` are also available link:https://james.apache.org/server/install.html[here].\n\nInstructions for the distributed server can be found link:server/apps/distributed-app/docs/modules/ROOT/pages/run/run-docker.adoc[here].\n====\n\n== How to check the compilation\n\n.Read more...\n[%collapsible]\n====\nWe require link:https://maven.apache.org[maven] version 3.6.1 minimum to build the project.\n\nFirst, clone the repository locally:\n----\n    $ git clone git@github.com:apache/james-project.git\n----\n\nThen simply run `mvn clean install` within this directory to compile the project.\n\nUseful options includes:\n\n - `-DskipTests` to skip the long to execute resource consuming test suite that requires a docker daemon.\n - `-T 4` to parallelize the build on several CPUs.\n - `-Dmaven.javadoc.skip=true` to skip the javadoc generation.\n====\n\n== How to run James in Docker\n\n.Read more...\n[%collapsible]\n====\nWe maintain docker distribution for our link:https://github.com/google/guice[Guice] based applications:\n\n * link:https://github.com/apache/james-project/blob/master/server/apps/distributed-app/README.adoc[Guice + Cassandra + RabbitMQ + S3 + OpenSearch (distributed)]\n * link:https://github.com/apache/james-project/blob/master/server/apps/cassandra-app/README.adoc[Guice + Cassandra + OpenSearch]\n * link:https://github.com/apache/james-project/blob/master/server/apps/jpa-app/README.adoc[Guice + JPA + Lucene]\n * link:https://github.com/apache/james-project/blob/master/server/apps/memory-app/README.md[Guice + Memory (testing)]\n====\n\n== Using the CLI\n\nSee https://james.apache.org/server/manage-cli.html[Manage James via the Command Line] for more info.\n\n== Develop on James\n\nJames requires at least JDK 11 and Maven 3.6.1 to build.\nSome parts of James are written in Scala so one might need to enable Scala plugin in IDE.\n\nWe maintain link:examples/README.md[code examples] to help you write your own extensions and wire your own servers.\n\nlink:docs/modules/development/pages/deployment-tests.adoc[This page] details how to run deployment Tests.\n\n== Know more about James design\n\nJames comes with a https://james.apache.org/documentation.html[Documentation] and https://github.com/linagora/james-project/tree/master/src/adr[Architectural Decision Records].\n\nA more precise description of the *Distributed Server* architecture can be found\nlink:https://james.staged.apache.org/james-distributed-app/{latest_james_version}/architecture/index.html[here].\n\n== Articles for James community\n\n* link:docs/modules/community/pages/website.adoc[How to build and publish the website]\n* link:docs/modules/community/pages/release.adoc[How to release via maven release plugin]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fjames-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fjames-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fjames-project/lists"}