The official Java Tutorial from Oracle
Java Standard Edition 8 documentation
JDK 8 javadoc documentation
Java Standard Edition 7 documentation
JDK 7 javadoc documentation
Java Enterprise Edition 7 javadoc reference, including Servlet, JPA, EJB, Websocket etc.
Learn all about developing enterprise applications by working your way through this tutorial, which includes working examples and instructions for creating applications with Java EE 7 technologies, including new and updated technologies: Java API for WebSocket, JSON Processing, Batch, Concurrency Utilities, JMS, Java Servlets, RESTful Web Services, JavaServer Faces, Enterprise JavaBeans, Java Persistence API, Contexts and Dependency Injection for Java EE, and more.
Java Enterprise Edition 7 Documentation
Java Enterprise Edition 6 reference
Java EE: XML Schemas for Java EE Deployment Descriptors
JavaFX is a software platform for creating and delivering desktop applications, as well as rich internet applications (RIAs) that can run across a wide variety of devices.
VisualVM is a visual tool integrating several commandline JDK tools and lightweight profiling capabilities. Designed for both production and development time use, it further enhances the capability of monitoring and performance analysis for the Java SE platform.
General encoding/decoding algorithms (for example phonetic, base64, URL).
Extends or augments the Java Collections Framework.
Database connection pooling services.
JDBC helper library.
Commons IO is a library of utilities to assist with developing IO functionality.
Provides extra functionality for classes in java.lang.
Wrapper around a variety of logging API implementations.
Lightweight, self-contained mathematics and statistics components.
Virtual File System component for treating files, FTP, SMB, ZIP and such like as a single logical file system.
Apache Ant is a Java-based build tool. In theory, it is kind of like make, without make's wrinkles.
Apache Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH.
A logging library for Java
Apache POI - the Java API for Microsoft Documents
The HttpComponents Core javadoc
The HttpComponents Client javadoc
The HttpComponents AsyncClient javadoc
The classic HttpComponents Core tutorial
The classic HttpComponents Core javadoc
The classic HttpComponents Client tutorial
The classic HttpComponents Client javadoc
JavaEE Servlet javadoc
The JavaServer Pages Standard Tag Library (JSTL) is a component of the Java EE Web application development platform. It extends the JSP specification by adding a tag library of JSP tags for common tasks, such as XML data processing, conditional execution, database access, loops and internationalization.
Spring Framework 4 manual on multiple pages
Spring Framework 4 manual on a single page
Spring Framework 4 javadoc reference
Spring Framework 3 manual on multiple pages
Spring Framework 3 manual on a single page
Spring Framework 3 javadoc reference
SpringBoot manual on multiple pages
SpringBoot manual on a single page
SpringBoot javadoc reference
Spring Security is a powerful and highly customizable authentication and access-control framework. It is the de-facto standard for securing Spring-based applications.
Spring Security is a powerful and highly customizable authentication and access-control framework. It is the de-facto standard for securing Spring-based applications.
Spring Security is a powerful and highly customizable authentication and access-control framework. It is the de-facto standard for securing Spring-based applications.
The Spring for Apache Kafka (spring-kafka) project applies core Spring concepts to the development of Kafka-based messaging solutions. It provides a "template" as a high-level abstraction for sending messages. It also provides support for Message-driven POJOs with @KafkaListener annotations and a "listener container".
The Spring for Apache Kafka (spring-kafka) project applies core Spring concepts to the development of Kafka-based messaging solutions. It provides a "template" as a high-level abstraction for sending messages. It also provides support for Message-driven POJOs with @KafkaListener annotations and a "listener container".
Apache Struts 2 is an elegant, extensible framework for creating enterprise-ready Java web applications.
Apache Struts 2 is an elegant, extensible framework for creating enterprise-ready Java web applications.
MyBatis is a first class persistence framework with support for custom SQL, stored procedures and advanced mappings.
This is the javadoc for MyBatis
MyBatis-Spring integrates MyBatis seamlessly with Spring.
This is the javadoc for MyBatis-Spring
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Hibernate ORM enables developers to more easily write applications whose data outlives the application process.
Apache Tomcat is an open-source Java Servlet Container developed by the Apache Software Foundation (ASF). Tomcat implements several Java EE specifications including Java Servlet, JavaServer Pages (JSP), Java EL, and WebSocket, and provides a "pure Java" HTTP web server environment in which Java code can run.
Eclipse Jetty is a Java HTTP (Web) server and Java Servlet container. Jetty is now often used for machine to machine communications, usually within larger software frameworks.
The AOP Alliance project is a joint open-source project between several software engineering people who are interested in AOP and Java.
AspectJ is a seamless aspect-oriented extension to Java.
AspectJ is a seamless aspect-oriented extension to Java.
AspectJ is a seamless aspect-oriented extension to Java.
AspectJ is a seamless aspect-oriented extension to Java.
Java Client Library is a database client library that enables you to build applications in Java and other JVM languages that store and retrieve data from an Aerospike cluster.
Caffeine is a high performance, near optimal caching library.
Caffeine is a high performance, near optimal caching library. This is the wiki page.
Byte Code Generation Library is high level API to generate and transform JAVA byte code. It is used by AOP, testing, data access frameworks to generate dynamic proxy objects and intercept field access.
dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platform using the Java Collections Framework and with full support for DOM, SAX and JAXP.
Fastjson is a Java library that can be used to convert Java Objects into their JSON representation. It can also be used to convert a JSON string to an equivalent Java object. Fastjson can work with arbitrary Java objects including pre-existing objects that you do not have source-code of.
Fastjson is a Java library that can be used to convert Java Objects into their JSON representation. It can also be used to convert a JSON string to an equivalent Java object. Fastjson can work with arbitrary Java objects including pre-existing objects that you do not have source-code of. This is the wiki page.
Guava is a set of core Java libraries from Google that includes new collection types (such as multimap and multiset), immutable collections, a graph library, and utilities for concurrency, I/O, hashing, caching, primitives, strings, and more!
Guava is a set of core Java libraries from Google that includes new collection types (such as multimap and multiset), immutable collections, a graph library, and utilities for concurrency, I/O, hashing, caching, primitives, strings, and more!
Guava is a set of core Java libraries from Google that includes new collection types (such as multimap and multiset), immutable collections, a graph library, and utilities for concurrency, I/O, hashing, caching, primitives, strings, and more! This is the wiki page.
Streaming ("jackson-core") defines low-level streaming API, and includes JSON-specific implementations
Annotations ("jackson-annotations") contains standard Jackson annotations
Databind ("jackson-databind") implements data-binding (and object serialization) support on streaming package
A tool that can not only generate JNI code but also build native wrapper library files from an appropriate interface file written entirely in Java. It can also parse automatically C/C++ header files to produce the required Java interface files.
Javassist is a class library for dealing with Java bytecode. Java bytecode is stored in a binary file called a class file. Each class file contains one Java class or interface.
Javassist javadoc API
JFreeChart is a free chart library for Java that can generate a wide variety of charts for use in both client (Swing and JavaFX) and server (web) applications.
Java Native Access (JNA) is a library for simplified native library access for Java.
Java Native Access (JNA) is a library for simplified native library access for Java.
Joda-Time provides a quality replacement for the Java date and time classes.
JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.
Javadoc reference for JUnit 4
Easy to use yet very powerful Java Swing, JavaFX 2 and SWT layout manager
Easy to use yet very powerful Java Swing, JavaFX 2 and SWT layout manager
Easy to use yet very powerful Java Swing, JavaFX 2 and SWT layout manager
Easy to use yet very powerful Java Swing, JavaFX 2 and SWT layout manager
The classic version of MigLayout
Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.
A powerful Java library who provides SSL related functionality in an easy way.
Quartz is a richly featured, open source job scheduling library that can be integrated within virtually any Java application - from the smallest stand-alone application to the largest e-commerce system.
An HTTP & HTTP/2 client for Android and Java applications
A type-safe HTTP client for Android and Java: Retrofit turns your HTTP API into a Java interface.
Okio complements java.io and java.nio to make it much easier to access, store, and process your data.
SwingX is a library of components and utilities extending the Java Swing library.
SWT (Standard Widget Toolkit): SWT is an open source widget toolkit for Java designed to provide efficient, portable access to the user-interface facilities of the operating systems on which it is implemented.
Unix4j is an implementation of Unix command line tools in Java. You can use the commands that you know from Unix in a Java program---you can pipe the results of one command to another as you know it from Unix.
ZeroTurnaround ZIP Library: A zip library with lots of convenience methods.
jQuery is a fast, small, and feature-rich JavaScript library.
Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web.
Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web.
Reference of HTML elements and attributes
Reference of CSS including CSS1, CSS2.1 and CSS3
Reference of Generic JavaScript (ECMAScript)
Reference of Document Object Model (DOM) to JavaScript
Reference of Hypertext Transfer Protocol (HTTP)
ExtJS is a pure JavaScript application framework that works on all modern browsers.
A magical documentation site generator.
ECharts is an open-sourced JavaScript visualization tool, which can run fluently on PC and mobile devices.
PhantomJS is a headless WebKit scriptable with JavaScript.
The world's most popular open source database
Utilities Manual
Oracle database documentation library 19c
Oracle database documentation library 11g Release 2
Data dictionary such as ALL_*, DBA_*, USER_*
PL/SQL Language Reference
PL/SQL Packages and Types Reference
SQL*Plus® Quick Reference
SQL*Plus® User's Guide and Reference
SQL Language Quick Reference
SQL Language Reference
Utilities Manual
Oracle 11g JDBC javadoc
The world's most advanced open source database
The world's most advanced open source database
JDBC Documentation Driver for PostgreSQL
pgpool-II is a middleware that works between PostgreSQL servers and a PostgreSQL database client. It provides the following features: Connection Pooling, Replication, Load Balance, Limiting Exceeding Connections, Parallel Query.
The pgpool Administration Tool is management tool of pgpool. It is possible to monitor, start, stop pgpool and change setting for pgpool.
Bucardo is an asynchronous PostgreSQL replication system, allowing for both multi-master and multi-slave operations.
Citus is basically worry-free Postgres that is built to scale out. It’s an extension to Postgres that distributes data and queries in a cluster of multiple machines.
PostgreSQL Partition Manager is an extension to help make managing time or serial id based table partitioning easier.
High-performance time-series aggregation for PostgreSQL: An open-source PostgreSQL extension that runs SQL queries continuously on streams, incrementally storing results in tables.
TimescaleDB is an open-source time-series database optimized for fast ingest and complex queries. It speaks "full SQL" and is correspondingly easy to use like a traditional relational database, yet scales in ways previously reserved for NoSQL databases.
SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.
Oracle GoldenGate Application Adapters allow you to integrate with Oracle GoldenGate instances to bring in Java Message Service (JMS) information or to deliver information as JMS messages or as files.
Use Oracle GoldenGate for Big Data to stream transactional data into big data systems in real time, raising the quality and timeliness of business insights.
ClickHouse is an open source column-oriented database management system capable of real time generation of analytical data reports using SQL queries.
ClickHouse is an open source column-oriented database management system capable of real time generation of analytical data reports using SQL queries.
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker.
Python is a programming language that lets you work quickly and integrate systems more effectively
Python is a programming language that lets you work quickly and integrate systems more effectively
Python is a programming language that lets you work quickly and integrate systems more effectively
Dask provides advanced parallelism for analytics, enabling performance at scale for the tools you love.
Dask.distributed is a lightweight library for distributed computing in Python.
Flask is a lightweight WSGI web application framework. It is designed to make getting started quick and easy, with the ability to scale up to complex applications.
Simple algorithms and models to learn HMMs (Hidden Markov Models) in Python. Follows scikit-learn API as close as possible, but adapted to sequence data.
Jinja2 is a full-featured template engine for Python. It has full unicode support, an optional integrated sandboxed execution environment, widely used and BSD licensed.
Matplotlib is a Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms.
NumPy is the fundamental package for scientific computing with Python.
Powerful Python data analysis toolkit
Powerful Python data analysis toolkit
Psycopg is the most popular PostgreSQL database adapter for the Python programming language.
A Python Echarts Plotting Library.
Scikit-image is an image processing toolbox for SciPy.
Machine Learning in Python
Machine Learning in Python
SciPy (pronounced "Sigh Pie") is open-source software for mathematics, science, and engineering.
An open source and collaborative framework for extracting the data you need from websites. In a fast, simple, yet extensible way.
Scrapy & JavaScript integration through Splash
seqlearn is a sequence classification library for Python, designed to interoperate with the scikit-learn machine learning library and the wider NumPy/SciPy ecosystem of numerical and scientific software.
Splash is a javascript rendering service. It’s a lightweight web browser with an HTTP API, implemented in Python 3 using Twisted and QT5.
Statsmodels is a Python package that provides a complement to scipy for statistical computations including descriptive statistics and estimation and inference for statistical models.
SymPy is a Python library for symbolic mathematics.
Twisted is an event-driven networking engine written in Python.
Apache Hadoop is an open-source software framework used for distributed storage and processing of dataset of big data using the MapReduce programming model.
Apache Hadoop is an open-source software framework used for distributed storage and processing of dataset of big data using the MapReduce programming model.
This is the development API for Hadoop 1.
Scala combines object-oriented and functional programming in one concise, high-level language. Scala's static types help avoid bugs in complex applications, and its JVM and JavaScript runtimes let you build high-performance systems with easy access to huge ecosystems of libraries.
Apache Spark™ is a unified analytics engine for large-scale data processing.
Apache HBase™ is the Hadoop database, a distributed, scalable, big data store.
Apache HBase™ is the Hadoop database, a distributed, scalable, big data store.
Hive is a data warehouse infrastructure built on top of Hadoop.
Hive is a data warehouse infrastructure built on top of Hadoop.
Hive is a data warehouse infrastructure built on top of Hadoop.
Hive is a data warehouse infrastructure built on top of Hadoop.
Apache Pig is a high-level platform for creating programs that runs on Apache Hadoop. The language for this platform is called Pig Latin.
ZooKeeper is a high-performance coordination service for distributed applications. It exposes common services - such as naming, configuration management, synchronization, and group services - in a simple interface so you don't have to write them from scratch. You can use it off-the-shelf to implement consensus, group management, leader election, and presence protocols.
Kafka® is used for building real-time data pipelines and streaming apps. It is horizontally scalable, fault-tolerant, wicked fast, and runs in production in thousands of companies.
LightGBM is a gradient boosting framework that uses tree based learning algorithms.
XGBoost is an optimized distributed gradient boosting library designed to be highly efficient, flexible and portable. It implements machine learning algorithms under the Gradient Boosting framework. XGBoost provides a parallel tree boosting (also known as GBDT, GBM) that solve many data science problems in a fast and accurate way.
Man pages for Linux and POSIX
Man pages for various Linux commands and APIs by man7.org
POSIX.1-2008 defines a standard operating system interface and environment, including a command interpreter (or “shell”), and common utility programs to support applications portability at the source code level.
Perl 5 is a highly capable, feature-rich programming language
The Linux Kernel(5.11.0-rc4) documentation
The Linux Kernel(5.3-rc4) documentation
The Number One HTTP Server On The Internet
The Number One HTTP Server On The Internet
mod_perl brings together the full power of the Perl programming language and the Apache HTTP server. You can use Perl to manage Apache, respond to requests for web pages and much more.
This document is a collection of Unix/Linux/BSD commands and tasks which are useful for IT work or for advanced users.
Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates.
Bash is the GNU Project's shell. Bash is the Bourne Again SHell. Bash is an sh-compatible shell that incorporates useful features from the Korn shell (ksh) and C shell (csh).
CMake is an open-source, cross-platform family of tools designed to build, test and package software.
The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system.
Docker provides a way to run applications securely isolated in a container, packaged with all its dependencies and libraries.
The GNU Find Utilities are the basic directory searching utilities of the GNU operating system. These programs are typically used in conjunction with other programs to provide modular and powerful directory search and file locating capabilities to other commands.
The awk utility interprets a special-purpose programming language that makes it possible to handle simple data-reformatting jobs with just a few lines of code.
Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals.
Welcome to the second edition of the Pro Git book.
The GNU Portability Library
GPP is a general-purpose preprocessor with customizable syntax, suitable for a wide range of preprocessing tasks. Its independence from any programming language makes it much more versatile than cpp, while its syntax is lighter and more flexible than that of m4.
Greg is a framework for testing other programs and libraries. Its purpose is to provide a single front end for all tests and to be a small, simple framework for writing tests. Greg leverages off the Guile language to provide all the power (and more) of other test frameworks with greater simplicity and ease of use.
ICU is a mature, widely used set of C/C++ and Java libraries providing Unicode and Globalization support for software applications. ICU is widely portable and gives applications the same results on all platforms and between C/C++ and Java software.
ICU is a mature, widely used set of C/C++ and Java libraries providing Unicode and Globalization support for software applications. ICU is widely portable and gives applications the same results on all platforms and between C/C++ and Java software.
Use ImageMagick® to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200).
JMagick provides an object-oriented Java interface to ImageMagick.
jq is a lightweight and flexible command-line JSON processor.
libssh2 is a client-side C library implementing the SSH2 protocol.
GNU Make is a tool which controls the generation of executables and other non-source files of a program from the program's source files.
mitmproxy is a free and open source interactive HTTPS proxy.
nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server.
OpenCV (Open Source Computer Vision Library) is an open-source BSD-licensed library that includes several hundreds of computer vision algorithms.
OpenCV (Open Source Computer Vision Library) is an open-source BSD-licensed library that includes several hundreds of computer vision algorithms.
Java API for OpenCV
OpenLDAP Software is an open source implementation of the Lightweight Directory Access Protocol.
OpenSSL is a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.
Drawing UML with PlantUML
RSYSLOG is the rocket-fast system for log processing.
sed (stream editor) is a non-interactive command-line text editor.
Socat is a command line based utility that establishes two bidirectional byte streams and transfers data between them.
The Linux Documentation Project (Unnecessary resources stripped)
C/C++ Reference
C/C++ Tutorial
This is a reference manual for the C programming language as implemented by the GNU Compiler Collection (GCC). This manual describes C89 as its baseline. C99 features and GNU extensions are explicitly labeled as such.
Manual for the GNU C Library
Manual for the GNU Compiler Collection (GCC)
Manual for the GCC Standard C++ Library
Reference Manual for the GCC Standard C++ Library API
Manual for the GCC C Preprocessor
Boost is a set of libraries for the C++ programming language that provide support for tasks and structures such as linear algebra, pseudorandom number generation, multithreading, image processing, regular expressions, and unit testing.
Dlib is a modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems.
wxWidgets is a C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base. It has popular language bindings for Python, Perl, Ruby and many other languages, and unlike other cross-platform toolkits, wxWidgets gives applications a truly native look and feel because it uses the platform's native API rather than emulating the GUI.
Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.
In short, Archetype is a Maven project templating toolkit. An archetype is defined as an original pattern or model from which all other things of the same kind are made.
The Assembly Plugin for Maven is primarily intended to allow users to aggregate the project output along with its dependencies, modules, site documentation, and other files into a single distributable archive.
The Compiler Plugin is used to compile the sources of your project.
The dependency plugin provides the capability to manipulate artifacts. It can copy and/or unpack artifacts from local or remote repositories to a specified location.
The deploy plugin is primarily used during the deploy phase, to add your artifact(s) to a remote repository for sharing with other developers and projects.
This plugin provides the capability to build jars.
The Javadoc Plugin uses the Javadoc tool to generate javadocs for the specified project.
This plugin for Maven 2 allows you to compile native code (c++, c and fortran) on a number of different architectures (Linux, Windows, MacOSX, Solaris, ...) and with a number of different compilers/linkers (g++, Microsoft Visual C++, CC, ...)
This plugin provides the capability to package the artifact in an uber-jar, including its dependencies and to shade - i.e. rename - the packages of some of the dependencies.
The Site Plugin is used to generate a site for the project. The generated site also includes the project's reports that were configured in the POM.
The Spring Boot Maven Plugin provides Spring Boot support in Maven, allowing you to package executable jar or war archives and run an application “in-place”.
The WAR Plugin is responsible for collecting all artifact dependencies, classes and resources of the web application and packaging them into a web application archive.
Take a whirlwind tour of your next favorite language.
FreeBSD is an operating system used to power modern servers, desktops, and embedded platforms.
Frequently Asked Questions for FreeBSD.
Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.